已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目三数码管显示,教学目的,掌握数字、字符转换成显示段码的软件译码方法;掌握静态显示的原理;掌握动态显示的原理;掌握数码管程序设计的方法。P130,工作模块6数码管循环显示09,利用AT89S51单片机的P1端口的P1.0P1.7连接到一个共阴数码管的ah的笔段上,数码管的公共端接地。在数码管上循环显示09数字。,工作模块6,数码管显示程序(C程序),#includeunsignedcharcodetable=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;unsignedchardispcount;voiddelay(void)unsignedchari,j,k;for(i=40;i0;i-)for(j=40;j0;j-)for(k=248;k0;k-);,voidmain(void)while(1)for(dispcount=0;dispcount2的结果为真,而3b,a+bb+c,(a=3)=(b=5)在C语言中,没有专门的逻辑型变量,如果运算的结果是“真”,用数值“1”表示,而运算的结果是“假”则用数值“0”表示。例如:x1=32的结果是x1等于1原因是32的结果是“真”,即其结果为1,该结果被“”号赋给了x1。又如:x2=3=2的结果是x2=0,请自行分析。,逻辑运算符,C语言提供了三种逻辑运算符:“”语句,使程序退出switch结构,即终止switch语句的执行。如:switch(x)case1:y=1;case2:y=2;case3:y=0;假如x的值是1,y=?,循环结构控制语句,在一个实用的程序中,循环结构是必不可少的。循环是反复执行某一部分程序行的操作。通过下面C语言程序,来看如何利用这些循环语句编写循环程序。voidDelay()voidmain()unsignedchari,j;while(1)for(i=0;i255;i+);这段程序中有两处用到了循环语句,首先是主程序使用了:while(1)这样的循环语句写法,在中的所有程序将会不断地循环执行,直到断电为止;其次是延时程序,使用了for循环语句的形式。,while语句,当型循环,即当给定的条件成立时,执行循环体部分,执行完毕回来再次判断条件,如果条件成立继续循环,否则退出循环。其一般形式如下:while(表达式)循环体语句当表达式为非0值(真)时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行语句。,do-while语句,直到型循环,即先执行循环体,然后判断给定的条件,只要条件成立就继续循环,直到判断出给定的条件不成立时退出循环。其一般形式如下:do循环体语句while(表达式)do-while语句特点是先执行循环体,然后判断循环条件是否成立。对同一个问题,既可以用while语句处理,也可以用do-while语句处理,但是这两个语句是有区别的。,for语句,C语言中的for语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况。for语句的一般形式为:for(表达式1;表达式2;表达式3)循环体语句执行步骤如下:(1)先求解表达式1;(2)求解表达式2,其值为真,则执行for语句中指定的内嵌语句(循环体),然后执行第(3)步,如果为假,则结束循环;(3)求解表达式3;(4)转回第2步继续执行。,break语句,break语句强行结束循环,转向执行循环语句的下一条语句。在一个循环程序中,可以通过循环语句中的表达式来控制循环程序是否结束。除此之外,还可以通过break语句从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。一般形式:break;注意:break语句不能用于循环语句和switch语句之外的任何其他语句中;break语句是结束整个循环过程,不再判断执行循环的条件是否成立。,continue语句,continue语句作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。对于for循环,跳过循环体其余语句,转向循环变量增值表达式的计算;对于while和do-while循环,跳过循环体其余语句,但转向循环继续条件的判定。一般形式:continue;注意:continue只能用于循环语句中;continue语句只结束本次循环,而不是终止整个循环的执行。,工作模块7LED动态扫描显示,动态显示,也称扫描显示;显示器由6个共阴极LED数码管构成;P0口输出显示段码,经由一片74LS245驱动输出给LED管;P1口输出位码(片选),经由74LS05输出给LED管。,LED动态扫描显示电路(P135),动态显示特点,在多位LED显示时,为了降低成本和功耗,将所有位的段选控制端并联起来,由一个8位端口控制(本任务中用P0口);各位数码管的公共端(com端),用作“位选端”,由另一个端口进行显示位的控制(本任务中用P1口)。由于段选端是公用的,要让各位数码管显示不同的字符,就必须采用扫描方式,即动态扫描显示方式。动态扫描是采用分时的方法轮流点亮各位数码管的显示方式,它在某一时间段,只让其中一位数码管的“位选端”(com端)有效,并送出相应的字型编码。,动态扫描过程,首先从段选线上送出字型编码,再控制位选端,字符就显示在指定数码管上,其他位选端无效的数码管都处于熄灭状态,持续1.5ms时间,然后关闭所有显示;接下来又送出新的字型编码,按照上述过程又显示在另外一位数码管上,直到每一位数码管都扫描完为止,这一过程即为动态扫描显示。数码管其实是轮流依次点亮的,但由于人的视觉驻留效应,因此当每个数码管点亮的时间小到一定程度时,人就感觉不出字符的移动或闪烁,觉得每位数码管都一直在显示,达到一种稳定的视觉效果。,思考题,如何修改程序,实现六位LED数码管只显示其中的两位?,定义段码表,#includeunsignedcharcodeTab=0 x3F,0 x06,0 x5B,0 x4F,0 x66,0 x6D,0 x7D,0 x07,0 x7F,0 x6F,0 x77,0 x7C;unsignedcharcodeCol=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf;voidDelay()unsignedchari;for(i=0;i0;j-);,0-99计数显示c语言程序,voidmain(void)Count=0;/计数变量初始为0P0=tableCount/10;/十位管显示P2=tableCount%10;/个位显示while(1)/计数显示处理if(P1_0=0)/键按下?delay10ms();/延时去抖动,if(P1_0=0)/确定键按下Count+;/计数加1if(Count=100)/计数到100?Count=0;/到100回0P0=tableCount/10;/显示十位数P2=tableCount%10;/显示个位数while(P1_0=0);/等键释放,C语言函数,函数的分类和定义函数分类无参函数有参函数函数定义函数类型说明符函数名(形式参数表)函数体,函数的调用,函数调用的一般形式如下:函数名(实参列表);例如voidmDelay(unsignedintDelay)for(;Delay0;Delay-)函数中Delay就是一个形式参数,而在主函数中调用时写的:mDelay(1000);,函数的返回值,在C中,一般使用return语句由被调函数向主调函数返回值,该语句有下列用途:它能立即从所在的函数中退出,返回到调用它的程序中去;返回一个值给调用它的函数。返回语句一般有如下的形式:return;或return表达式;或return(表达式);,技能拓展七段字形译码器74LS47,74LS47是由与非门、输入缓冲器和7个与或非门组成的BCD-7段数码管译码器/驱动器,是输出低电平有效的七段字形译码器。能将4位二进制编码十进制数(BCD码)转化成七段字形码,然后去驱动一个七段显示器。也就是说74LS47可以直接把数字转换为数码管的显示数字,从而可以简化程序,节约单片机的IO开销。,使用74LS47实现0-99计数显示,显示电路采用硬件译码输出字型码控制显示内容,数码管是共
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云存储服务合同协议2026年存储
- 2026年医疗用地土地流转经营合同协议
- 2026年医药冷链仓库租赁合同
- 商铺租赁合同2026年税务承担
- 2026年2026年干货供应合同协议
- 家装修介绍教学课件
- 2026届新高考英语冲刺复习 读后续写-逆推
- 家政服务员安全卫生课件
- 家务培训课件
- 培训讲座心理课件
- 2025年宁波市数据局直属事业单位公开招聘工作人员笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 2025秋苏少版七年级上册美术期末测试卷(三套)
- 2026年及未来5年市场数据中国EPP保温箱行业市场调研及投资战略规划报告
- 2025锦泰财产保险股份有限公司招聘理赔管理岗等岗位54人(公共基础知识)综合能力测试题附答案解析
- 2025浙江宁波象山县水质检测有限公司招聘及对象笔试历年参考题库附带答案详解
- 光伏屋面施工专项安全方案
- 2026年黑龙江农业工程职业学院单招综合素质考试题库附答案
- 四川农商银行2026年校园招聘1065人考试题库附答案
- 2026年度交通运输部所属事业单位第三批统一公开招聘备考笔试试题及答案解析
- 2025秋学期六年级上册信息科技期末测试卷附答案(苏科版)
- 广西壮族自治区公安机关2026年人民警察特殊职位招聘195人备考题库及1套完整答案详解
评论
0/150
提交评论