基于51单片机的数字电流表设计

合集下载

基于51单片机的数字万用表设计(1)

基于51单片机的数字万用表设计(1)

基于51单片机的数字万用表设计摘要本文介绍一种以AT89S52单片机为核心的智能型数字式多用表,该系统采用AD0808为采样元件,对待测交直流电压信号进行实时采样,数据处理,输出显示,并可以直流电流和电阻,且具有键盘选择测量对象、量程和自动量程转换功能。

关键词:A/D转换器,单片机,模拟开关,自动量程转换第一章前言功能:实现交直流测量,量程自动转换,过电压自动报警。

仿真及编译软件:Proteus,Keil ,Wave主要元件:AT89C52,CD4511,AD0808,7段数码管(8个),蜂鸣器预定性能指标:直流电压:范围-40—+50V,精度20mv,实时无间断测量,4%。

交流信号:测量范围-5—+5V,频率范围:300Hz到100Khz误差5%。

初步方案及进展:小组成员及任务分配:组长:陈文豹硬件电路设计参数确定和调试组员:庞明软件程序设计邓玉龙资料查询并辅助电路设计数字万用表设计分析本设计可以分为直流电压测量电路;交流/直流转换电路;电流/电压转换电路;电阻/电压转换电路;功能控制和数据显示电路这五个的主要电路模块。

在设计直流电压测量电路时,利用反相比例运算电路,加上自己设计的四选一模拟开关,组成了一个直流电压测量电路。

但该电路在实践中存在问题,不能实现预期的结果。

做了适当的修改,改为由电阻、模拟开关和运放组成放大倍数可调的比例电路。

由于无论是指针式万用表还是普通的真有效值或平均值响应的数字万用表,其交流电压档的频率特性都较差,一般只能测量几十赫兹到几千赫兹的低频电压。

我发现对于指针式万用表造成频率特性较差的原因主要是万用表的分压电阻采用精密电阻器,其本身的分布电容较大,在对高频电压信号进行测量时,由于分布电容的容抗大为减少使得测量值明显低于实际电压值,而对于数字万用表除上述原因以外,另一主要原因是受平均值响应,转换器本身频率特性的限制。

但此缺陷可通过采用宽频带运算放大器加以改善。

因此,消除分压电阻器分布电容的影响就可以提高万用表工作频率的上限,大大改善其频率特性。

基于51单片机的电子表设计

基于51单片机的电子表设计

1 绪论电子表是20世纪50年代才开始出现的新型计时器。

最早的一款电子表被称做“摆轮游丝电子表”,它诞生于1955年。

这种手表用电磁摆轮代替发条驱动,以摆轮游丝作为振荡器,微型电池为能源,通过电子线路驱动摆轮工作。

它的走时部分与机械手表完全相同,被称为第一代电子手表。

1960年,美国布洛瓦公司最早开始出售“音叉电子手表”。

这种手表以金属音叉作为振荡器,用电子线路输出脉冲电流,使机械音叉振动。

它比摆轮式电子手表结构简单,走时更精确,被称为第二代电子手表。

1969年,日本精工舍公司推出了世界上最早的石英电子表。

石英电子表的出现,立刻成为了钟表界主流产品,它走时精确,结构简单,轻松地将一、二代电子表,甚至机械表淘汰出局。

石英表又称“水晶振动式电子表”,因为它是利用水晶片的“发振现象”来计时的。

当水晶受到外部的加力电压,就会产生变形和伸缩反应;如果压缩水晶,便会使水晶两端产生电力。

这样的性质在很多结晶体上也可见到,称为“压电效果”。

石英表就是利用周期性持续“发振”的水晶,为我们带来准确的时间。

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。

从上世纪80年代,由当时的4位、8为单片机,发展到现在的32位300M的高速单片机。

1.1 单片机的介绍单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。

概括的讲:一块芯片就成了一台计算机。

基于单片机的高精度交流电流表的设计与实现

基于单片机的高精度交流电流表的设计与实现

湖南涉外经济学院本科毕业论文(设计)题目基于单片机的高精度交流电流表设计与实现作者学院信息科学与工程学院专业学号指导教师二〇一五年五月七日湖南涉外经济学院本科毕业论文(设计)诚信声明本人声明:所呈交的本科毕业论文(设计),是本人在指导老师的指导下,独立开展工作所取得的成果,成果不存在知识产权争议,除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或创作过的作品成果。

