PIC18F452单片机原理及编程实践
上QQ阅读APP看书,第一时间看更新

1.4 如何学习单片机

单片机的学习离不开实践,如果只局限在课堂上,或只停留在书本上是远远不够的,利用单片机实验系统的硬件平台,进行大量的编程训练尤为重要。

1.4.1 编程训练是学习单片机的重要环节

运用实验平台,进行大量的编程训练是非常关键和有效的学习环节。对于单片机的指令必须通过上机调试才能得到充分的理解。一个程序不是想象出来的,只有在不断地调试和修改的过程中逐渐完善,同时在此过程中还可加深对基本概念的理解。

建议初学者采用汇编语言进行编程。采用汇编语言的好处是它直接面向单片机的底层结构,如程序存储器(ROM)的使用、数据存储器(RAM)的分配等环节,这样能够很好地了解、掌握单片机硬件资源。学习“汇编语言”会有一定的难度,这是初期阶段对其语法的不适应而造成的,只要仔细、认真地调通每一个小程序,日积月累就会有所收获。

调试程序的过程比较艰苦,但也是一个提高的过程。不论是使用何种语言,如果要独立地编写出一段合格的程序必须经过调试(业界称为Debug)这一环节,即查找错误的过程。程序的错误分为2种,即语法错误和逻辑错误。前者为编程者对于指令格式上的一种书写错误,它相当于作文中的错别字,这种错误会由编译器在编译程序时自动查出,查找和修改都比较容易;后者也称算法错误,它属于程序结构设计上的错误,相当于解一道数学应用题时,编写的算式存在错误而不能产生正确的结果。常说的程序调试就是指查找逻辑错误。掌握调试程序的方法就是要运用程序调试的各种手段,如单步调试、断点调试等,并配合观察变量的环节来查找程序中的Bug(错误),直到程序运行成功。

程序的调试是一项比较艰苦的工作,但也是培养一名工程师处理问题能力的一个不可缺少的过程。建议读者多编程、多实践,逐渐提高自己的调试能力和水平。

1.4.2 运用基础知识构建单片机的应用系统

单片机应用系统的硬件平台也是必须要完成的设计内容。这就要求系统设计工程师掌握数字电路、模拟电路、计算机原理等方面的知识,而这也是许多工程师在设计系统硬件平台时遇到的比较棘手的环节。好在当今的应用领域中出现了许多使用方便、连接简单的新型接口模块,使单片机系统的硬件平台设计变得格外容易,但即使是这样,掌握必要的相关基础知识还是非常必要的。

自己动手搭建一个单片机最小系统是非常必要的,不仅可以以低廉的成本构建一个学习的硬件平台,而且也可以为将来的专业设计打下一个良好的基础。图1.4.1所示是一个由大学生焊接、组装的单片机最小系统板的实物照片。

图1.4.1 由大学生组装的单片机最小系统板的实物照片

制作单片机最小系统时,要注意板上各个功能模块的布局和组装顺序:第一步,组装电源电路,包括输入电源的插座,整流桥、滤波电容、稳压器(7805)、LED指示灯和电源开关等,组装完后首先上电检查电源模块的输出电压是否满足要求(5V);第二步,组装单片机插座部分,包括单片机的外接晶体、上电/手动复位电路和在线调试端口等,仔细检查外接晶体及补偿电容是否连接正确,复位电路是否正常;第三步,组装必要的I/O电路,常见的I/O电路就是8个LED灯,与单片机的端口连接,可通过运行一个“流水灯”程序来验证系统的工作状态是否正常。有关单片机系统的电路设计可参照本书第六章的相关内容。

1.4.3 必要的工具

学习单片机就离不开单片机的开发工具和焊接电路时的各种小工具。

1. 单片机程序的调试软件

单片机的生产厂家不同,与之配套的单片机程序的调试软件(IDE)也不相同。PIC18F系列单片机的调试软件可通过微芯片技术公司的官方网站(www.microchip.com)免费下载。

2. 在线调试器

在线调试器(ICD),这里推荐ICD2硬件在线调试器,当然也可使用价格低廉的PICkit3调试模块。这些设备都是由微芯片技术公司或第三方的合作企业开发并销售,其中ICD2配有1个电源适配器(为ICD2或目标系统供电)和2条连接6芯电缆;PICkit3配有1条USB电缆和可配合使用的1块含有PIC18F45K20单片机的小实验板,可利用这个小实验板调试和运行输入/输出、定时器、外中断以及ADC等程序。ICD硬件调试器具备在线调试和在线编程两大功能,配合调试软件IDE完成对单片机的程序调试和烧写程序的功能。图1.4.2所示是2种在线调试器的样品图片,有关调试器的获取方法也可通过微芯片技术公司的官方网站查询。

图1.4.2 用于调试程序的在线调试器

3. 必要的电工小工具

在制作单片机最小系统板时离不开电烙铁、小钳子、小镊子和万用表之类的常用工具,如图1.4.3所示。有条件时还要添加示波器、多功能电源和信号(函数)发生器之类的仪器设备。

图1.4.3 常用的小工具