基于单片机的全数字电压、电流表的设计内容摘要:
lash 存储单元,功能强大的微型计算机的 AT89S52 可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S52 具有如下特点: 40 个引脚, 8k Bytes Flash 片内程序存储器, 256 bytes的随机存取数据存储器( RAM), 32 个外部双向输入 /输出( I/O)口, 5 个中断优先级 2 层中断嵌套中断, 2个 16位可编程定时计数器 ,2个全双工串行通信口,看门狗( WDT)电路,片内时钟振荡器。 此外, AT89S52 设计和配置了振荡频率可为 0Hz并可通过软件设置省电模式。 空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式 冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、 TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。 ( 2)量程自动转换模块 方案一、采用软件编程技术。 特点:硬件简单,但编程复杂。 方案二、采用纯硬件搭建技术。 利用一些廉价的元器件组成量程自动转换电路,特点:所用硬件多,但成本低,且不需要复杂的软件编程及调试。 电子信息与电气工程系 2020 9 考虑到本次设计所需硬件较少,且所用元器件容易购买,成本低。 故采用方案二 ( 3) A/D 转换模块 方案一、采用 双积分 A/D 转换技术。 特点是: 精度高, 抗干扰能力强。 但高精度的双积分 A/D 芯片,价格较贵, 增加了单片机系统的成本。 方案二、采用比较型 A/D 转换器( ADC1210)。 特点是:测量速度快(最高可达每秒 100 万次以上),电路比较简单,但抗干扰能力差。 方案 三 、采用逐次逼近型 A/D 转换器( ADC0809)。 特点是:价格便宜,容易购买,但精度较低。 ADC0809 是 8 位逐次逼近型 A/D 转换器。 带 8 个模拟量输入通道,有通道地址译码锁存器。 考虑到成本低,因而选用方案三。 ( 4)显示模块 方案一、采用 LCD 显示。 特点:显示内容丰富, 采用数字式接口,体积小、重 量轻,功率消耗小, 但编程复杂,且成本相对 LED 较高。 方案二、采用 LED 并行动态显示。 即一位一位地轮流点亮各位显示器。 对每一位显示器而言,每隔一段时间点亮一次。 其硬件电路简单,但同样的功率驱动下,显示亮度不及静态显示,且占用 I/O 口较多。 方案三、采用 LED 串行静态显示。 即显示某一字符时,相应的发光二极管恒定导 通或截止,这种方式每一个显示位都需要一个 8 位输出口控制,占用硬件较多,但仅占用控制器串口的两个 I/O 口,软件实现简单,显示亮度高,成本低。 LED 数码管显示器由 7 个发光二极管组成,因此也称之为 7 段 LED 显示器,因为LED 数码管显示成本较低,外加一个驱动芯片,所需单片机接口较少,且程序容易实现。 故考虑到本次设计的需要,只要显示 4 位电压、电流值,采用方案三,使用 4个共阳数码管及 4个驱动芯片 74LS164。 ( 5)通信模块 方案一、采用并行通信方式。 所传送的各位同时发送或接收。 一个并行数据占多少位二进制数,就要多少根传输线,这种方式的特点:通信速度快,但传输线多,价格较贵,适合近距离传输。 方案二、采用串行通信方式。 所传送的数据的各位按顺序一位一位地发送或接收。 这种方式的特点:由于它每次只能传送一位,所 以传送速度较慢。 但它电子信息与电气工程系 2020 10 仅需要一到两根传输线,故传输数据时比较经济,且所占 I/O 口少。 本次设计是单片机与 PC机的通信,要采用 MAX232 电平转换电路,可将单片机的TTL电平转换为 PC机的串口电平。 使单片机的 TTL电平与 RS232的电平实现匹配。 故采用方案二。 经过仔细分析和论证,决定了系统各模块的最终方案如下: ( 1)控制器模块:采用单片机 AT89S52 控制。 ( 2)量程自动转换模块:采用纯硬件搭建。 ( 3) A/D 转换模块:采用逐次逼近式 ADC0809 转换器。 ( 4)显示模块:采用 LED 串行静 态显示。 ( 5)通信模块:采用串口通信。 3 系统的硬件电路设计与实现 系统的硬件组成部分 系统硬件主要由中央控制模块、量程自动转换模块、 A/D 转换模块、显示模块和通信模块组成。 总原理图如图 2所示 图2 系统总体原理图 主要单元电路设计 中央控制模块 本设计 主要以 AT89S52 单片机最小系统为核心。 其 P1口为电压信号通过 A/D电子信息与电气工程系 2020 11 转换后所得数字量的输入端, 、 为单片机的模拟串口,分别连接 74LS164的 RXD和 TXD 端。 是 CPU 送数据到 LED 显示的接口; 、 、 分别接一个发光二极管,三个二极管亮灭的不同组合对应不同的量程。 同时 也接一发光二极管,当二极管亮时,表明待测信号超过了量程范围。 ALE 端口经芯片二分频接至 ADC0809 的 CLK 端。 接 ADC0809 的启动控制输入端口 STAR 和地址锁存控制信号端口 ALE, 、 分别连接 ADC0809 的输出允许控制端口 OE、转换结束信号脉冲输出端口。 , 口连接串口通信模块。 其原理图如图 3所示: 图 3 中央控制器原理图 量程自动转换模块 量程自动转换电路框图如图 4所示.被测量程判断器判断出被测量的范围,相应的量程信号输入到档位选择器. 档位选择器根据量程信号将档位自动调至适当的量程.并将输入值 自动地选择合适的增益 或衰减处理后送至 A/D转换器,实现整个量程的自动 转换功能 . 图 4 量程自动转换框图 电子信息与电气工程系 2020 12 ( 1) 电路设计的总体要求 电路设计的基本要求是在不降低测量精度的条件下实现量程的自动转换. 因此 在设计电路时需要考虑以下几方面的要求: 1)输入值量程判断器的阻抗.要求在进行电压测量时具有高阻抗,进行电流测时具有低阻抗. 2)输入值量程判断器应具备对最大量程的上限和最小量程的下限的判断能力. 由于被测范围较大,因此既要求在高待测量值输入时不对小量程电路造成冲击,又要求在超量程值时对档位转换电路进行关断. 当输入量低于表内的测量精度时,也要求将档位选择器关断. 否则,当测量仪表断开时,没有输入量,而输入值量程判断器则认为此时的输入量在最小量程的档位上,当仪表接通待测量时,待测量大于最小量程档位的范围时, 档位选择电路及其后级电路必定受到较大的冲击。 所以,输入值量程判断器不仅对是否超过最大量程能够判断,对是否小于最小量程的精度也有判断能力. 3)电路安全要求. 在本设计中,利用传输的延时,对档位进行从关断测量到最大量程档位向低量程档位逐级下降直至到适当档位的转换,这样就使得电路在测量完高待测后就能顺利地进行对最低待测量的测量. 4)成本及功耗问题. 由于输入值判断器所判断出的值不是用来测量,而是用于转换量程档位,所转换出的数值不需要十分精确,故其电路功耗可按仪表需要选择适当的芯片. ( 2) 电路设计的实现 1)量程判断电路的设计 量程判断电路框图如图 5所示.输入的被测量经分压电路分压,并经隔离电路后输入电压判断电路.再至档位选择器。 图 5 量程判断电路框图 单量程的量程判断实现电路如图 6所示. 电子信息与电气工程系 2020 13 图 6 单量程判断实现电路 电路中 Uin代表被测信号,电阻 R R2 组成分压电路. 运放 A1组成隔离电路. 电压判断电路由电压源 UEF2和运放 A3组成的单限电压比较器实现. 该电压比较器的阈值电压 为 UT为: UT = ( R3/R4) *UREF ( 1) 电路下半部分与上半部分的结构和工作原理 相似. 不过,比较电压由 A4 的反相端输入. 由 (1)式可知,当跟随器 A1的输出大于 V 时, 比较器 A3输出高电平; 当跟随器 A2 的输出小于 ,比较器 A4 输出高电平; 当 Uin V时,输出为低电平. 电路构成了一个窗口比较器. 量程判断器的总电路如图 7所示.每个运放的输入端都接有稳压管进行限压,以保护运放. 图中上半部分 为档位选择电路,正负电压都可由整流桥整流后送分压电阻分压, 下半部分为输入电压的最小值判断电路,对输入被测量的有和无进行直接判断. 根据前级的 分压比可以求得,当被测的电压值大于 者小于 V时,输出端 INH才输出高电平. 图 7 量程判断器的总电路 2) 档位选择器 输入值判断器已经把电压信号分档并转换为高低电平的数字输出电子信息与电气工程系 2020 14 值输出. 档位选择器可根据输入值判断器所得结果来设计.输入值判断器的输入端电压与输出端的真值表如表 1所示。 表 1中, 1表示高电平, 0表示低电平。 由真值表的特性可知,档位选择可以用一个 8选 1模拟开关 CD4051完成。 CD4051主要由 8路 CMOS开关,译码电路和 电平转换电路 3部分组成,其工作原理是主要由控制端 A、 B、 C的不同的组合状态来选通哪一路输入作为输出。 其译码表如表 2所示。 对照表 1和表 2,可得出译码电路对各量程选择的输出端,从小到大分别为: Y0、 Y Y Y Y Y Y Y7。 表 1 真值表 Ui 输 出 ( ~ ) (~ 2V) (2~ 20V) (20~ 100V) (100~ 200V) (200~ 400V) (400~ 600V) (600~ 800V) (800~ 1000V) 1000V A 1 1 1 1 1 0 0 0 0 0 B 1 1 1 0 0 1 1 0 0 0 C 1 1 0 1 0 1 0 1 0 0 INH 1 0 0 0 0 0 0 0 0 1 档位状态 截止 ~ 2V 2~ 20V 20~ 100V 100~ 200V 200~ 400V 400~ 600V 600~ 800V 800~ 1000V 截止 表 2 译码表 输入值 输出值 A B C INH Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 根据芯片输入、输出的引脚特性,其电路接线图如图 8所示.输入信号分压等变换后送入 CD4051的 X0X7, 8个 通道。 其中 1个控制引脚: INH是 4051的禁止端,为低电平开启, INH=1模拟开关被禁止工作, INH=0时,由 A、 B、 C上的信号来控制某一电子信息与电气工程系 2020 15 路的选通。 电路引脚中,若 A、 B、 C无输入或悬空时, Y0输出 1,控制档位在最高量程电压档位上,起到保护电路的作用. 图 8 档位判断电路 3)量程自动选择总电路 根据上述研究,可 得量程自动转换电路如图 9所示.路中所用的基准电压都是 2 V,可用同一直流电源提供.稳压管均采用 2. 8 V工作电压的稳压 管。 图 9 量程自动选择总电路 A/D模数转换模块 采用 ADC0809转换芯片,采集信号由 INT0输入;数字量输出接至 CPU的 P1口;电子信息与电气工程系 2020 16 其 START与 ALE引脚接至 CPU的 , OE引脚接至 CPU的 , EOC引脚接至 CPU的 脚; A、 B、 C三 位地址线共同接地,表示对 INT0的输入信号进行模数转换。 在 INT0的输入端口接一选择开关电路,用以判断对电压测量还是对电流测量; ADC0809 的工作过程是:。基于单片机的全数字电压、电流表的设计
相关推荐
中断向量的设计以及开中断、循环等待等工作。 另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。 然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。 2. 2 定时中断服务程序 在定时中断服务程序中,每 100 ms 产生一次中断,当产生 10 次中断的时候,也就到了 1 s,送数据到相应的显示缓冲单元
型应用电路: 13 图 37 MIC 录音电路 [2] 图 38 SPI 接口控制电路 [2] DF 无线收发模块 [5] 无线数据传输广泛地运用在车辆监控、 遥控、遥测、小型无线网络、无线抄表、门禁系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触 RF 智能卡、小型无线数据终端、安全防火系统、无线遥控系统、生物信号采集、水文气象监控、机器人控制、无线 232 数据通信、无线
ALE/PROG( 30 脚) : 地址锁存允许信号端。 需要访问外部存储器时 , ALE 在每个周期输出两次信号 用于锁存 P0 发送的低 8 位地址数据。 在不 需要 访问外部存储器时, ALE产生的同样频率的正脉冲信号,可以作为对外输出的时钟或是用于定时。 成都理工大学 2020 届学士学位论文(设计) 8 PSEN( 29 脚) : 外部程序存储器读取信号 端口, 引脚 低电平时有效。
码管是由多个 LED 作为笔画字段的组合型显示器件,使用时通过点亮不同的 LED 组合成不同的数码字型。 这种方法最常用,但当点亮多个数码管是,电路复杂,编程困难。 对于发光二极管,虽然电路、编程简单,但是显示的数量太少, 另一方面,不利于获取显示信息。 综上所述,用数码管显示。 五.具体实现: 电路由光电管电路,单片机系统,蜂鸣器报警电路,数码管显示部分、复位电路组成。 6 图
;缺点是各模块都采用独立电源,会使 系统复杂,且可能影响电路电平。 方案二:采用单片机控制模块提供电源。 改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。 综上所述,我们选择第二种方案,电源的电路图如图 31所示。 图 ( 31) 电源电路图 发射和接收部分 光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件,它由发光源和受光器两部分组成。
7 为 f0 才能产生最强的机械波能量。 同理 ,超声波接收传感器的频率特性 也要在特定频率是才能最好的接收到超声波。 超声波接收 和发射 传感器 对频率很敏感, 所以在频率选择上就必须把频率设定在最佳状态这样才能最好的接收和发送超声波。 在电路设计 时 ,要注意超声接收传感器的电路连接,尤其是电路中器件参数的选择。 在接收头上 会外接一个电阻 R,这个电阻的大小决定输入到控制器中的交流电压