基于飞思卡尔单片机自动循迹小车控制的设计
图 5.1 IAR Embedded Workbench 运行界面
IAR Embedded Workbench for ARM version 4.30专门用于ARM处理器的集成开发环境,它包含有编辑器、项目管理器、RTOS的测试工具以及编译连接工具。我们在这种环境下运用C/C++和汇编语言来开发嵌入式应用程序。
以下为嵌入式应用的一些特点:
1.提供了一个轻量的运行库,使用户可以根据自己的需要自行进行配置,它还提供了所有的源代码;
2.对特定处理器的速度进行了优化,通用编译器的功能进行了优化,存储器的功能进行了优化;
3.对一些不需要的变量和函数进行了删减;
4.存储器控制灵活,可以很详细的为数据和代码分配地址; 5.校验和生成功能是可选的,它主要在运行时进行映像校验; 6.C/C++变M和函数连接时的全局类型需要检查;
7.可重定位宏汇编器功能强大,能支持的命令集和操作符丰富; 8.代码和数据可以自动的放置到不连续的存储区域; 9.代码覆盖率高,具有强大的执行时间分析工具。
在 IAR Embedded Workbench for ARM version 4.30 开发环境下,可以很方便将程序烧录大单片机系统中。烧录时要将烧录器连接到单片机的最小系统和上位机,然后选择芯片烧录,很快程序就能烧录到单片机最小系统中了。烧录过程中要注意
`
20
基于飞思卡尔单片机自动循迹小车控制的设计
必须保持烧录器连接的稳定,不能使其断开,另外一定要安装好相应的驱动程序。烧录界面如图 5.2 所示。
`
图5.2 IAR Embedded Workbench 程序烧写界面
图 5.2 烧录界面
嵌入式调试的一些特点: 1.执行控制非常的细化; 2.源代码集成度高; 3.有反汇编程序调试器; 4.代码和数据断点比较复杂; 5.数据监视功能很丰富; 6.支持STL容器;
7.Watch, Locals, Quick Watch, Auto, Live Watch和Watch 等变量查看窗口; 8.当双击位于调用链上的任何函数时,都会更新局部变量、编辑器、寄存器、反汇编窗口和变量查看; 9. 控制台I/O仿真;
10.具有跟踪功能,可以检查执行过的历史记录。在跟踪窗口里面,当移动鼠标时,编辑器和反汇编窗口会自动更新用来显示合适的位置; 11.中断和I/O模拟仿真;
12.主机执行的应用系统程序能够调用仿真;
13.具有和C语言类似的宏系统,扩大了调试器的功能。
21
基于飞思卡尔单片机自动循迹小车控制的设计
5.3 硬件开发平台Altium Designer
硬件的设计制作选用Altium公司开发的Altium Designer 09。Altium Designer是一个电子产品开发系统,是一个软件集成平台,能够把电子开发所需要的工具整合到一个软件中。Altium Designer包含的工具有:原理图设计、PCB绘制编辑、电路的仿真、设计输出、拓扑逻辑自动布线以及信号完整分析等。除此之外,Altium Designer的工作环境还可以人为定制,大大满足了用户的不等需求。
Altium Designer 09版本改善了以前版本留下来的很多工具问题。机械层设置上增加了更多的机械层,加强了原理图网络类的定义。这个版本更加的关注于提高测试点的管理与分配、嵌入式软件的精简、流畅的License管理以及软件设计过程中的智能化调试等功能。Altium Designer09 运行界面如图5.3 所示。
图 5.3 Altium Designer09 运行界面
目前此款软件的最新版本是Altium Designer 16。在此次更新中对Altium Designer 16的平台进行了扩展,包括多个增强PCB设计生产效率与设计自动化的全新特性,从而使工程师能够在更短的时间内零差错地实现更复杂的PCB设计。全新的备选元器件选择系统为设计者提供备选元器件选择,帮助设计者全面控制元器件的选择过程。可视化间距边界为设计者提供了电路板上不同对象间的可视化间距边界,帮助设计者实时了解其布线决策对整体设计的影响。全新的元器件布局系统为设计者提供全新的元器件布局选项,帮助设计者实现最条例高效的电路板布局。
`
22
基于飞思卡尔单片机自动循迹小车控制的设计
6结 论
本文分别从智能车的电路设计、程序控制以及调试过程来讲了这个基于CMOS 摄像头智能车的整体方案。在智能车的设计过程中,我不仅查阅了大量的资料并对其进行研究,而且对特定的设计和原理进行了实验,如对车前轮的机械调整在智能车的制作过程中。
这次的毕业设计遇到了很多困难,一开始做的时候不知道从哪里下手,于是乎就开始读资料,一点点分析原理,这样就有了一个大体的设计思路。但当实际去操作时,问题又出现了,很多东西在以前的学习中并没有遇见过。为了解决动手能力的不足,特别向学校里的实验室的同学请教,他们帮助解决了很多问题。当某个困难解决时,思路就马上变的清晰了很多。设计方案的书写也遇到很多困难,一些专业解释不能准确地表达,经过反复修改,才能达到要求。
这次设计,我将学到的知识和实践相结合,不仅提升了自己的知识水平,而且补足了原来动手能力不足的问题。将学到的知识进行了系统的整理,同时也提高了对专业知识的兴趣。
`
23
基于飞思卡尔单片机自动循迹小车控制的设计
参 考 文 献
[1] 于丰华,雷宇桥. 基于OV7620的智能车算法研究[J]. 电子技术应用,2013,17:69-76 [2] 王晓翔,孙涛. 基于Freescale Kinetis EA系列MCU的CAN Bootloader设计[J].电子产品世界,2012,07:79-83
[3] 赵一夔. 基于ARM Cortex-M3的嵌入式系统设计与实现[J].中电网,2010,01:11-13 [4] 李伟龙.智能循迹小车设计[J].甘肃科技,2013,15:15-17
[5] 林文建. 两轮自平衡机器人控制系统设计与实现[J].电子测量与仪器学报,2013,08:750-759 [6] 乔永征. 基于OV7620和FPGA的图像采集系统设计[J].计算机测量与控制,2009,17:1857-1859 [7] 周鑫. 第二代基于ARM Cortex-M4的飞思卡尔MCU的电源效率达到新水平[J].单片机与嵌入式系统应用,2014,02:76-77
[8] 孙延明,曹军,刘亚秋. PID控制在中密度纤维板施胶中的应用[J]. 木材加工机械,2007,01:26-29 [9] 曾伟钦,徐东升. .基于光电导航的自主循迹智能车系统设计[J]. 电子世界,2012,08:128-130 [10] 张晴,袁晓梅. 基于PWM信号遥控机器人的设计与制作[J]. 数字技术与应用,2010,11:80 [11] 邵秋萍.控制技术在机电类专业建设中的整合与实践[J]. 中国电力教育,2009,135:108-109 [12] 吴峰,张河新. 单片机控制脉宽调制在气动调压阀中的应用[J]. 阀门,2011,06:30-33 [13] 陈玉,王静平,奚琳. 智能PID控制器控制算法及其仿真研究[J].工程与试验,2011,03:66-69 [14] 吴华波,钱春来.基于AT89C2051的多路舵机控制器设计[J].单片机与嵌入式系统应用,2013,08,55:58
[15] 马春城,郭循钊. 智能寻迹模型车的控制策略及算法研究[J]. 电子设计工程,2014,04:104-107 [16] DN Mpcec. Freescale Semiconductor Technical Data. [J].Eetimes Com,2013,04:23-28
[17] B Remenant. Sequencing of K60, type strain of the major plant pathogen Ralstonia solanacearum[J].Journal of Bacteriology,2012, 194(10):2742-3
`
24