理论教育 程序设计-智能电子产品C语言项目教程

程序设计-智能电子产品C语言项目教程

时间:2023-10-20 理论教育 版权反馈
【摘要】:甲机程序要完成按键次数的记录,点阵屏的显示以及计数值的发送。按键中断程序key_down(),完成按键次数计数、置扫描初始列的任务。图4.3乙机接收电路T0定时中断点阵屏扫描程序show_dot_matrix(),完成点阵屏每隔2ms完成一列的扫描显示。甲机程序如下:图4.4T0中断点阵显示乙机的接受程序由主函数main()、初始化函数init()以及串行中断服务程序rint()所组成。

程序设计-智能电子产品C语言项目教程

甲机程序要完成按键次数的记录,点阵屏的显示以及计数值的发送。其中,按键采用外部中断0,点阵采用共阳极列扫描,P1口列扫描,P0口输出列扫描码,扫描时间间隔2ms,由定时器T0通过定时中断来实现。控制流程是当按键产生中断后,记录计数值,刷新显示屏,并发送计数值至乙机。

程序由主函数main( )、初始化函数init( )、按键中断程序key_down( )、T0中断点阵屏扫描程序show_dot_matrix( )以及串行发送中断程序tint( )所组成。

其中主程序main( )仅完成点阵屏的初始设置和初始化函数init( )的调用。

按键中断程序key_down( ),完成按键次数计数、置扫描初始列的任务。

图4.3 乙机接收电路

T0定时中断点阵屏扫描程序show_dot_matrix( ),完成点阵屏每隔2ms完成一列的扫描显示。计数值的点阵编码存于二维数组M[][8]中,列扫描码来自当前计数值在二维数组M[][8]中的相应行。流程图见图4.4。

甲机程序如下:

图4.4 T0中断点阵显示(www.daowen.com)

乙机的接受程序由主函数main( )、初始化函数init( )以及串行中断服务程序rint( )所组成。

主程序main( )仅完成初始化函数init( )的调用及数码管的初始显示。串行中断服务程序rint( )完成接收计数值并将其显示码输出至P2口。

乙机控制程序如下:

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

我要反馈