版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理与应用单片机原理与应用专题课件专题课件二、项目资讯二、项目资讯数码管基础知识数码管基础知识1.数码管常用封装数码管常用封装2011年3月16日32. 数码管的分类数码管的分类(1)(1)尺寸尺寸n0.30.8寸n1.02.3寸n3.0寸以上(2)(2)内部连接方式内部连接方式n共阳极(Common Anode)n共阴极(Common Cathode)二、项目资讯二、项目资讯数码管基础知识数码管基础知识3.3.数码管内部结构图数码管内部结构图二、项目资讯二、项目资讯数码管基础知识数码管基础知识共阳:共阳: comcom端接高电平,段码输入高电平亮。端接高电平,段码输入高电平亮。共阴:共
2、阴: comcom端接低电平,段码输入低电平亮。端接低电平,段码输入低电平亮。共阴极共阴极(CC)(CC)共阳极共阳极(CA)(CA)2011年3月16日54.4.数码管的字形码数码管的字形码数码管显示原理:要显示某个字形,需将此字形对应的笔段点亮,因而要送不同的电平组合数据至数码管引脚,该数据称为字形码或段码。笔段笔段dpdpg gf fe ed dc cb ba a共阳极共阳极1 10 01 1 0 00 01 10 00 0共阴极共阴极0 01 10 01 11 10 01 11 1数据位数据位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0“2 2”的段码:共阳极:的段
3、码:共阳极:0 xA40 xA4、共阴极:、共阴极:0 x5B0 x5B二、项目资讯二、项目资讯数码管基础知识数码管基础知识数字数字共阳极七段码共阳极七段码共阴极七段码共阴极七段码0 00 xc00 xc00 x3f0 x3f1 10 xf90 xf90 x060 x062 20 xa40 xa40 x5b0 x5b3 30 xb00 xb00 x4f0 x4f4 40 x990 x990 x660 x665 50 x920 x920 x6d0 x6d6 60 x820 x820 x7d0 x7d7 70 xf80 xf80 x070 x078 80 x800 x800 x7f0 x7f9 9
4、0 x900 x900 x6f0 x6f4.4.数码管的字形码表数码管的字形码表二、项目资讯二、项目资讯数码管基础知识数码管基础知识1.1.数码管静态显示原理图分析数码管静态显示原理图分析P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7STC89C52abcdefgdpcom 5V470R8共阳连接方式: 对于共阳极数码管其公共端接电源,每个数码管的段码、DP分别与P0.0P0.7相连。通过PO输出不同的数据组合,即可在数码管上显示不同的数字。 静态显示方式,每一个数码管都需要单独占用一个单片机P口。二、项目资讯二、项目资讯数码管静态显示数码管静态显示10011111低电平点亮
5、相应笔段“1”的段码为0XF91.1.数码管静态显示原理图分析数码管静态显示原理图分析共阴连接方式: 对于共阳极数码管其公共端接地,每个数码管的段码、DP分别与P2.0P2.7相连。通过P2输出不同的数据组合,即可在数码管上显示不同的数字。二、项目资讯二、项目资讯数码管静态显示数码管静态显示P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7STC89C52abcdefgdpcom470R801100000高电平点亮相应笔段“1”的段码为0X06位驱动段驱动P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.
6、6P0.7P2.7P2.6P2.5P2.4P2.3P2.28位共阳极数码管模块相同的段驱动端都并联在一起。com7com8P2.1P2.02 2、单片机学习开发板数码管连接图、单片机学习开发板数码管连接图二、项目资讯二、项目资讯数码管静态显示数码管静态显示3 3、在单片机学习开发板显示一个数字、在单片机学习开发板显示一个数字二、项目资讯二、项目资讯数码管静态显示数码管静态显示位驱动段驱动P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.2com7com8P2.1P
7、2.00100100111111110位驱动P2口输出“11111110”段驱动P0口输出“5”的段码“10010010B”#include #include main()main() P2=0XFE; P2=0XFE; P0=0X92; P0=0X92; while(1);while(1); /接通公共端电源接通公共端电源/送数码管段码送数码管段码 在单片机学习开发板上最右边右边的数码管上显示数字“5”5”二、项目资讯二、项目资讯数码管静态显示数码管静态显示 在右边第3个数码管上循环显示数字09,每个数据显示1秒钟,请画出程序流程图并编写程序在实验板上实现上述要求功能。4.4.数码管静态显示
8、程序设计练习数码管静态显示程序设计练习 思考:如何在右边思考:如何在右边2 2个数码管上显示个数码管上显示1 1个个2 2位数呢?如显示位数呢?如显示6868。二、项目资讯二、项目资讯数码管动态显示数码管动态显示1 1、单片机学习开发板数码管内部结构图、单片机学习开发板数码管内部结构图四位一体共阴型四位一体共阴型四位一体共阳型四位一体共阳型四位一体数码管四位一体数码管位驱动段驱动P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.28位共阳极数码管模块相同的段驱动端
9、都并联在一起。com7com8P2.1P2.02 2、单片机学习开发板数码管连接图、单片机学习开发板数码管连接图二、项目资讯二、项目资讯数码管动态显示数码管动态显示二、项目资讯二、项目资讯数码管动态显示数码管动态显示3.数码管动态显示原理图数码管动态显示原理图多个数码管相同的段连在一起,共1个IO口。各数码管的公共端通过独立的IO口,控制与电源或地接通。如学习开发板原理图所示: 位驱动段驱动P0.0+5Vcom1com2com3com4com5com6abcdefgdpP0.1P0.2P0.3P0.4P0.5P0.6P0.7P2.7P2.6P2.5P2.4P2.3P2.2com7com8P2.
10、1P2.00100100111111110二、项目资讯二、项目资讯数码管动态显示数码管动态显示4.数码管动态显示程序设计数码管动态显示程序设计 如何在右边如何在右边2 2个数码管上显示个数码管上显示1 1个个2 2位数呢?如显示位数呢?如显示6868。 程序流程图程序流程图#include #include main( )main( ) while(1) while(1) P2=0XFE;/ P2=0XFE;/第第1 1个数码管接通电源个数码管接通电源 P0=0 x80;/ P0=0 x80;/输出个位输出个位8 8的七段码的七段码 Delay(1000);Delay(1000); P2=0X
11、FD;/ P2=0XFD;/第第2 2个数码管接通电源个数码管接通电源 P0=0 x82;/ P0=0 x82;/输出十位输出十位6 6的段码的段码 Delay(1000); Delay(1000); 程序代码程序代码二、项目资讯二、项目资讯数码管动态显示数码管动态显示5.5.数码管动态显示原理数码管动态显示原理 在上述的程序示例中大家看到了什么效果?现在我们把延时间改成在上述的程序示例中大家看到了什么效果?现在我们把延时间改成5ms5ms看一下有什么效果?为什么?(实验演示)看一下有什么效果?为什么?(实验演示)n 数码管动态电路一般将几个数码管(学习开发板是8个)相同的笔段引脚并联在一起,
12、相同笔段共用IO口。各数码管的位选端(公共端)通过一个独立的IO口控制,由数码管的位选来控制哪一位数码管有效。n 所谓动态扫描显示就是轮流向各位数码管送出字形码(段码)和相应的位选数据,只要各个数码管之间的切换速度比较快,利用发光管的余辉和人眼视觉暂留作用,使人感觉好像几个数码管同时都在显示。二、项目资讯二、项目资讯数码管动态显示数码管动态显示6.6.数码管动态显示练习数码管动态显示练习 在实验板上8个数码管显示20121201,要求显示稳定无明显闪烁感,画出程序流程并编写程序上机调试。二、项目资讯二、项目资讯数码管动态显示数码管动态显示7.7.数码管显示方法比较数码管显示方法比较(1 1)在
13、静态显示静态显示 单片机只送一次数据至数码管即可保持字形的显示单片机只送一次数据至数码管即可保持字形的显示优点:程序简单,不占用优点:程序简单,不占用CPUCPU时间时间缺点:硬件复杂,缺点:硬件复杂,占用单片机占用单片机IO多,显示位数较多时需要使用锁存器,硬件多,显示位数较多时需要使用锁存器,硬件成本高成本高(2 2)动态显示)动态显示单片机不断扫描数码管,分时送出数据,利用单片机不断扫描数码管,分时送出数据,利用“视觉暂留视觉暂留”的现象进行显示的现象进行显示优点:硬件简单,占用单片机优点:硬件简单,占用单片机IOIO少、硬件成本低少、硬件成本低缺点:程序复杂,需缺点:程序复杂,需单片机
14、单片机不断扫描数码管,极大占用不断扫描数码管,极大占用CPUCPU时间时间二、项目资讯二、项目资讯数码管动态显示数码管动态显示思考:如何在数码管上显示一个变量思考:如何在数码管上显示一个变量的值?例如有一个整形变量。的值?例如有一个整形变量。二、项目资讯二、项目资讯数码管动态显示数码管动态显示(1)在上次课的思考题:如何在数码管上显示一个整形变量的值?)在上次课的思考题:如何在数码管上显示一个整形变量的值? 要实现上述功能,在显示程序中,每个数码管的显示数据肯定不能赋一个常量值。对于1个整形变量y我们可以通过前面学习的运算符和表达式可以求出每1位数的值(如个位为y%10,十位数为y%100/1
15、0,依次类推),但怎么得到它的七段码呢? 在实际中常用查表的方法来实现。8 8、C51C51数组的使用数组的使用(2 2)什么是表?怎么查表?)什么是表?怎么查表? 表是在存储器中开辟的一组地址连续的存储空间,用来存放一些数据的集合,查表就是以一定方式找到数据集合中所需的数据。在C51中,表是以数组的形式来实现,以数组下标的进行数据元素的查找。(3 3)数组的定义与引用)数组的定义与引用 相关知识见C51专题PPT的数组部分。二、项目资讯二、项目资讯数码管动态显示数码管动态显示(4 4)数组应用举例)数组应用举例 编写程序在数码管上显示一个5位整型变量题目分析:题目分析: (1)将数码管09的
16、段码定义成一个表(数组形式存储09段码)(2)通过表达式计算出每位的数值(3)用每位的数值作为数组下标,查表得到每位的数值的段码(4)动态扫描显示每位数据8 8、C51C51数组的使用数组的使用程序流程图程序流程图二、项目资讯二、项目资讯数码管动态显示数码管动态显示#include #include code unsigned char SEGMENT10=0 xc0,0 xf9,code unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;0 xa4,0 xb0,0 x99,0
17、 x92,0 x82,0 xf8,0 x80,0 x90;main(main() ) int y;int y;y=20123;y=20123;while(1)while(1) P2=0 xfe;P2=0 xfe;P0=SEGMENTy%10;P0=SEGMENTy%10;Delay(5);Delay(5);P2=0 xfd;P2=0 xfd;P0=SEGMENTy%100/10;P0=SEGMENTy%100/10;Delay(5);Delay(5);P2=0 xfb;P2=0 xfb;P0=SEGMENTy%1000/100;P0=SEGMENTy%1000/100;Delay(5);Del
18、ay(5);P2=0 xf7;P2=0 xf7;P0=SEGMENTy%10000/1000;P0=SEGMENTy%10000/1000;Delay(5);Delay(5);P2=0 xef;P2=0 xef;P0=SEGMENTy/10000;P0=SEGMENTy/10000;Delay(5);Delay(5); (5 5)源程序)源程序上述程序每位显示都是三个语句,上述程序每位显示都是三个语句,可以使用循环语句对程序进行优化!可以使用循环语句对程序进行优化!二、项目资讯二、项目资讯数码管动态显示数码管动态显示()优化后的源程序()优化后的源程序#include #include cod
19、e unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,code unsigned char SEGMENT10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90;0 x82,0 xf8,0 x80,0 x90;code unsigned char SELECT8=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;code unsigned char SELECT8=0 xfe,0 xfd,0 xfb,0 xf7
20、,0 xef,0 xdf,0 xbf,0 x7f;main()main() int y=20123,x;int y=20123,x;char i;char i;while(1)while(1) x=y;x=y;for(i=0;i5;i+)for(i=0;i5;i+) P2= SELECTi;P2= SELECTi;P0=SEGMENTx%10;P0=SEGMENTx%10;Delay(5);Delay(5);x/=10;x/=10; 二、项目资讯二、项目资讯数码管动态显示数码管动态显示8 8、课堂练习、课堂练习已知有已知有3 3个变量个变量y,m,dy,m,d分别存放当天的日期,请编写程序在分
21、别存放当天的日期,请编写程序在8 8个数码上显个数码上显示出来。示出来。其中其中y y为为4 4位整型变量,位整型变量,m m、d d为二位字符型变量。为二位字符型变量。二、项目资讯二、项目资讯数码管动态显示数码管动态显示9 9、数码管显示函数编写 在实际项目中,可能有多地方需要显示,所以我们可以把显示部分单独编写成一个函数,要显示的内容通过参数传递来实现。 本函数涉及我们前面所学的带参数的函数定义、调用及静态变量相关知识,在这里不再重复,请大家见C51专题PPT函数部分和变量的存储类型。(1 1)函数功能任务分析:已知有3个变量y,m,d分别存放当天的日期,其中y为4位整型变量,m、d为二位
22、字符型变量。显示的数据在3个变量中,所以函数需要三个形参,该函数不需要返回值。二、项目资讯二、项目资讯数码管动态显示数码管动态显示课堂练习回顾:课堂练习回顾:已知有已知有3个变量个变量y,m,d分别存放当天的日期,请编写程序在分别存放当天的日期,请编写程序在8个数码上显个数码上显示出来。示出来。其中其中y为为4位整型变量,位整型变量,m、d为二位字符型变量。为二位字符型变量。把上述课练堂习题改成函数形式实现。把上述课练堂习题改成函数形式实现。9 9、数码管显示函数编写二、项目资讯二、项目资讯数码管动态显示数码管动态显示Display(int y,char m,char,d)Display(in
23、t y,char m,char,d) static char num=0;/num static char num=0;/num表示表示8 8个数码管序号,值为个数码管序号,值为0-70-7 P2=0 xff;/ P2=0 xff;/消影消影 switch(num)switch(num) case 0:P0=SEGMENTd%10;break;case 0:P0=SEGMENTd%10;break;case 1:P0=SEGMENTd/10;break;case 1:P0=SEGMENTd/10;break;case 2:P0=SEGMENTm%10;break;case 2:P0=SEGME
24、NTm%10;break;case 3:P0=SEGMENTm/10;break;case 3:P0=SEGMENTm/10;break;case 4:P0=SEGMENTy%10;break;case 4:P0=SEGMENTy%10;break;case 5:P0=SEGMENTy%100/10;break;case 5:P0=SEGMENTy%100/10;break;case 6:P0=SEGMENTy%1000/100;break;case 6:P0=SEGMENTy%1000/100;break;case 7:P0=SEGMENTm/1000;break;case 7:P0=SEGMENTm/1000;break; P2=SELECTnum;/ P2=SELECTnum;/开位显示开位显示 num+; num+; num%=8;/ num%=8;/8个数码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酒店品牌推广总结
- 软件行业采购管理心得
- 手机数码销售员工作总结
- 金融规划行业财务规划培训体验
- 云南省昆明市九县区人教版(PEP)2023-2024学年六年级上学期英语期末质量检测试卷
- 2021年广东省中山市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 2022年四川省自贡市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 2021年江苏省苏州市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 2023年浙江省绍兴市公开招聘警务辅助人员辅警笔试自考题1卷含答案
- 简单辞职报告怎么写
- 阜阳师范大学《法学概论》2023-2024学年期末试卷
- 新版中国食物成分表
- 2024河南郑州市金水区事业单位招聘45人历年高频难、易错点500题模拟试题附带答案详解
- 湘教版八年级音乐下册教案全册
- 食物损失和浪费控制程序
- 特种设备安全管理电梯模拟考核题库888题(含标准答案)
- 债权法学习通超星期末考试答案章节答案2024年
- 关于农机安装合同模板
- 2024解读《弘扬教育家精神》全文
- TCI 373-2024 中老年人免散瞳眼底疾病筛查规范
- TCCIAT 0046-2022 混凝土剪力墙结构装配式组合壳体系技术规程
评论
0/150
提交评论