对本文工作做出重要贡献的个人和集体均已在文中以明确方式标明。

本人完全意识到本声明的法律结果由本人承担。

本科毕业论文(设计)作者签名:二〇一五年五月七日摘要数字交流电流表随着电子技术的发展,在电子行业所需的测量高精度的交流电流的需要,它逐渐成为一种必不可少的测量仪器。

在电量的测量中,电压,电流和频率是最基本的三个被测量,其中电流量的测量最为常见。

本设计主要是将交流电流转换为直流电流,但是在单片机检测电流的过程中,因为电流是模拟量,并且对于电流量不能直接进行读取,所以需要将电流转化为电压量,在通过A/D 转换进行读取和处理。

单片机对模拟信号的读取是通过A/D转换来实现的,本设计使用了ADC0809芯片,关于此芯片的功能和特点将在本文中做详细介绍。

从电流量到电压量的转换是电流检测电路来实现的。

本设计核心芯片采用的是AT89S51单片机,显示部分采用的是四位数码管显示。

关键词:AT89S51 ;ADC0809;电流测量ABSTRACTAs the development of electronic technique and the high-accuracy requirement o f alternating-current, Digital AC current meter has becomes an essential measuring de vice. In the progress of power measurement, voltage, current and frequency are the ba sic factors which will be measured. The most common factor is current. The device w as designed to convert alternating-current into direct current. But in the progress of de tecting current in SCM, magnitude of current can’t be read directly, as current is analo g quantity. So it need to convert current to voltage, then it can be read and manage by A/D conversion. Analog signal reading of SCM was applied by A/D conversion. The design use ADC0809 chip and you can find the features and function of the chip in th e text. The conversation from current into voltage was applied by detection of current circuit. The core chip adopts AT89S51 SCM and the partial of display adopts four dig ital tube.Keywords:AT89S51;ADC0809;Electric current detection诚信声明 (I)摘要 (II)ABSTRACT (III)前言 (1)第一章系统的整体设计 (2)1.1 系统的硬件组成 (2)1.2 测量电路的工作原理 (2)第二章电流测量系统硬件设计 (4)2.1 AT89S51单片机的结构 (4)2.2 ADC0809的结构 (5)2.3 整流滤波电路的设计 (6)2.4 电流转换电压 (7)2.5 数据采集电路设计 (9)2.6 显示电路的设计 (11)2.7 时钟频率电路设计 (12)2.8 复位电路设计 (12)第三章系统的软件设计 (13)第四章电流测量系统性能分析及调试 (14)第五章系统原理仿真图 (15)5.1 原理图 (16)5.2 仿真图 (16)结论 (17)参考文献 (19)致谢 (20)附录 (21)数字电流表是工业生产过程中经常遇到的过程控制,特别是在科研、教学、工厂等领域中,具有举足重轻的作用,因而研究电流检测控制系统是非常有价值的。

基于51单片机的电子表设计

基于51单片机的电子表设计

1 绪论电子表是20世纪50年代才开始出现的新型计时器。

最早的一款电子表被称做“摆轮游丝电子表”,它诞生于1955年。

这种手表用电磁摆轮代替发条驱动,以摆轮游丝作为振荡器,微型电池为能源,通过电子线路驱动摆轮工作。

它的走时部分与机械手表完全相同,被称为第一代电子手表。

1960年,美国布洛瓦公司最早开始出售“音叉电子手表”。

这种手表以金属音叉作为振荡器,用电子线路输出脉冲电流,使机械音叉振动。

它比摆轮式电子手表结构简单,走时更精确,被称为第二代电子手表。

1969年,日本精工舍公司推出了世界上最早的石英电子表。

石英电子表的出现,立刻成为了钟表界主流产品,它走时精确,结构简单,轻松地将一、二代电子表,甚至机械表淘汰出局。

石英表又称“水晶振动式电子表”,因为它是利用水晶片的“发振现象”来计时的。

当水晶受到外部的加力电压,就会产生变形和伸缩反应;如果压缩水晶,便会使水晶两端产生电力。

