图1 总体框图
4. 硬件电路设计
硬件电路设计的主要模块有:测量模块,放大模块,A/D转换模块,单片机最小系统模块和显示模块。MUC为STC89S52型号,称重传感器为电阻式应变传感器,A/D转换器为HX711型号。
4.1 单片机型号的选择
单片机型号选择的考虑因素有以下几个方面:
(1)货源方面:设计者所选择的单片机型号必须有充足、稳定的货源,以便大批量生产,销售,防止供不应求的情况发生。
(2)性能方面:性能包括:指令功能、运行速度、片内资源、可靠性、封装形式等方面。根据系统所要求实现的功能和各种单片机的性价比,选择最符合,最容易实现功能的型号。
(3)适应性方面:在时间短且任务复杂的情况下,要考虑所选单片机的熟悉程度,能否立即着手系统设计。需考虑的另一个因素是体积,考虑其大小形状是否合适,是否便于安装[4]。
根据以上三个方面的综合考虑,最终决定选择型号为STC89C52的单片机。
单片机STC89C52RC的最小系统原理图如图2所示。
图2 单片机STC89C52RC最小系统
STC89C52RC最高工作时钟频率为80MHz,是采用8051核的ISP在系统可编程芯片,片内含8KB的可反复擦写1000次的RAM,器件兼容80C51引脚结构及标准MCS-51指令系统,芯片内集成了ISP Flash存储单元和通用8位CPU,具有ISP特性,可将用户程序以更快速度下载进单片机内部,不再需要购买通用编程器[5]。
STC89C52RC单片机引脚功能如下介绍:
P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口是一个带内部上拉电阻的8 位双向I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
P2口是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX @DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX@RI 指令)时,P2 口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。
P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST复位输入:当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。 STC89C52单片机低成本电子秤设计+电路图(3):http://www.751com.cn/wenxue/lunwen_7679.html