




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 数字电流表设计姓名: 学号: 班级: 指导教师: 完成时间: 年 月 号目 录摘要1关键词1一引言 1 1.1设计要求 1 1.2 课程设计目的1二数字电流表硬件设计 4 2.1系统硬件框图 4 2.2 电流表工作原理 4 2.3 LED动态显示器接口及显示方式4 2.4 ATmega16单片机7三程序流程图及相应模块9四课程设计总结 13五成员分工及工作情况 13六参考文献14七附录(程序源代码及注释)15摘要 本次课程设计是基于ATmega16单片机开发平台和ADC模数转换器基础上实现的一种数字电流表系统。该系统以ATmega16单片机作为系统核心 ,通过数字电流表的设计方案,掌握了C语
2、言的编程方法, 并熟练的运用ATmega16单片机定时器以及ADC0808模/数转换芯片将模拟电流量转变为数字量然后在液晶显示屏上直接显示数字的电流值。关键词 ATmega16单片机,A/D模数转换,数码管显示 1.1设计要求 完成一台数字电流表 采用ATmega16作为主控芯片,并用数码管显示结果电流表量程为0A1A测量结果用四位数字显示,如 0123测量结果超限(大于等于1A)时,数码管显示EEEE 1.2 课程设计目的 (1)通过本次课程设计加深对单片机课程的全面认识和掌握。 (2)掌握了通用I/O口输出结构的设置和数码管显示器的应用。 (3) 通过完成一个包括电路设计和程序开发的完整过
3、程,使自身了解开发单片机应用系统的全过程,强化巩固所学知识,为以后的学习和工作打下基础。 (4)进一步熟悉和掌握单片机的结构和工作原理。 (5)锻炼团队分工合作与协调能力。 (6) 通过这次课程设计,掌握以单片机为核心的电路设计的基本方法和技术。 (7)通过实际程序的设计和调试,逐步掌握模块化程序设计的方法和调试技术。2.1系统硬件框图 2.2 电流表工作原理 由于通常所说的电流表是指灵敏电流计,其量程太小不能直接测量电流。所以要想得到一个量程较大的电流表需要将一个理想电压表改装而成。用一个内阻无穷大的电压表并联分流电阻,待测电流流过电阻R,R和U即为已知,则根据欧姆定律 U=I R,I就是电
4、流表测得的电流值,电压值通过AD转换器将模拟电压信号转换为数字电压信号,传送到ATmega16中,单片机输出到LED数码管显示读数。2.3 LED动态显示器接口及显示方式 单片机中通常使用7段LED构成字型“8”,另外,还有一个小数点发光二极管,以显示数字、符号及小数点。这种显示器有共阴极和共阳极两种,如图。发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起称为共阴极显示器。一位显示器由8个发光二极管组成,其中,7个发光二极管构成字型8的各个笔画,另一个小数点为dp发光二极管。当在某段发光二极管上施加一定的正向电压时,该段笔划即亮;不加电压则暗。为了保护各段LED不被破坏,需外加限流电阻
5、。 以共阴极LED为例,如图,各LED公共阴极K0接地。若向各控制端a、bg、dp顺次送入11100001信号,则该显示7字型。在多位LED显示时,为了简化电路,降低成本,将所有位的段选线并联在一起,由一个8位 I/O口控制。而共阴(共阳)极公共端K分别由相应的I/O线控制,实现各位的分时选通。如14图所示为5位共阴极动态显示接口电路。其一个显示正负,其余四个显示电流值。 五位LED动态显示接口电路 由于4位LED所有段选线皆由一个8位控制,因此,在每一瞬间,4位LED会显示相同的字符。要想每位显示不同的字符,就必须采用扫描方法轮流点亮各位LED,即在每一瞬间只使某一位显示字符。在此瞬间,段选
6、控制口输出相应字符段选码,而位选则控制口在该显示位送入选通电平为共阴,故应送低电平。以保证该位应显示相应字符。如图为ATmega16控制的4位共阴极LED动态显示接口电路。 LED结构图 八段LED数码管字符型字段编码表2.4 ATmega16单片机 ATmega16系列单片机 VCC 电源正GND 电源地端口A(PA7.PA0) 端口A 做为A/D 转换器的模拟输入端。端口A 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口A 处
7、于高阻状态。 端口B(PB7.PB0) 端口B 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口B 处于高阻状态。端口B 也可以用做其他不同的特殊功能. 端口C(PC7.PC0) 端口C 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口C 处于高阻状态。如果JTAG接口使
8、能,即使复位出现引脚 PC5(TDI)、 PC3(TMS)与 PC2(TCK)的上拉电阻被激活。端口C 也可以用做其他不同的特殊功能. 端口D(PD7.PD0) 端口D 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D 处于高阻状态。端口D 也可以用做其他不同的特殊功能. RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复位。门限时间见P36Table 15。持续时间小于门限间的脉冲不能保证可靠复位。 XTA
9、L1 反向振荡放大器与片内时钟操作电路的输入端。 XTAL2 反向振荡放大器的输出端。 AVCC AVCC是端口A与A/D转换器的电源。不使用ADC时,该引脚应直接与VCC连接。使用ADC时应通过一个低通滤波器与VCC 连接。AREF A/D 的模拟基准输入引脚。 3、 主程序及相应模块主程序代码void main(void)DDRA=0x0f;PORTA=0x0f;DDRC=0xff;PORTC=0x00;TCCR0=0x0B;TCNT0=0x00;OCR0=0x7C;TIMSK=0x02;ADMUX=0x47;SFIOR&=0x1F;SFIOR|=0x60;DSCSRA=0xAD;
10、#asm("sei") /使能全局中断while(1)if(time_2ms_ok)display();time_2ms_ok=0;主流程图子程序代码unsigned char i;for(i=0;i<=3;i+)dis_buffi=adc%10;adc/=10;子程序流程图 四、课设总结这是我们学习单片机半年以来第一次自己学着去编程动手去调试。在开始时有着迷茫与恐慌,感觉根本无从下手。因为自己对单片机的硬件设计,软件设计掌握的深度不够,但通过此次课程设计,却改变了很多,首先对于硬件电路的工作原理有了进一步的学习,同样就有了进一步的认识;其次软件方面,在程序的设计,程
11、序的调试方面都学到了很多东西,这是第一次编写单片机的大程序,很有成就感尽管程序与流程图还有欠缺的地方。在一个好的氛围里才能踏下心来做东西,在这几天课设的时间里,实验室的氛围和同学们的热情对我的影响很大,大家一起努力,这也是我们能完成课设的动力。另外在编程中出现问题时,一定要戒骄戒躁,脚踏实地,认真看书,仔细分析,仔细调试,就一定会发现错误,克服困难,我们也是这么做的,这在课设中十分重要。 单片机在现实生活中有很大的的实用价值,学好这们课程非常关键,可以让自己的知识储备更加丰富,而这次宝贵的课程设计活动正好提供了一个很好的机会加深对单片机知识的掌握。通过这次课程设计,我对protel99以及av
12、r stdio 4等软件的使用掌握的更加熟练,对C语言程序有了跟深层次的理解。 最后感谢我们的老师,老师幽默的语言与互动使课堂不在枯燥,老师那严谨的教学态度与循循善诱的教导和不拘一格的思路给予我无尽的启迪引导我们,同时也是我们的好榜样。五、成员分工及工作情况 1、 黄威灿:负责AD转换;2、 齐超:主要负责AD中断和定时器中断;3、 张恒秋:主要负责数码管显示。六、参考文献1AVR单片机嵌入式系统原理与应用实践M,北京:北京航空航天大学出版社,2007.10.2 黄智伟.全国大学生电子设计竞赛系统设计M,北京:北京航空航天大学出版社,2006.6.3 李广弟,朱月秀,王秀山.单片机基础M,北京
13、:北京航空航天大学出版社,2001.7.4 赵曙光,郭万有,杨颂华.可编程逻辑器件原理开发与应用M,西安:西安电子科技大学, 2000.5 谭浩强.C语言程序设计(第二版)M,北京:清华大学出版社,1991.6手把手教你学AVR单片机C程序设计M,北京:北京航空航天大学出版社,2009.4.7、 附录# include <avr/io.h>#define uchar unsigned char#define uint unsigned intflash unsigned char ledshow11=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0
14、x7F,0x5F,0x79;flash unsigned char position6=0xfe,0xfd,0xfb,0xf7;/数码管位选unsigned char dis_buff4=0,0,0,0,posit;bit time_2ms_ok;void adc_to_disbuffer(unsigned int adc)unsigned char i;for(i=0;i<=3;i+)dis_buffi=adc%10;adc/=10;/AD转换中断interrupt TIM0_COMP void timer0_comp_isr(void)time_2ms_ok=1;/定时器中断inte
15、rruptADC_INTvoid adc_isr(void)unsigned int adc_data,adc_i;adc_data =ADCW;adc_i=(unsigned long)adc_data*1000/1024;/换算成电流值adc_to_disbuffer(adc_v);/AD转换/数码管显示void display(void)if(adc_i>=1)PORTA|=0x0f;PORTC=ledshow11;elsePORTA|=0x0f;PORTC=ledshowdis_buffposit;if(posit=3)PORTC|=0x80;PORTA&=positionposit;if(+posit>=4)p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 武装押运合同安全协议模板
- 殡葬服务一条龙合同协议
- 商场地推合作合同协议
- 歌手演出经纪合同协议
- 商品验收合同协议
- 槟榔园采摘合同协议
- 毽球场建设合同协议
- 2025全球合同范本
- 2025型集装箱采购合同
- 商品过户合同协议
- 工业数字孪生测试要求
- 2025统编版语文六年级下册第二单元解析+任务目标+大单元教学设计
- 灾后救援与重建
- 上海第二工业大学《高等数学B(上)》2023-2024学年第二学期期末试卷
- 2025年黑龙江齐齐哈尔市网络舆情中心招聘5人历年高频重点提升(共500题)附带答案详解
- 2024-2030年全球及中国雅思练习和考试平台行业发展规模及未来前景预测报告
- 2025深圳劳动合同下载
- 《风电施工流程》课件
- 水处理设备日常维护方案
- 2024年上海市交大附中高三语文期中考试作文题目解析及范文:松弛感
- 【碳足迹报告】新乡市锦源化工对位脂产品碳足迹报告
评论
0/150
提交评论