这样的性质在很多结晶体上也可见到,称为“压电效果”。

石英表就是利用周期性持续“发振”的水晶,为我们带来准确的时间。

单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。

从上世纪80年代,由当时的4位、8为单片机,发展到现在的32位300M的高速单片机。

1.1 单片机的介绍单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。

概括的讲:一块芯片就成了一台计算机。

基于51单片机的电流测量系统设计[1]

基于51单片机的电流测量系统设计[1]

目录1 前言 (1)2 电流测量系统总体设计 (1)3 电流测量系统硬件设计 (2)3.1 转换电路设计 (2)3.2 数据采集电路设计 (2)3.3 数据显示电路设计 (4)4 电流测量系统子程序设计 (6)4.1 AD转换和数据采集程序设计 (6)4.2 16进制转换为BCD码程序设计 (8)4.3 字形查表程序设计 (10)I2通信程序设计 (11)4.4 C5 电流测量系统性能分析及调试 (13)6 设计心得 (14)参考文献 (15)附录一电流测量系统总体电路设计 (15)附录二电流测量系统设计总程序 (17)1 前言单片机微型计算机简称单片机,又称为微控制器(MCU),它以体积小、功能全、性价比高等诸多优点而独具特色,在各种嵌入式应用领域独占鳌头。

51系列单片机是目前国内应用最广泛的一种8位单片机之一。

作为一位工科信息类专业的学生,在学过51单片机原理之后很有必要用实践来巩固理论知识的学习。

通过理解51单片机原理、焊接51单片机硬件、弄懂与之相匹配的外围连接芯片和电路、熟悉使用Keil uVision3编程器和STC_ISP_V3.1下载器、编程调试实现任务要求、撰写设计报告等一系列工作的完成锻炼实际动手能力。

STC89C51开发板使用通用异步串口、USB供电线;支持串口下载和单步调试;带有ZLG7290B,IIC总线通信的键盘扫描和数码管显示芯片,自带8M晶振,最多可扫描64个键盘和8个数码管;8位LED灯接P1口;TLC549,8位串行A/D;TLC5615,10位串行D/A。

可做中断、定时、串口通信、流水灯、数码显示等单片机基本实验,也可以进行数据采集、制作波形发生器、制作电子钟等多项扩展实验。

本次单片机课程设计我所做的项目是基于单片机的电流采集系统,主要用到A/D转换和数码管显示。

2 电流测量系统总体设计需要采集的数据是直流电流,由于TLC549是逐次比较型8位串行CMOS A/D转换器,只能输入电压信号,故在数据采集之前先要把直流电流信号转化为直流电压信号。

基于51单片机的电子表设计

基于51单片机的电子表设计

目录目录 (1)第1章概述 (1) (1)第2章设计思路及框图 (1) (1) (2)第3章系统的硬件设计 (2) (2) (3) (3) (4) (4)第4章电路设计原理图 (4) (4)第5章程序设计 (5) (5) (7)第6章系统的验证及调试 (43) (43) (43) (44)第7章总结 (45)第8章参考文献 (45)第1章概述单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。

单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广阔领域。

单片机有两种基本结构形式:一种是在通用微型电脑中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。

另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。

本课题讨论的方波发生器的核心是目前应用极为广泛的 51系列单片机。

利用AT89C51单片机定时器完成计时功能,定时器0计时中断程序每隔0.01s中断一次并当作一个计数,设定定时1秒的中断计数初值为0,每中断一次中断计数初值加1,当加到100时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。

为了将时间在6位LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要译码器,数据锁存器等较多硬件,可采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。

由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。

第2章设计思路及框图设计思路针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,第一,熟悉AT89S51单片机,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。

基于51单片机的智能电表设计说明书

基于51单片机的智能电表设计说明书

摘要电表表示着人们日常用电的多少,现在每家每户安装的基本上是带有转盘的那种电表,它只能显示出用电总量。

若想查看上个月的用电量,只能靠电费单计算得来。

现在已经是信息时代了,这种做法很显然跟不上社会潮流。

近几年来,社会提倡低碳、绿色经济和可持续发展,在这种思想的推动下,智能电表将会成为社会的潮流。

