📅  最后修改于: 2021-01-07 05:43:59             🧑  作者: Mango
编译器是一种计算机程序(或一组程序),可以将以编程语言(源语言)编写的源代码转换为另一种计算机语言(通常为二进制格式)。进行转换的最常见原因是创建一个可执行程序。名称“编译器”主要用于将源代码从高级编程语言转换为低级语言(例如,汇编语言或机器代码)的程序。
如果编译后的程序可以在具有不同CPU或操作系统的计算机上运行,而不是在其上编译该程序的计算机,则该编译器称为交叉编译器。
可以将程序从低级语言转换为高级语言的程序称为反编译器。
转换以不同高级语言编写的程序的程序通常称为语言转换器,源到源转换器或语言转换器。
编译器可能会执行以下操作-
汇编程序是一种程序,它接受基本的计算机指令(称为汇编语言)并将其转换为计算机处理器可以用来执行其基本操作的位模式。汇编器通过将汇编指令助记符转换为操作码,从而将符号名解析为内存位置来创建目标代码。汇编语言使用助记符来表示每个低级别的机器操作(操作码)。
调试是一种有条理的过程,用于发现和减少计算机程序或电子硬件中的错误数量,从而使其按预期工作。当子系统紧密耦合时,调试很困难,因为一个子系统的微小更改会在另一个子系统中产生错误。嵌入式系统中使用的调试工具在开发时间和调试功能方面存在很大差异。我们将在这里讨论以下调试工具-
通过在用于代码开发的主机上模拟MCU /系统,对代码进行了测试。模拟器试图在软件中对整个微控制器的行为进行建模。
模拟器执行以下功能-
定义处理器或处理设备系列以及目标系统的各种版本。
在执行每个步骤时,监视带有标签和符号参数的源代码部分的详细信息。
为每个单步执行提供目标系统的RAM和模拟端口的状态。
监视系统响应并确定吞吐量。
提供对程序计数器和处理器寄存器的内容输出的跟踪。
提供当前命令的详细含义。
从键盘输入或从菜单中选择时,监视模拟器命令的详细信息。
支持条件(最多8或16或32个条件)和无条件断点。
提供断点和跟踪,它们是重要的测试和调试工具。
便于同步内部外围设备和延迟。
微控制器入门套件包括-
这些套件相对于仿真器的一大优势是它们可以实时工作,因此可以轻松进行输入/输出功能验证。但是,入门套件完全可以满足开发简单微控制器项目的需求,并且是最便宜的选择。
仿真器是硬件工具包或软件程序,或者两者都可以仿真一个计算机系统(来宾)在另一个计算机系统(主机)中的功能,与第一个仿真器不同,因此仿真行为与行为非常相似真实系统(来宾)。
仿真是指电子设备中计算机程序仿真(模仿)另一个程序或设备的能力。仿真着重于重建原始计算机环境。仿真器具有与数字对象的真实性保持更紧密联系的能力。模拟器可帮助用户以类似于软件在其原始环境中运行的方式,在平台上的任何类型的应用程序或操作系统上工作。
嵌入式系统通过其外围设备与外界通信,例如,遵循&mins;
选择微控制器时,请确保它满足手头的任务并且具有成本效益。我们必须看到8位,16位或32位微控制器能否最好地处理任务的计算需求。另外,在选择微控制器时应牢记以下几点:
速度-微控制器可以支持的最高速度是多少?
包装-是40引脚DIP(双列直插式封装)还是QFP(四方扁平封装)?就最终产品的空间,组装和原型制作而言,这很重要。
功耗-这是电池供电产品的重要标准。
芯片上的RAM和ROM数量。
芯片上I / O引脚和计时器的数量。
每单位成本-就使用微控制器的产品的最终成本而言,这一点很重要。
此外,请确保微控制器具有可用的工具,例如编译器,调试器和汇编器。最重要的是,您应该从可靠的来源购买微控制器。