理论教育 物联网工程规划与设计:嵌入式软件的设计方法

物联网工程规划与设计:嵌入式软件的设计方法

时间:2023-11-23 理论教育 版权反馈
【摘要】:物联网需要实现物物互联, 而嵌入式技术与系统是实现物物互联的重要基础之一。嵌入式软件的微型化、 信息化、 网络化及可视化等特征, 使其开发明显不同于PC 上的软件开发。嵌入式软件需要在一个开发平台上而不是实际运行平台上进行开发, 需要在虚拟机上进行调试和测试。嵌入式系统的软件一般在PC 机上编程, 但在嵌入式芯片上运行, 所以不能简单地像PC 机上的程序一样随时调试。

物联网工程规划与设计:嵌入式软件的设计方法

物联网需要实现物物互联, 而嵌入式技术与系统是实现物物互联的重要基础之一。 嵌入式软件的微型化、 信息化、 网络化及可视化等特征, 使其开发明显不同于PC 上的软件开发。 嵌入式软件需要在一个开发平台上而不是实际运行平台上进行开发, 需要在虚拟机上进行调试和测试。

1. 软件开发平台

常用的软件开发平台有以下几种:

1) ARM SDT

ARM SDT 是ARM 公司为方便用户在ARM 芯片上进行应用软件开发而推出的一套集成开发工具, 可在Windows 95/98/NT、 Solaris 2.5/2.6 和HP-UX 10 上运行, 支持最高到ARM 9的所有处理器。

2) ARM ADS

ARM ADS 是ARM 公司推出的新一代ARM 集成开发工具, 用来取代ARM SDT, 对SDT的模块进行了增强, 并替换了SDT 的一些组件。 ADS 使用CodeWarrior IDE 集成开发环境代替APM, 使用AXD 替换ADW。

ARM ADS 支持ARM 7、 ARM 9、 ARM 9E、 ARM 10、 StrongARM 和XScale 系列处理器。除了SDT 支持的操作系统外, ARM ADS 还可以在Windows 2000/XP 及更新的Windows 版本、RedHat Linux 上运行。

3) GNU GCC 编译器

利用Linux 操作系统下的自由软件GNU GCC 编译器, 不仅可以编译Linux 操作系统下运行的应用程序和Linux 本身, 而且可以进行交叉编译, 即可以编译运行于其他CPU 上的程序。

4) 用于嵌入式芯片的操作系统

可用于嵌入式芯片的操作系统主要有:

(1) Linux: Linux 是开源系统, 可以进行裁剪, 具有较大的灵活性, 但开发难度较大,且工具较少。

(2) VxWorks: 其以实时性强著称。

(3) Windows CE: 这是基于Windows 95/98 的嵌入式操作系统, 具有Windows 操作系统的GUI, 辅助工具较丰富, 但占用内存较多。(www.daowen.com)

2. 硬件开发工具

常用的硬件开发工具有以下几种:

1) JEENI 仿真器

JEENI 仿真器是美国EPI 公司生产的专门用于调试ARM 7 系列的开发工具。 它通过以太网口(或串口) 与PC 连接, 通过JTAG 口与ARM7 目标板连接, 使用独立电源

JEENI 仿真器支持ARM/THUMB 指令, 支持汇编/高级语言调试。 用户应用程序通过JEENI 仿真器下载到目标RAM 中。 通过JEENI 仿真器, 用户可以观察/修改ARM 7 寄存器和存储器的内容、 在所下载的程序上设置断点、 以汇编/高级语言单步执行程序或全速运行程序, 也可以观察高级语言变量数据结构及内容, 并对变量的内容实施在线修改。

JEENI 仿真器的内部使用一片带有高速缓存的ARM 处理器, 支持对调试操作的快速响应, 如读写存储器、 读写寄存器、 下载应用程序到目标板。 JEENI 仿真器的这种结构允许以太网接口在处理器执行JTAG 指令的同时访问存储器, 从而能极大地提高下载速度。

2) Multi-ICE

Multi-ICE 是ARM 公司的JTAG 在线仿真器。

Multi-ICE 的JTAG 链时钟可以设置为5 kHz ~10 MHz, JTAG 操作的一些简单逻辑由FPGA实现, 使并行口的通信量最小化, 以提高系统的性能。 Multi-ICE 硬件支持低至1 V 的电压。 Multi-ICE 2.1 及更新的版本还可以外部供电, 而不需要消耗目标系统的电源, 这对调试类似手机等便携式、 以电池供电的设备是很重要的。

Multi-ICE 2. ×支持ARM 公司的实时调试工具MultiTrace。 MultiTrace 包含一个处理器,可以跟踪触发点前后的轨迹, 并且可以在不终止后台任务的同时对前台任务进行调试, 在微处理器运行时改变存储器的内容, 使延时降到最低。

Multi-ICE 2. ×支持ARM 7、 ARM 9、 ARM 9E、 ARM 10 和Intel Xscale 微结构系列。 它通过TAP 控制器串联, 提供多个ARM 处理器及混合结构芯片的片上调试。 它还支持低频或变频设计及超低压核的调试, 并且支持实时调试。

Multi-ICE 的优点: 下载和单步速度快; 有用户控制的输入/输出位; 可编程的JTAG 位传输速率; 开放的接口, 允许调试非ARM 的核或DSP; 网络连接到多个调试器; 目标板供电, 或外接电源。

3. 基于虚拟机的调试与测试

开发在PC 机上运行的软件, 可以在编程过程中随时调试运行, 观察运行结果, 判断程序的正确性。 嵌入式系统的软件一般在PC 机上编程, 但在嵌入式芯片上运行, 所以不能简单地像PC 机上的程序一样随时调试。 为了便于调试, 一般在PC 上安装虚拟机, 仿真一个嵌入式运行环境进行测试和观察运行结果。 现在广泛使用的虚拟机软件是VMware Workstation。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