智能电表是在传统电表的基础上增加了自动化和智能化的功能,从而进一步提高电网的效率、提高供电的可靠性、电能的质量并且完善用电户的服务,从而更好适应电力市场。

现在智能电网是全球电力部门研究和讨论的热点话题,智能电表是智能电网中的最重要的环节,它支撑着电网的信息化、自动化以及互动化等方面的实现。

微处理器是智能电表的最主要的核心器件。

它可以储存海量的检测数据,同时对测量出的结果进行分析、判断和处理。

本次设计是运用单片机STC89C52为微处理器、CS5460A 芯片进行电能测量和计算、X5045芯片作为外部存储、数码管进行显示进行设计的。

关键词智能电表;自动化;C51单片机;CS5460AAbstractElectricity meter means the number of people everyday electricity, and now every household is basically equipped with the kind of meter, which can only show the total amount of electricity. To see the power consumption last month, only by electricity single calculated. It is now the information age, and this approach is clearly not social trends.In recent years, the social promotion of low-carbon, green economy and sustainable development, in the promotion of this idea, smart meter will become the trend of the society. Smart meter is automatic and intelligent function is added on the basis of traditional meter, energy efficiency so as to further improve the power grid, improve power supply reliability, power quality and perfect service of the users, in order to better adapt to the power market. Now the smart grid is a hot topic in the global power sector research and discussion, the smart meter is the most important part of smart grid, which support the realization of grid informationization, automation and interaction of.The microprocessor is the most important core device of the smart meter.. It can store vast amounts of detection data and analyze, judge and process the results of the measurement.. This design is the use of single-chip microcomputer STC89C52 and CS5460A chip for power measurement and calculation, X5045 chip as the external storage, digital tube display design.Key words Smart meter Automation 51 MCU S5460A目录摘要 (I)Abstract (II)第1章绪论 (1)1.1智能电表的概念 (1)1.2智能电表的发展背景 (1)1.3智能电表的结构 (2)1.4智能电表的主要特点 (2)第2章主要芯片的介绍 (4)2.1微控制器STC89C51单片机 (4)2.1.1 简介 (4)2.1.2 主要特性 (4)2.1.3 引脚功能 (4)2.2电能计量芯片CS5460A (6)2.2.1 简介 (6)2.2.2 主要特征 (7)2.2.3 引脚功能 (7)2.3外部寄存器X5045 (8)2.3.1 简介 (8)2.3.2 主要特性 (8)2.3.3 引脚功能 (9)2.4时钟芯片DS1302 (9)2.4.1 简介 (9)2.4.2 主要特性 (9)2.4.3 引脚功能 (10)2.574HC138译码器 (10)2.5.1 简介 (10)2.5.2 主要特性 (10)2.5.3 真值表 (10)2.6LED数码管 (11)第3章总体设计方案 (11)3.1设计功能要求 (12)3.2智能电表的总体方案设计 (12)第4章硬件部分的组成 (13)4.1电压电流采样模块的设计 (14)4.1.1 电压调理电路 (14)4.1.2 电流调理电路 (15)4.2CS5460A的外部电路 (15)4.3数码管连接电路 (16)4.4组合键盘连接电路 (16)4.5EEPROM连接电路 (18)4.6时钟芯片DS1302连接电路 (18)第5章软件部分的设计 (19)5.1主程序流程 (19)5.2CS5460数据交换方法 (20)5.3时钟芯片的读写流程 (21)5.4外部寄存芯片的读写流程 (21)5.5按键扫描流程 (22)5.6数码管显示功能的实现 (23)结论 (24)参考文献 (25)致谢 (26)附录 (27)第1章绪论1.1 智能电表的概念智能电表它是科技时代的新产物,它能够进行测量、数据处理,因此测量单元、数据处理单元是它的重要组成部分。

基于单片机的数字电流表的设计

基于单片机的数字电流表的设计

基于单片机的数字电流表的设计湖南文理学院课程设计报告课程名称:专业综合课程设计专业班级:自动化12101班学号38号学生姓名:指导教师完成时间:2015年06 月05日报告成绩:评阅意见:评阅教师日期基于单片机的电容电流监测装置设计一、设计要求采用MCS-51系列单片机设计一个可以监测量直流和交流的电流的装置,它采用基本量程时电流为2安,此时就是满量程。

