第86节:数字键盘与液晶菜单的综合程序
扫描二维码
随时随地手机看文章
从业近十年!手把手教你单片机程序框架 第86讲
开场白:
前面已经介绍完数值跟BCD码数组相互转换的算法,但是按键只能设置一项数据。如果多增加一项数据,变成两项数据,按键与显示菜单之间该如何关联起来,这样的程序框架是什么样的?其实很简单很有规律的,只需要在前面的基础上,在按键和显示函数里,根据不同的uPart行变量添加进不同的代码,即可完成。这就是鸿哥写的程序代码,不管添加多少代码,都是有一个“道”可循,非常有规律性。
具体内容,请看源代码讲解。
(1) 硬件平台:
基于朱兆祺51单片机学习板。数字1键对应S1键,数字2键对应S2键,数字3键对应S3键…. 数字9键对应S9键, 数字0键对应S10键。小数键对应S11,S12按键是光标移动按键,S13按键是加按键,S14按键是减按键,清零键对应S16,其它按键不用。
(2) 实现功能:
通过S12光标移动按键,可以把负显光标切换到不同的行里面,根据光标所在位置,
通过S13,S14这两个加减按键可以更改对应的数。第1行和第2行的数据会彼此有关联,只要改其中一个,另外一个就会同步被更新。同理,第3行和第4行的数据也会彼此有关联,只要改其中一个,另外一个也会同步被更新。
(3)源代码讲解如下:
总结陈词:
液晶屏显示的内容到这一节为止基本讲完。前面第38节到第45节是讲串口的,我的串口程序大部分都是通过靠时间来识别每一串数据是否接收完毕,只要第41节内容不是靠时间来判断,而是根据特定关键字来快速识别数据串是否接收完毕,下一节我打算结合我最新的一个项目经验,继续讲一个这方面的例子。欲知详情,请听下回分解----当主机连续不断地发送一串串数据给从机时,从机串口如何快速截取有效数据串。