欢迎来到天天文库
浏览记录
ID:20282878
大小:317.50 KB
页数:5页
时间:2018-10-09
《单片机实验二 外部中断及lcd显示实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验二外部中断与LCD显示实验一、实验目的1、进一步熟悉利用PROTEUS、KeiluVision3等软件的使用方法。2、理解单片机的中断、中断过程及其中断优先级原理,掌握中断服务子程序的编写方法。3、掌握1602LCD工作原理与应用。4、进一步掌握C51程序设计方法。二、实验设备计算机一台;单片机实验仪一台;KeilC51和Proteus软件。三、实验内容1、初始时灯D1(接P1.4)和灯D2(接P1.5)均亮。利用中断,按一次“加一”按钮(接P3.2)D1亮暗发生一次变化,按一次“减一”按钮(接P3.3)D2亮暗发生一次变化,其中“减一”按钮的优
2、先级高于“加一”按钮。按要求连接好电路,并编程实现上述要求。2、1602LCD实时显示所计的数m(m初值为0),按一次“加一”按钮(接P3.2)时LCD上显示的数加一,按一次“减一”按钮(接P3.3)时LCD上显示的数减一,0≦m≦10000,即在计数过程中,若m=0再减一时m值仍为0,若m=10000再加一时m值仍为10000。四、实验电路图图11602LCD原理图图2独立按键原理图5图3实验总仿真图五、与1602LCD相关的部分函数(提示)bitlcd_bz()//检测LCD是否忙{bitresult;rs=0;rw=1;ep=1;_nop_()
3、;_nop_();_nop_();_nop_();result=(bit)(P0&0x80);ep=0;return(result);}voidlcd_wcmd(unsignedcharcmd)//写指令到LCD子程序{while(lcd_bz());rs=0;5rw=0;ep=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();_nop_();_nop_();ep=1;_nop_();_nop_();_nop_();_nop_();ep=0;}voidlcd_pos(unsignedcharpos)//写显示位置子程序
4、{lcd_wcmd(pos
5、0x80);}voidlcd_wdat(unsignedchardat)//写显示数据到LCD子程序{while(lcd_bz());rs=1;rw=0;ep=0;P0=dat;_nop_();_nop_();_nop_();_nop_();ep=1;_nop_();_nop_();_nop_();_nop_();ep=0;}voiddelay(unsignedcharn)//延时n毫秒{unsignedchari,j;for(i=0;i6、LCD初始化子程序5{lcd_wcmd(0x38);delay(1);lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);delay(1);lcd_wcmd(0x01);delay(1);}六、实验内容1流程图开始设置触发方式开中断D1、D2均亮原地踏步否是INT0中断入口消抖中断返回按钮被按下?计数加一否是INT1中断入口消抖中断返回按钮被按下?计数减一图4主程序流程图图5INT0中断服务程序流程图图6INT1中断服务程序流程图七、实验接线1、1602的D7~D0接至单片机的P0.7~P0.0(板内部已接好)2、1602的7、RS、RW、E分别接至单片机的P2.6、P2.5、P2.7(板内部已接好)3、单片机的P3.2、P3.3分别接至JP5的K1、K24、单片机的P1.4、P1.5分别接至某一个LED灯的输入端(J12的某个端子)八、实验步骤1、在正确的位置按正确的方向接上1602LCD2、实验接线3、编程、编译生成.HEX文件4、利用“PZISP自动下载软件”进行下载,观察效果。九、思考题1、实验内容2中,若最大只能加到255,应如何解决?2、采用中断有什么好处?十、实验报告要求1、实验目的2、实验设备3、实验内容4、实验内容1和实验内容2的主要电路图(画出逻辑图即可8、,不必画出引脚图)55、实验流程图(实验内容1和实验内容2)6、实验源程序(实验内容1)7、思考题解答8、实验总结及心得体会(根据需要填写,该部分可省略)5
6、LCD初始化子程序5{lcd_wcmd(0x38);delay(1);lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);delay(1);lcd_wcmd(0x01);delay(1);}六、实验内容1流程图开始设置触发方式开中断D1、D2均亮原地踏步否是INT0中断入口消抖中断返回按钮被按下?计数加一否是INT1中断入口消抖中断返回按钮被按下?计数减一图4主程序流程图图5INT0中断服务程序流程图图6INT1中断服务程序流程图七、实验接线1、1602的D7~D0接至单片机的P0.7~P0.0(板内部已接好)2、1602的
7、RS、RW、E分别接至单片机的P2.6、P2.5、P2.7(板内部已接好)3、单片机的P3.2、P3.3分别接至JP5的K1、K24、单片机的P1.4、P1.5分别接至某一个LED灯的输入端(J12的某个端子)八、实验步骤1、在正确的位置按正确的方向接上1602LCD2、实验接线3、编程、编译生成.HEX文件4、利用“PZISP自动下载软件”进行下载,观察效果。九、思考题1、实验内容2中,若最大只能加到255,应如何解决?2、采用中断有什么好处?十、实验报告要求1、实验目的2、实验设备3、实验内容4、实验内容1和实验内容2的主要电路图(画出逻辑图即可
8、,不必画出引脚图)55、实验流程图(实验内容1和实验内容2)6、实验源程序(实验内容1)7、思考题解答8、实验总结及心得体会(根据需要填写,该部分可省略)5
此文档下载收益归作者所有