量程的改变取决于负反馈电路的电容,题目为基于单片机的电容电流监测装置设计。

用2行16个字的LCD1602显示测量结果。

二、设计意义目前,随着电子工业的发展,电子元器件急剧增加,电子元器件的适用范围也逐渐广泛起来,在应用中我们常常要测定电流的大小。

在电子产品的生产和维修中,电流测量这一环节至关重要,一个好的电子产品应具备一定规格年限的使用寿命。

因此在生产这一环节中,对其产品的检测至关重要,而检测电子产品是否符合出产要求的关键在于检测其内部核心的电路,电路的好坏决定了电子产品的好与坏,而电容在基本的电子产品的集成电路部分有着其不可替代的作用。

同样,在维修人员在对电子产品的维修中,电路的检测是最基本的,有时需要检测电路中各个部件是否工作正常,电流器是否工作正常。

因此,设计可靠,安全,便捷的电流测试仪具有极大的现实必要性。

三、系统总体方案本设计选择基于AT89C51单片机和ICL7135芯片构成的多谐振荡电路的电流测量方法。

这种电容测量方法主要是通过一块ICL7135芯片来测量电流,让ICL7135芯片工作在直接反馈无稳态的状态下单片机及其扩展的外部电路先做成一个理想电压表[3],用G表示。

于通常所说的电流表是指灵敏电流计其量程太小,不能直接测量电流,仅用于检测有无电流和电流的方向,所以要想得到一个有多量程或量程较大的电流表需要将一个理想电压表改装而成。

本设计是用一个内阻视为无穷大的电压表并联分流电阻而成的数字电流表。

待测电流I 随搬动开关K的位置而流过c1或c2,因而本电流表的两个量程就取决于G的满量程电压和C1、C2的阻值,记G的满量程电压为Ug,根据Q=CU,若Ug 和C已知则Ig就是电流表的满量程电流。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

湖南科技大学单片机课程设计题目基干单片机的数字电流耒设辻姓名学院专业学号指导教师成绩二0—一年五月二十六日单片机课程设计任务书一、设计题目: 基于单片机的数字电流表设计二、设计要求:1、数字电流表在平常工作环境中能良好工作2、能测0——1000mA 电流,至少能达1%的精度3、要求掌握1/V信号转换,A/D转换器的使用与数据采集系统的设计4、电流表能数字显示,且由单片机处理采集数据并驱动LED 显示摘要本设计就是通过采样电阻及信号放大电路将待测的电流信号I 转换成0—1V 电压信号, 由A/D 转换器采集电压信号,并将电压转换的数字信号传输给单片机,由单片机完成对采样信号的处理、分析,最后输出信号驱动LED 显示器,显示被测的电压值。

目录一、功能要求 (1)二、原理及方案论证...、、 (2)三、系统硬件电路的设计 (3)四、系统程序的设计 (4)五、调试及设计结果…………………………………………………………… 、 5 参考文献…………………………………………………………………… 、、、6、功能要求1、数字电流表在平常工作环境中能良好工作2、能测0―― 1000mA电流,至少能达1%的精度3、要求掌握I/V信号转换,A/D转换器的使用与数据采集系统的设计4、电流表能数字显示,且由单片机处理采集数据并驱动LED显示二、原理及方案论证1、数字电流表工作原理1、1采样电阻网络原理如下图所示,输入被测电流通过量程转换开关S1―― S4,流经采样电阻R1――R4,由欧姆定律可知:U=I*R,因而转换输出电压为0V ------ 0、1V的电压,输出电压可再经后续放大电路放大处理。

1、2高共模抑制比放大电路如下图,由双运放组成的同相输入高共模抑制比放大电路,其闭环输出可表示为:共模输入为 0,可令R1/R2二R4/R3,此时电路的差动闭环增益为 Kd=1+R1/R2, U0=Kd(U1-U2);下图即 Kd=11,U0=11(U1-U2);ADC0832就是美国国家半导体公司生产的一种 8位分辨 率、双通道 A/D 转换芯片。

由于它体积小,兼容性强,性价比高 而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。

