数码管动态扫描.doc_第1页
数码管动态扫描.doc_第2页
数码管动态扫描.doc_第3页
数码管动态扫描.doc_第4页
数码管动态扫描.doc_第5页
免费预览已结束,剩余2页可下载查看

下载本文档

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

文档简介

数码管动态扫描31子情境内容:利用动态扫描让四位数码管稳定的显示1234。32 子情境目标:(1)掌握单片机控制四位数码管的动态扫描技术,包括程序设计和电路设计,本任务的效果是让四位数码管稳定的显示1234。(2)用PROTEUS进行电路设计和实时仿真33 知识点链接(1)数码管动态扫描 (动态扫描的定义以及与静态显示的区别)动态显示的特点是将所有位数码管的段选线s一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。 (2)总线的应用元器件与总线的连线P0口的接线采用总线方式,详细如图517所示。 选择总线按钮 绘制总线:与普通电线的绘制方法一样,选择合适的起点、终点单击。如果终点在空白处,左键双击结束连线。画总线的时候为了和一般的导线区分,我们一般喜欢画斜线来表示分支线。此时我们需要自己决定走线路径,只需在想要拐点处单击鼠标左键即可。在画斜线时,需要关闭线路自动路径功能才好绘制。Proteus的线路自动路径功能简称WAR,当选中两个连接点后,WAR将选择一个合适的路径连线。WAR可通过使用标准工具栏里的“WAR”命令按钮来关闭或打开,也可以在菜单栏的“Tools”下找到这个图标。 给与总线连接的导线贴标签PART LABELS与P0口相连的线标签名依次为P00P06,本电路中的P0口的上拉电阻通过总线与P0口相连,数码管也是通过总线与P0口相连,这些都需要标注,以表明正确的电气连接。单击绘图工具栏中的导线标签按钮,使之处于选中状态。将鼠标置于图形编辑窗口的欲标标签的导线上,跟着鼠标的指针就会出现一个“”号,表明找到了可以标注的导线,单击鼠标左键,弹出编辑导线标签窗口,如图516所示。 在“string”栏中,输入标签名称(如p00),单击“OK”按钮,结束对该导线的标签标定。同理,可以标注其它导线的标签,如图516所示。注意,在标定导线标签的过程中,相互接通的导线必须标注相同的标签名。图516编辑导线标签窗口34 任务步骤341 步骤一:PROTEUS电路设计,单片机控制四位共阴极数码管动态扫描显示的原理图如图517所示。图517 四位共阴极数码管动态扫描显示的原理图1、选取元器件单片机:AT89C52带公共端的排阻:RESPACK-8四位共阴极数码管:7SEG-MPX4-CC2、放置元器件、放置电源和地、连线、元器件属性设置数码管动态扫描显示的原理图如图517所示,整个电路设计操作都在ISIS平台中进行。(1)带公共端的排阻(RESPACK-8)如图518所示,在本电路中作为P0的上拉电阻,在如图519所示Component Value一栏中可更改阻值,例如本例中将阻值更改为200欧姆。 图518排阻 图519排阻属性框至此,我们便完成了整个电路图的绘制。342 步骤二:源程序设计与目标代码文件生成(1)程序流程图开始声明变量, 数码管编码数组声明子程序数码管显示子程序主程序依此给数码管送a,b,c,d延时1毫秒数码管显示子程序图520 数码管动态扫描的流程图(2)源程序设计#include /52系列单片机头文件#define uchar unsigned char#define uint unsigned intuint x,y;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71; /共阴极数码管编码void display(uchar,uchar,uchar,uchar); /声明子函数void delay(int); /声明子函数void main()while(1)display(1,2,3,4); /主程序始终调用数码管显示子程序void display(uchar a,uchar b,uchar c,uchar d)P2=0xef; P0=tablea; /给第一个数码管送adelay(1); /延时1ms P2=0xdf;P0=tableb; /给第二个数码管送bdelay(1); /延时1msP2=0xbf;P0=tablec; /给第三个数码管送cdelay(1); /延时1msP2=0x7f; P0=tabled; /给第三个数码管送ddelay(1); /延时1msvoid delay(uint z) /延时子函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);(2)生成目标代码文件在KEIL软件中,编译C语言源程序,生成目标代码文件,本例中为dongtai.hex。343 步骤三:PROTEUS仿真加载目标代码文件,双击编辑窗口的AT89C51器件,在弹出属性编辑对话框Program File一栏中单击打开按钮,出现文件浏览对话框,找到dongtai.hex文件,单击“打开”按钮,完成添加文件。单击按钮,启动仿真,仿真运行片段如图521所

温馨提示

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

评论

0/150

提交评论