数码管显示ad转换的电压值数码管显示秒表

上传人:小** 文档编号:89193537 上传时间:2019-05-21 格式:DOC 页数:13 大小:1.20MB
返回 下载 相关 举报
数码管显示ad转换的电压值数码管显示秒表_第1页
第1页 / 共13页
数码管显示ad转换的电压值数码管显示秒表_第2页
第2页 / 共13页
数码管显示ad转换的电压值数码管显示秒表_第3页
第3页 / 共13页
数码管显示ad转换的电压值数码管显示秒表_第4页
第4页 / 共13页
数码管显示ad转换的电压值数码管显示秒表_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《数码管显示ad转换的电压值数码管显示秒表》由会员分享,可在线阅读,更多相关《数码管显示ad转换的电压值数码管显示秒表(13页珍藏版)》请在金锄头文库上搜索。

1、电子科技大学 微电子与固体电子 学院实 验 报 告实验名称 现代电子技术综合实验姓名:詹朋璇学号:2011031030024评分:教师签字电子科技大学教务处制电 子 科 技 大 学实 验 报 告学生姓名:詹朋璇 学号: 2011031030024 指导教师:熊万安实验地点: 211大楼308 实验时间:2014. 6.30 晚一、 实验室名称: 单片机技术综合实验室二、实验项目名称:数码管显示A/D转换的电压值&数码管显示秒表 三、 实验学时: 12四、 实验目的与任务:1、 熟悉系统设计与实现原理2、 掌握KEIL C51的基本使用方法3、 熟悉实验板的应用4、 连接电路,编程调试,实现各部

2、分的功能5、 完成系统软件的编写与调试五、 实验器材1、 PC机一台2、 实验板一块六、 实验原理、步骤及内容试验要求:数码管的第1位显示任务号1,第3位到第5位显示、A/D转换的电压值,可调节电压,第7、8位显示两位学号;数码管第2位和第6位显示“-”号;按按键key1进行切换,此时数码管第1位显示任务号2,第7、8位显示循环倒计时的秒表,范围为08秒到01秒后,再过01秒,秒表又显示为08秒;(单片机系统中利用定时器/计数器计数秒表的值:利用定时器T0延时1秒进行计数。),其它位显示不变,按按键key2时,秒表停止计数,再按按键key2时,秒表继续计数,按key1键,又回到任务1的显示状态

3、。当电压值大于2伏时,按按键不起作用。1、 硬件设计(可打印)2、 各部分硬件原理(可打印) 数码管动态扫描 TLS549ADC工作时序图3、 软件设计 开始 初始化Key1/2是否按下 2按下 1按下 1位显示任务号2,第7、8位显示循环倒计时的秒表,范围为08秒到01秒后,再过01秒,秒表又显示为08秒,其它位显示不变。秒表停止计数Key1/2是否按下 1按下 1按下 2按下继续计数继续任务一开始计数1按下Key1/2是否按下 2按下开始计数思考题: 按键改用外部中断模式,电路如何修改(画示意图)?程序如何修改,写出中断服务程序。答:将KEY1与KEY2键通过跳线分别接到INT0与INT1

4、接口上。开启中断:SysInit() EA=0; /禁止总中断 EX1=1; /使能/INT1 中断 EX0=1; /使能/INT0 中断 EA1; /使能总中断 中断服务程序: void INT0SVC () interrupt 0 if(cnt=17) cnt-; 七、 总结及心得体会1.利用单片机开发板上丰富的资源可以实现一个有一定功能的系统。2.懂得利用中断可以使单片机的效率提高。八、 对本实验过程及方法、手段的改进建议 实在是没有,都挺好的。九、 附录1、 程序/*利用TLC549 A/D转换器实现电压测量与显示*/#include /包含8051的SFR寄存器定义头文件#inclu