ADC0832具有以下特点:♦ 8位分辨率; ♦双通道A/D 转换;♦ 输入输出电平与 TTL/CMOS 相兼容;1、3通用A/D 转换器为U 0 (1 使R2*R4 R1*R3 R2*R4R1*R3)(U1 U2) (U1 U2(22R 1 ^2♦5V电源供电时输入电压在0~5V之间;♦工作频率为250KHZ,转换时间为32卩S;♦一般功耗仅为15mW;♦8P、14P—DIP(双列直插)、PICC多种封装;♦商用级芯片温宽为0° C to +70° C,工业级芯片温宽为-40 C to +85° C; 芯片接口说明Vcc/REF 电源输入及参考电压输入(复用)。

1、4 AT89C52单片机AT89C52就是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)与256 bytes 的随机存取数据存储器(RAM ),器件采用ATMEL 公司的高密度、非易失性存储技术生产,与标准MCS-51 指令系统及8052产品引脚兼容,片内置通用8位 央处理器(CPU) 与Flash 存储单元,功能强大AT89C52单片机适合于许多较为复 杂控制应用场合。

主要性能参数AT89C52提供以下标准功能:8k 字节Flash 闪速存储器,256 字节内部RAM,32个I /O 口线,3个16位定时/计数器,一个 6向量两级 断结构,一个全双工串行通信口,片内振荡器及时钟电 路。

同时,AT89C52可降至0Hz 的静态逻辑操作,并支持两种软件 可选的节电工作模式。

空闲方式停止 CPU 的工作,但允许RAM, 定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存 RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到 下一个硬件复位。

2、方案论证本设计采用精密采样电阻(9欧、0、9欧、0、09欧、0、01欧),•与MCS-51产品指令与引脚完全兼容 • 8k 字节可 擦写Flash 闪速存储器 • 1000次擦写周期•全静态操作:0Hz — 24MHz •三级加密程序存储器 • 256 X 8字节内部RAM • 32个可编程I /O 口线 • 3个16位定时/计数器 • 8个断源•可编程串行UART 通道 •低功耗空闲与掉电模式功能特性概述 *n J53 9 LD 11 1 % v-w14 15 16 17 IS 19 20PI.0 ActP1 w”P1.2 P0.1C4DJ) ?13 ?0.2^W2) P1.4 PO,兀P1J P1.6?].'P0 6(-4D6)ItST氏工m門.丁EAV EFj.lffTXD'ALE: PSENP3.4(T0) P2.6(AU) PS.? fir P2?述阿?2.S[A11)XT.iJL :Pl IMP2.0(AS)电阻精度可达0、1%可忽略;八位A/D精度为5/256(V);因而除去放大电路增益误差及线性误差,电流表精度约为(5/256)/11约为1、7mA;对于1000mA的总量程精度可达0、1%,因而方案可达设计要求。

三、系统硬件电路的设计■・U ' I 管I B I ■1系统仿真接线简图本设计中用到AT89C52单片机、八位ADC AD0832发光二极管、六位八段显示数码管LED,通用运放UA741、PNP管及必要的电阻、电容元件等。

系统原理方框图电路仿真简图如上图。

