项目3任务2技能点:编程实现多位共阴极数码管动态显示讲解_第1页
项目3任务2技能点:编程实现多位共阴极数码管动态显示讲解_第2页
项目3任务2技能点:编程实现多位共阴极数码管动态显示讲解_第3页
项目3任务2技能点:编程实现多位共阴极数码管动态显示讲解_第4页
项目3任务2技能点:编程实现多位共阴极数码管动态显示讲解_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机原理及应用技术项目三数码管显示的温度计设计任务2多位LED数码管显示设计学校名称:平顶山工业职业技术学院主讲人:高同辉技能点编程实现多位共阴极数码管动态显示任务实施四授课内容1.硬件电路接线2.软件程序编写3.编译、下载、验证4.结果分析评价与反馈五四、任务实施

1.硬件电路接线

数码管的A,B,C,D,E,F,G,DP引脚分别接入开发板的数字管脚2,3,4,5,6,7,8,9。数码管公共端1,2,3,4引脚通过串联220Ω限流电阻依次接数字管脚10,

11,

12,

13。四、任务实施

2.软件程序编写#defineSEG_A2#defineSEG_B3#defineSEG_C4#defineSEG_D5#defineSEG_E6#defineSEG_F7#defineSEG_G8#defineSEG_H9#defineCOM110#defineCOM211#defineCOM312#defineCOM413unsignedchartable[10][8]={{0,0,1,1,1,1,1,1},//0{0,0,0,0,0,1,1,0},//1{0,1,0,1,1,0,1,1},//2{0,1,0,0,1,1,1,1},//3{0,1,1,0,0,1,1,0},//4{0,1,1,0,1,1,0,1},//5{0,1,1,1,1,1,0,1},//6{0,0,0,0,0,1,1,1},//7{0,1,1,1,1,1,1,1},//8{0,1,1,0,1,1,1,1}//9};voidsetup(){for(inti=2;i<14;i++){pinMode(i,OUTPUT);}}四、任务实施

2.软件程序编写case4:digitalWrite(COM1,HIGH);digitalWrite(COM2,HIGH);digitalWrite(COM3,HIGH);digitalWrite(COM4,LOW);//选择位4break;default:break;}//a查询码值表digitalWrite(SEG_A,table[num][7]);digitalWrite(SEG_B,table[num][6]);digitalWrite(SEG_C,table[num][5]);digitalWrite(SEG_D,table[num][4]);digitalWrite(SEG_E,table[num][3]);digitalWrite(SEG_F,table[num][2]);digitalWrite(SEG_G,table[num][1]);digitalWrite(SEG_H,table[num][0]);}voidloop(){

Display(1,1);//第1位显示1delay(500);Display(2,2);//第2位显示2delay(500);Display(3,3);//第3位显示3delay(500);Display(4,4);//第4位显示4delay(500);}switch(com)//选通位选{case1:digitalWrite(COM1,LOW);//选择位1digitalWrite(COM2,HIGH);digitalWrite(COM3,HIGH);digitalWrite(COM4,HIGH);break;case2:digitalWrite(COM1,HIGH);digitalWrite(COM2,LOW);//选择位2digitalWrite(COM3,HIGH);digitalWrite(COM4,HIGH);break;case3:digitalWrite(COM1,HIGH);digitalWrite(COM2,HIGH);digitalWrite(COM3,LOW);//选择位3digitalWrite(COM4,HIGH);break;voidDisplay(unsignedcharcom,unsignedcharnum){for(intj=2;j<10;j++){digitalWrite(j,LOW);}四、任务实施3.编译、下载、验证观察现象:数码管从0开始累加显示数据。

程序中根据实验原理图,通过数码管库函数进行数码管初始化,不断对numToShow变量进行累加,然后对数码管进行设置数据、刷新显示的操作。程序中没有使用delay()函数进行延时,而是通过不断累加delaycount变量,在其达到理想阈值时对numToShow变量进行累加。因为数码管需要不断重复刷新数据才能保持显示,若使用delay()进行延时,则程序将停止进行等待,这段时间数码管得不到刷新,显示就会受到影响,数码管会变暗、闪烁甚至熄灭。更加理想的做法是通过定时器来对数码管进行刷新。4.结果分析五、评价与反馈多位数码管显示编程思路:打开

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论