下载此文档

单片机原理-独立按键识别-单片机原理-实验报告.doc


文档分类:通信/电子 | 页数:约15页 举报非法文档有奖
1/15
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/15 下载此文档
文档列表 文档介绍
宁德师范学院计算机系实验报告(2014—2015学年第2学期)课程名称单片机原理实验名称独立按键识别专业计算机科学与技术(非师)::,、Led灯、八位7段数码管(共阳/共阴自选),将P2口作数据输出口与7段数码管数据引脚相连,P3引脚输出位选控制信号。——-99的计数器效果,-99码表(按一次开始计时,第二次停止,第三次清零):通过3个按键实现时钟的调整(KEY1模式,KEY2+,KEY3-)实验设备(环境):计算机、ProteusISIS7Professional应用程序、Keil应用程序实验内容:——-99的计数器效果,-99码表(按一次开始计时,第二次停止,第三次清零)扩展要求:通过3个按键实现时钟的调整(KEY1模式,KEY2+,KEY3-)参考原理图实验步骤、实验结果及分析:1、使用ProteusISIS7Professional应用程序,、在“库”下拉菜单中,选中“拾取元件”(快捷键P),分别选择以下元件:AT89C51、CAP、CAP-ELEC、CRYSTAL、RESPACK-8。3、构建仿真电路4、创建一个Keil应用程序:新建工程项目文件;为工程选择目标器件(AT89C52);为工程项目创建源程序文件并输入程序代码;保存创建的源程序项目文件;把源程序文件添加到项目中。5、把程序经过编译后生成的HEX文件添加到仿真电路中的处理器中(编辑元件→文件路径)程序代码: #include"" #defineucharunsignedchar sbitLed1=P1^0; sbitKey=P3^2; ucharMode=0; voiddelay(intx)//定义时间间隔 { while(x--); } voidbutton_Cotrol() //根据按键模式执行相应的代码 { if(Key==0) { delay(1000); if(Key==0) { Mode=(Mode+1)%2; while(Key==0); } } if(Mode==0) Led1=0; if(Mode==1) { Led1=~Led1; delay(1000); } } voidmain() { while(1) button_Cotrol(); }图1单按钮,——控制4路Led灯闪烁 #include"" #defineucharunsignedchar sbitLed1=P1^0;sbitLed2=P1^1; sbitLed3=P1^2;sbitLed4=P1^3; sbitKey=P3^2; ucharMode=0; voiddelay(intx)//定义时间间隔 { while(x--); } voidbutton_Cotrol() //根据按键模式执行相应的代码 { if(Key==0) { delay(1000); if(Key==0) { Mode=(Mode+1)%4; while(Key==0); } } if(Mode==0) { Led4=0; Led1=~Led1; delay(3000); } if(Mode==1) { Led1=0; Led2=~Led2; delay(3000); } if(Mode==2) { Led2=0; Led3=~Led3; delay(3000); } if(Mode==3){ Led3=0; Led4=~Led4; delay(3000); } } voidmain() { Led1=0; Led2=0; Led3=0; Led4=0; while(1) button_Cotrol(); }图2单按键多功能识别,-99的计数器效果,按一下数值加1 #include"" #defineucharunsignedchar #definedisp_null10 sbitKey=P3^2; ucharcodetab[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//共阳数码管显示0~9的段码

单片机原理-独立按键识别-单片机原理-实验报告 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数15
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zxwziyou9
  • 文件大小195 KB
  • 时间2019-06-13