有单片机C语言基础的读者会问:“为什么没介绍指针、结构体、共用体和文件呢?”这是因为用数组可以完全替代指针(也许某些情况下效率要比指针低一些),而结构体和共用体在单片机编程中使用存在安全隐患,所以也不推荐使用。由于在单片机系统中往往没有高级文件系统,所以标准C语言教材中的文件一章的内容在单片机中根本没有用武之地。
下面通过一个简单的综合性例子来结束本章的内容。此题目包含了本章读者应该掌握的所有基本知识。
【例4-24】电路图如图4-18所示。编程实现数码管初始显示为0,每按一次S1使数码管显示数字加1,加到9后再加则返回显示0重复以上过程。
电路图在光盘位置:“\Example\Chapter4\S045\sch\smg1.dsn”。
图4-18 PIC单片机控制一位数码管电路图
程序分析
●此例子要求每按一次S1使数码管显示内容加1,所以程序要判断按键何时按下。由于采用机械按键,存在抖动,所以需要软件消除抖动。参考的流程图如图4-19所示。
图4-19 例4-24的程序流程图(www.daowen.com)
●数码管的显示主要是利用数组实现程序的简化。
设计过程
1)在项目S044的基础上修改main.c内容,改为如下所示。
2)将以上代码编译后用Proteus VSM运行一次,每按(实际上是用鼠标单击)一次按键S1,数码管显示的字形就加1。
本章介绍了学习单片机C语言的最小知识系统(不是最优知识系统),包括C语言的变量定义、宏定义、运算符和表达式、顺序语句、选择语句、循环语句、数组、函数和多文件项目管理。虽然称之为最小知识系统,但这仅限于初学者应知应会的最小C语言知识集合。在实际应用时,会随着问题的复杂度增加使用C语言更复杂的功能,请读者阅读相关参考书来学习其他内容。
有关PICC编译器更多的参数和功能请参考其安装后的数据手册来学习。
HT-TECH PICC编译器数据手册安装位置:“开始”→“所有程序”→“HI-TECH Software”→“PICCLITE v9.60PL1”→“User manual”。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。