5、de /扩展并行接口所需的绝对地址访问库函数#define LED_digXBYTE0x9000/8位数码管显示器的位选输出控制#define LED_seg XBYTE0x8000/8位数码管显示器的段码(字形码)输出控制#define KEY_IN XBYTE0x8000/定义TLC549操作接口sbit ADC_CS = P17;sbit ADC_DATA = P16;sbit ADC_CLK = P15;code unsigned char disp_seg=/显示段码0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7c

6、,0x39,0x5f,0x79,0x71,0x40,0x00,0xff; / 0 1 2 3 4 5 6 7 8 9 a b c d e f - blank,全亮unsigned char DispBuf8;/定义显示缓冲区(由定时中断程序自动扫描)unsigned char key_value,flag;/定义键盘返回值,任务标志unsigned char y1000,y100,y10,y;/定义秒表的个位,十分位,百分位,千分位unsigned short mbiao;/定义秒表计数单元void delay(int ms);/延时大约1msunsigned char ReadAdc(voi

7、d);/读取A/D转换结果void AdcInit(void);/初始化ADC接口void key_scan(void);void main()unsigned char i=0;unsigned char volt, x100, x10, x; TMOD &= 0x0f;TMOD |= 0x10;TH1 = 0xFC;TL1 = 0x66;TR1 = 1;ET1 = 1; TMOD &= 0xf0;TMOD |= 0x01;TH0 = 0xFC;TL0 = 0x66;TR0 = 1;ET0 = 1;EA =1;AdcInit(); for(i=0; i8; i+) DispBufi = 17

8、;/全部8位显示灭 y1000=9; y100=9; y10=9; y=9; mbiao=9999; flag=0; while(1) while(flag =0)volt = ReadAdc();/得到A/D转换结果的数字量(0x000xff)volt = volt * 250/256;/转换成电压值,其中Vr=2.5Vx100 = volt/100;x10 = (volt - x100*100)/10;x = (volt - x100*100)%10;DispBuf0 = 4; DispBuf1 = 2;DispBuf2 = 16;DispBuf3 = x;DispBuf4 = x10;

9、DispBuf5 = x100;DispBuf6 = 16;DispBuf7 = 1; delay(100);if(key_value = 8&volt=200)flag = 1;mbiao=9000;while(key_value = 8);while(flag=1) TR0=1; volt = ReadAdc();volt = volt * 250/256;/转换成电压值,其中Vr=2.5Vx100 = volt/100;x10 = (volt - x100*100)/10;x = (volt - x100*100)%10;DispBuf0 = y1000; DispBuf1 = 0;Di

10、spBuf2 = 16;DispBuf3 = x;DispBuf4 = x10; DispBuf5 = x100;DispBuf6=16;DispBuf7=2; if(key_value = 8&volt=200)flag = 0;while(key_value = 8);else if(key_value = 7&volt=200)flag = 2;while(key_value = 7);while(flag=2)TR0=!TR0; if(key_value = 7)flag = 1;while(key_value = 7); /*函数:T1INTSVC()功能:定时器T1的中断服务函数*

11、/void T1INTSVC() interrupt 3code unsigned char com = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;static unsigned char n = 0;TR1 = 0;TH1 = 0xFC;TL1 = 0x66;TR1 = 1;LED_dig = 0xFF;/暂停显示if(flag=0)if(n=5)LED_seg = (disp_segDispBufn|0x80);elseLED_seg = disp_segDispBufn;/更新扫描数据 if(flag=1)if(n=5)LED_seg = (disp_segDispBufn|0x80);elseif(n=4)LED_seg = ( disp_segDispBufn );/更新扫描数据,elseLED_seg = disp_segDispBufn;/更新扫描数据 if(flag=2)LED_seg = disp_segDispBufn;/更新扫描数据 LED_dig = comn;/重新显示key_scan();n+;n &= 0x07; void delay(int ms)unsigned int i,j;for(i=0; ims; i+)/延时大约1ms (fosc=11.0592MHz)fo

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号