数字电游表设计设计者’阳军军系统方框图四、系统程序设计 程序流程图如下:鱼翟刃採幵关高共嗅押制比放大电路*精密采样电至应踣系统程序流程图 C 语言程序如下:#include<reg52、h>〃包含相应的头文件#include<intrins、h>#include<math、h>#define uchar unsigned char#define uint unsigned int ucharaxs[6],azs[6],ac[10],dc[6]; void ITOAZ(int num,uchar *p); void ITOAX(int num,uchar *p); float U,U1;sbit CS=P3八4;//定义数模转换器硬件对应引脚sbit CLK=P3A5;sbit DO=P3A6;sbit DI=P3A7;读写AD0832 函数**********************************************************************************unsigned char ReadADC(unsigned char channel){unsigned char j;unsigned char Temp=0;DI=1;_nop_();_nop_();CS=O;〃拉低CS端_nop_();_nop_();CLK=1;// 拉高CLK 端_nop_();_nop_();CLK=0;// 拉低CLK 端,形成下降沿1 _nop_();_nop_();CLK=1;// 拉高CLK 端DI=(channel>>1)&0x1;_nop_();_nop_();CLK=0;// 拉低CLK 端,形成下降沿2 _nop_();_nop_();CLK=1;// 拉高CLK 端DI=channel&0x1;_nop_();_nop_();CLK=0;// 拉低CLK 端,形成下降沿3DI=1;// 控制命令结束_nop_();_nop_();for(j=0;j<8;j++) //处理读入8 位数据{CLK=0;_nop_();Temp=(Temp<<1)|DO;_nop_();CLK=1;}CS=1;CLK=0;DI=1;return(Temp); //返回转换值}/************************************************/****************************************************************** ******************/************************************************///延时函数void delay(uint n){uint a;uchar i;for(a=n;a>0;a--)for(i=0;i<2;i++);}//将浮点数转成函数void ITOC(float f,uchar *c){float zs,xs;int bxs,bzs,i,k=0;xs=modf(f,&zs); // 分离整数部分与小数部分函数if(P3==0XFE)bxs=(int)((xs*100)+0 、5);elsebxs=(int)((xs*100)+0 、5); //小数点后两位有效数字ITOAX(bxs,axs); //把小数部分转换成字符串存入axs 数组bzs=(int)zs; // 把整数部分转成整型ITOAZ(bzs,azs); //把整数部分转换成字符串存入azs 数组for (i=0;axs[i]!='s';i++) //把最终结果存入c 数组c[i]=axs[i];c[i]=' 、';for(k=0,i=i+1;azs[k]!='s';k++,i++)c[i]=azs[k];if(U<0) c[i]='-';else c[i]=0xff;c[i+1]='s';} //将整型数转换成对应的void ITOAZ(int num,uchar *p){uchar w,i=0;do{w=num%10; // 将整型数各位分离,并转换成对应的字符存入a 中p[i]=w;num=num/10;i++;}while(num);p[i]='s';}//将小数数部分转换成对应的void ITOAX(int num,uchar *p){uchar w,i=0;do{w=num%10; // 将整型数各位分离,并转换成对应的字符存入 a 中p[i]=w;num=num/10;i++;}while(num);while(i<2){p[i]=0;i++;}p[i]='s';w=p[i];}//显示译码函数void decode(uchar *n,uchar *dn){uchar i;for(i=0; n[i]!='s';i++)¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥』/ ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥」/ ¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥」S=[!]up^eejqJ00x0=[!]u P4l nejepJ>|eejqJot7XO=[!]up:1-1eseoJ>jeejqJ08x0=[!]u P -9P eseo^eejqJjz x O=[!]u P :8 sseoJ>jeejq70x0=[!]u P :上sseoJ>jeejqjQZ x O=[!]u P :9 sseoJ>jeejqjQ9xo=[!]up :g eseoJ>jeejqJ99xo=[!]up :p eseo^eejqJjt7X0=[!]up £ eseo^eejqJj9xo=[!]up :6 eseoJ>jeejqJggxo=[!]up :乙eseo*aiq:9Oxo=[!]up j eseo^eejqJd£xo=[!]up :o eseo}([!]u )U6!MS} /************************************************void main(void){uchar i,j,P2_;float A;while(1){U=ReadADC(0)/256、0;switch(P1){case 0xfe:A=U*10*1 、025;break; case 0xfd:A=U*100/1 、09;break; case 0xfb: A=U*1000;break;default: A=0 、0;break;}A=10*A;ITOC(A,ac);decode(ac,dc);P2=0XFf;P2_=0Xfe;for(j=0;dc[j]!='s';j++){P2=0XFf;P0=dc[j];P2=P2_; delay(150); P2_=_crol_(P2_,1); /*P2_«=1;*/ }} }/************************************************ /************************************************五、调试及设计结果1、 PROTUSE 系统仿真结果系统仿真能正常运行,达设计所有指标,仿真部分电路如下PROTUSE 系统仿真效果图2、实际硬件制作结果31r>37TF TTT E7TT陀MBP2">.U啊和m«i r n PS^r I i~u>rn Pl F PH 数字电流表设讥n I z 1 A n弗讥叭n<根据电路图自制电路,测试结果:能正常测量10―― 1000mA电流,达大部分设计要求。

相关文档
最新文档