简易的数码管显示系统实验报告

上传人:飞*** 文档编号:94358490 上传时间:2022-05-22 格式:DOCX 页数:7 大小:268.78KB
返回 下载 相关 举报
简易的数码管显示系统实验报告_第1页
第1页 / 共7页
简易的数码管显示系统实验报告_第2页
第2页 / 共7页
简易的数码管显示系统实验报告_第3页
第3页 / 共7页
点击查看更多>>
资源描述
HEFEI UNIVERSITY工具软件应用课程设计BACHELOR DISS ERTATION题目:简易数码管显示系统系别:电子信息与电气工程系学号:专业(班级):参与人姓名:完成时间:简易数码管显示系统一.课程设计目标及内容利用单片机设计一个简易的数码管显示系统,实现 0-59秒自动计数要求:可使用用软件延时或定时中断的方法实现 0-59秒自动计数。使用6位数码管的第1、第2位显示当前数值。二.总体设计方案根据设计要求,要想只用数码管的两位显示,必然要先位选,再段选, 最后到59后还要重新开始,所以这里应该有个置零,又因为要循环,添加 一个死循环即可。三.硬件设计及分析数码管是单片机控制系统中最常见的外部元件,常用来指示系统采集值、系统存储值或运行的结果。数码管是一种半导体发光器件,其基本单元是发光二极管数码管按段数分为7段数码管和8段数码管,8段数码管比7段数码管多一个发光二极管单位;按能显示多少个“ 8”可分为1位、2位、4位等数 码管;按发光二极管单位元连接方式分为共阳极数码管和共阴极数码管,其 中共阴级输入高电平有效,共阳级输入低电平有效。数码管中的8个发光管称为段,分别是a段、 b段、c段、d段、e段、f段、g段、h段,其中h 段是小数点(如右图)。数码管的数码与显示段位 对应关系如下表。值数显示的段位值数显示的段位0a、b、c、d、e、f5a、c、d、f、g1b、c6a、c、d、e、f、g2a、 b、 d、 e、 g7a、b、c3a、b、c、d、g8a、b、c、d、e、f、g4b、c、f、g9a、b、c、f、g根据实验要求,所需元件清单如下:元件名称所属类所属子类7SEG-MPX6-CC-BLUEOptoelectronics7-SegmentAT89C51Microprocessor ICs8051 Family电路图如下图:POdi 口口FB YAD-3FLiBAg rg.TrpTPZOAB 11M.l12 口口 。二 ,P2 3HL2PZ 玖 伊工靠加姓F3JIWIB FJ.iriAP rTVTn 手 nnEU rs-arrn PJX-TP3dTJlE P3 TiffFllNRm 年手一穿座 f一T飞四.软件设计及分析要想只用6位数码管的两位显示0-59循环,首先要选定位置,指定哪一 块显示十位数或个位数,即位选。然后在该位置上显示数字,这里需要个for 循环,让数字递增,假定数字设为 n,那么n/10就是十位数字,n%10就是 个位数字,先显示个位数字,然后再显示十位数字,由于十位数不经常变动, 所以选取适当的延迟时间,利用人眼的视觉延迟效果即可完成0-59的演示,循环结束后,令n置零,在最外面加个死循环,即可完成 0-59循环演示。 简易设计框图如下:五.调试结果及说明将Keil中生成的hex文件添加至Proteus文件中,准备好后,进行Proteus与Keil联合仿真,仿真结果如下:观察后基本满足实验要求,但是刚开始时delay函数延时时间调的较长, 会出现如下情况:查阅资料后我才发现,原来0-59显示实际上是显示个位上的数字然后再 显示是十位上的数字,0-0、1-0、2-0同时将两个数字显示在数码管 上并非真正同时显示在数码管上,而是两个数码管依次显示,当然频率很高 因为视觉暂留,从而让人误认为两个数字是同时显示的。六.项目总结通过本次项目,我了解了数码管的工作原理,对Proteus 和 Keil 的使用更加熟练,同时也让我认识了“视觉暂留”概念,在这次实验基础上,我们小组又做出了 0-999 的循环显示, 不仅很有成就感, 还增强了团队协作能力。七参考文献.51 单片机原理及应用基于基丁Keil C 与Proteus 【 M】 .北京:北京航天航空大学出版社,附:/* 必要的变量定义*/#include#define uint unsigned int#define uchar unsigned charUcharcodetable=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0xee,0x3e,0x9c,0x7a,0x9e,0x8e;/ 共阴极数码管编码表uchar code address2=0xfe,0xfd;/ 数码管位选void delay(uint);/* 主程序 */void main()uchar m=0;while(1) / 死循环for(;m60;m+)P2=address0; / 位选(个位数)P1=tablem%10;/ 个位数字delay(5000);P2=address1;/ 位选(十位数)P1=tablem/10; / 十位数字delay(5000);m=0;/ 置零,重新开始/* 延时子程序*/void delay(uint m)while(m-);
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!