东北石油大学课程设计2013 年7月8日东北石油大学课程设计任务书课程电子技术课程设计题目基于proteus的数字电压表设计与仿真专业自动化姓名学号主要内容:根据设计要求,运用所学的模拟电子技术及电路基础等知识,自行设计一种数字电压表可以准确、直观读数的电子装置,电压表的数字化是将连续的模拟量转换成不连续的离散的数字形式并加以显示。
这有别于传统的以指针与刻度盘进行读数的方法,避免了读数的视差和视觉疲劳。
基本要求:1.利用高效单片机作为核心的测量系统以及灵敏度和精度较高的A/D转换器2.精度高、灵敏度强、性能可靠、电路简单、成本低3.将连续的模拟量转换成不连续的离散的数字形式并加以显示主要参考资料:[1] 罗亚非.凌阳16位单片机[M].北京:北京航空航天大学出版社,2005.[2] 薛峰.微机通讯技术大全[M].北京:电子工业出版社,2002.[3] 张念维.USB总线接口开发指南[M].北京:电子出版社,2002.[4] 周立功.单片机实验与实践[M].北京:北京航空航天大学出版社,2004.[5] 周航慈.单片机应用程序设计技术[M].北京:航空航天大学出版社,2002.[6] 陈朝元,鲁五一.Proteus软件在自动控制系统仿真中的应用[J].系统仿真学报, 2008(1):318-320.[7] 毛谦敏.单片机原理及应用设计系统[M].北京:国防工业出版社,2008:22-26.[8] 康华光.电子技术基础(数字部分) [M]. 5版. 北京:高等教育出版, 2005: 290-293.[9]王伟,刘晓平.高精度数字电压表方案设计[J].仪表技术,2007,(4):36-39.完成期限2013.7.1-2013.7.5指导教师专业负责人2013年7月3 日目录1任务和要求 ..................................... 错误!未定义书签。
1.1 研究背景.................................. 错误!未定义书签。
2 单元电路设计 (2)2.1 LCD的显示原理 (2)2.2 时钟电路 (2)2.3 复位电路 (3)2.4 数据采集模块 (3)2.5 显示电路 (4)3 电路总原理框图设计 (4)4 总体方案设计与流程 (5)4.1 主程序流程图 (5)4.2 显示主程序流程图 (5)4.3 A/D转换子程序流图 (6)4.4 数据处理主程序流程图 (6)4.5 源代码 (7)5 调试结果与分析 (9)5.1 调试结果图 (9)6 设计总结 (11)参考文献 (12)附录 (13)1任务和要求(1)任务:设计并仿真数字电压表(2)数字电压表基本要求:利用高效单片机作为核心的测量系统以及灵敏度和精度较高的A/D转换器精度高、灵敏度强、性能可靠、电路简单、成本低将连续的模拟量转换成不连续的离散的数字形式并加以显示2 单元电路设计2.1 LCD 的显示原理TFT-LCD液晶显示器的结构与TN-LCD液晶显示器基本相同,只不过将TN-LCD上夹层的电极改为FET晶体管,而下夹层改为共通电极。
TFT-LCD液晶显示器的工作原理与TN-LCD却有许多不同之处。
TFT-LCD液晶显示器的显像原理是采用“背透式”照射方式。
当光源照射时,先通过下偏光板向上透出,借助液晶分子来传导光线。
由于上下夹层的电极改成FET电极和共通电极,在FET电极导通时,液晶分子的排列状态同样会发生改变,也通过遮光和透光来达到显示的目的。
但不同的是,由于FET晶体管具有电容效应,能够保持电位状态,先前透光的液晶分子会一直保持这种状态,直到FET电极下一次再加电改变其排列方式为止。
2.2时钟电路XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。
内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。
晶振的频率可以在1MHz-24MHz内选择。
电容取30PF左右。
系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路如图2-1所示。
图2-1时钟电路图复位电路如下图2-2所示,按键没有按下时,RST端接电容下极板是低电平,按键按下时,RST端接在电阻上端变为高电平,达到复位的目的。
图2-2复位电路图2.4数据采集模块通过ADC0809采集数据,输入到单片机内,如图2-3所示:图2-3数据采集模块电路图通过2-4位数码管来显示,如图5所示:图2-4显示电路图2电路总原理框图设计4总体方案设计与流程4.1主程序流程图主程序流程图如图3-1所示:图4-1主程序流程图4.2显示子程序流程图显示子程序流程图如图3-2所示:图4-2显示子程序流程图4.3 A/D转换子程序流程图A/D转换子程序流程图,如图3-3所示:图4-3A/D转换子程序流程图4.4数据处理子程序流程图数据处理子程序流程图,如图4-4所示:图4-4数据处理子程序流程图4.5 源代码LED1 EQU 30H ;初始化定义LED2 EQU 31HLED3 EQU 32H ;存放三个数码管的段码ADC EQU 35H ;存放转换后的数据ST BIT P3.2OE BIT P3.0EOC BIT P3.1 ;定义ADC0809的功能控制引脚ORG 0000HLJMP MAIN ;跳转到主程序执行ORG 0030HMAIN: MOV LED1,#00HMOV LED2,#00HMOV LED3,#00H ;寄存器初始化CLR P3.4SETB P3.5CLR P3.6 ;选择ADC0809的通道2WAIT: CLR STSETB STCLR ST ;在脉冲下降沿启动转换JNB EOC,$ ;等待转换结束SETB OE ;允许输出信号MOV ADC,P1 ;暂存A/D转换结果CLR OE ;关闭输出MOV A,ADC ;将转换结果放入A中,准备个位数据转换MOV B,#50 ;变换个位调整值50送BDIV ABMOV LED1,A ;将变换后的个位值送显示缓冲区LED1MOV A,B ;将变换结果的余数放入A中,准备十分位变换 MOV B,#5 ;变换十分位调整值5送BDIV ABMOV LED2,A ;将变换后的十分位值送LED2MOV LED3,B ;最后的余数作百分位值送LED3LCALL DISP ;调用显示程序AJMP WAITDISP:MOV R1,#LED1 ; 显示子程序CJNE @R1,#5,GO ;@R1=5V?是往下执行,否,则到GOMOV LED2,#0H ;是5V,即最高值,将小数的十分位清零MOV LED3,#0H ;将小数的百分位清零GO:MOV R2,#3 ;显示位数赋初值,用到3位数码管MOV R3,#0FDH ;扫描初值送R3DISP1:MOV P2,#0FFH ;关闭显示,目的防止乱码MOV A,@R1 ;显示值送AMOV DPTR,#TAB ;送表首地址给DPTRMOVC A,@A+DPTR ;查表取段码ORL A,#80H ;将整数的数码管显示小数点GO1:MOV P0,A ;送段码给P0口MOV A,R3MOV P2,A ;送位码给P2口LCALL DELAY ;调用延时MOV R3,ARL A ;改变位码MOV R3,AINC R1 ;改变段码DJNZ R2,DISP1 ;三位是否显示完?否则调到DISP1 RETDELAY:MOV R6,#10 ;延时5S程序:D1:MOV R7,#250DJNZ R7,$DJNZ R6,D1RETTAB: DB 3FH, 06H,5BH,4FH,66H;共阴极数码管显示0-4 ;显示数据表: DB 6DH,7DH,07H,7FH,6FH;显示5-9END5调试结果与分析5.1调试结果图调节滑动变阻器的位置,可以测出相应的电压值,如图4-1所示:图5-1测量电压仿真图该电路可测得电压范围是0-3V,最大电压值如图5-1所示。
该电路测量的误差在约为±0.02V,如图4-2所示。
图5-2最小测量误差图6 设计总结本文给出了利用单片机进行数字电压表设计的一个实例,利用仿真功能强大、仿真元件模型丰富的Proteus软件对数字电压表各个单元电路和整体电路进行了设计和详尽的仿真分析,缩短了设计周期,提高了设计效率,降低了设计成本。
采用KEIL和proteus 软件结合使用进行仿真,取得了较好的仿真效果。
在这次设计过程中,我对电路设计、单片机的使用等都有了新的认识。
通过这次设计学会了Proteus和KEIL软件的使用方法,掌握了从系统的需要、方案的设计、功能模块的划分、原理图的设计和电路图的仿真的设计流程,积累了不少经验。
基于单片机的数字电压表使用性强、结构简单、成本低、外接元件少。
在实际应用工作性能好,测量电压准确,精度高。
系统功能、指标达到了课题的预期要求、系统在硬件设计上充分考虑了可扩展性,经过一定的改造,可以增加功能。
本文设计主要实现了简易数字电压表测量一路电压的功能,详细说明了从原理图的设计、电路图的仿真再到软件的调试。
通过本次设计,我对单片机这门课有了进一步的了解。
无论是在硬件连接方面还是在软件编程方面。
本次设计采用了AT89C51单片机芯片,与以往的单片机相比增加了许多新的功能,使其功能更为完善,应用领域也更为广泛。
设计中还用到了模/数转换芯片ADC0808,以前在学单片机课程时只是对其理论知识有了初步的理解。
通过这次设计,对它的工作原理有了更深的理解。
在调试过程中遇到很多问题,硬件上的理论知识学得不够扎实,对电路的仿真方面也不够熟练。
总之这次电路的设计和仿真,基本上达到了设计的功能要求。
在以后的实践中,我将继续努力学习电路设计方面的理论知识,并理论联系实际,争取在电路设计方面能有所提升。
利用仿真功能强大、仿真元件模型丰富的Proteus软件对数字电压表各个单元电路和整体电路进行了设计和详尽的仿真分析,缩短了设计周期,提高了设计效率,降低了设计成本。
同时, Proteus软件对于电子技术的教学演示和实际设计都具有很大的辅助作用。
通过这次课程设计让我对单片机理论有了更加深入的了解。
我深刻体会到了自己知识的匮乏。
我深深的感觉到自己知识的不足,自己原来所学的东西只是一个表面性的,理论性的,而且是理想化的。
根本不知道在现实中还存在有很多问题。
真正的能将自己的所学知识转化为实际所用才是最大的收获,也就是说真正的能够做到学为所用才是更主要的。
设计一个很简单的电路,所要考虑的问题,要比考试的时候考虑的多的多。
我突然发现,如果总是止步于书本上学习单片机,会觉得很抽象,无法理解也不会有兴趣,但是当理论知识和实践结合到一起之后,就会非常有趣,而且还会印象深刻富有成就感。