简易数字电压表的设计内容摘要:

引脚双列直插式封装,其引脚排列如图 36所示。 口: P2 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P2 口的输出缓冲器可驱动 4个 TTL 逻辑门电路。 对 P2 口管脚写入 “1” 后,被内部上拉电阻拉高,可用作输入。 P2口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。 P2口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, P2口输 出地址的高八位。 在访问 8 位地址外部数据存储器时, P2 口线上的内容,在整个访问期间不改变。 P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 口: P3 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P3 口的输出缓冲器可驱动 4个 TTL 逻辑门电路。 对 P3 口管脚写入 “1” 后,被内部上拉电阻拉高,可用作输入。 P3口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。 P3口除了一般 I/O 线的功能外,还具有更为重要的第二功能,如表 32 所示。 P3 口同时为FLASH 编程和编程校验接收一些控制信号。 表 32 P1 口的第二功能 端口引脚 第二功能 MOSI(用于 ISP 编程 ) MISO(用于 ISP 编程 ) SCK(用于 ISP 编程 ) RXD(串行输入口) TXD(串行输出口) /INTO(外部中断 0) /INT1(外部中断 1) T0(定时器 0 外部输入) T1(定时器 1 外部输入) /WR(外部数据存储器写选通) /RD(外部数据存储器读选通) ( 1) VCC:电源电压; ( 2) GND:接地; ( 3) P0 口: P0 口是一组 8 位漏极开路双向 I/O 口,每位引脚可驱动 8 个 TTL 逻辑门路。 对 P0 口的管脚写 “1” 时,被定义为高阻抗输入。 在访问外部数据存储器或程序 四川信息职业技术学院毕业设计说明书 (论文 ) 第 10 页 共 28 页 存储器时,它可以被定义为数据总线和地址总线的低八位。 在 FLASH 编程时, P0 口作为原码输入口;当 FLASH 进行校验时, P0 输出原码,此时 P0 外部必须接上拉电阻。 ( 4) P1 口: P1 口是一个内部提供上拉电阻的 8位双向 I/O 口, P1口的输出缓冲器可驱动 4 个 TTL 逻辑门电路。 对 P1 口管脚写入 “1” 后,被内部上拉电阻拉高,可用作输入。 P1 口被外部下拉为低电平时,将输出电流,这是由于内部接有上拉电阻的缘故。 在 FLASH 编程和校验时, P1 口作为低八位地址接收。 P1 口还具有第二功能,如表 32所示。 ( 5) RST:复位输入。 当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ( 6) ALE//RPOG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在 FLASH 编程期间,此引脚用于输入编程脉冲。 在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。 因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。 此时, ALE 只有在执行 MOVX, MOVC指令是 ALE 才起作用。 另外,该引脚被略微拉高。 如果微处理器在外部执行状态 ALE 禁止,置位无效。 ( 7) /PSEN:外部程序存储器的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 /PSEN 有效。 但在访问外部数据存储器时,这两次有效的信号将不出现。 ( 8) /EA/VPP:当保持低电平时,则在此期间外部程序存储器( 0000HFFFFH),不管是否有内部程序存储器。 注意加密方式 1 时, /EA 将内部锁定为 RESET;当 /EA 端保持高电平时,此间内部程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V 编程电源( VPP)。 ( 9) XTAL1:片内高增益反向放大器的输入及内部时钟工作电路的输入。 ( 10) XTAL2:片内高增益反向放大器的输出端。 AT89S51 的复位电路 AT89S51 的复 位电路如图 37所示。 当单片机一上电,立即复位;另外,如果在运行中,外界干扰等因素使单片机的程序陷入死循环状态或 “ 跑飞 ” ,就可以通过按键使其复位。 复位也是使单片机退出低功耗工作方式而进入正常状态的一种操作。 四川信息职业技术学院毕业设计说明书 (论文 ) 第 11 页 共 28 页 图 37 复位电路 电容 C和电阻 R1 实现上电自动复位。 增 加按键开关 S 和电阻 R2 又可实现按键复位功能。 R2 的作用是在 S 按下的时候,防止电容 C放电电流过大烧坏开关 S的触点。 因保证 R1/R2 10。 一般取 C=10uF,R2=100Ω , R1=。 AT89S51 与 ADC0809 的连接 图 38 AT89S51 与 ADC0809 的连接电路 AT89S51 与 ADC0809 的连接电路如图 38 所示。 AT89S51 与 ADC0809 的连接必须注意处理好 3 个问题: START 端送一个 100ns 宽的启动正脉冲; EOC 端上的状态信息,因为它是 A/D转换的结束标志; 四川信息职业技术学院毕业设计说明书 (论文 ) 第 12 页 共 28 页 “ 三态输出锁存器 ” 分配一个端口地址,也就是给 OE 端送一个地址译码器的输出信号。 4 位 一体 7 段 LED 数码管 本 设计 的显示模块主要由一个 4位一体的 7段 LED 数码管 (SM410564)构成,用于显示测量到的电压值。 它是一个共阳极的数码管,每一位数码管的原理图如图 113 所示。 每一位数码管的 a,b,c,d,e,f,g 和 dp 端都各自连接在一起,用于接收 AT89S51 的 P1 口产生的显示段码。 1, 2, 3, 4 引脚端为其位选端,用于接收 AT89S51 的 P3 口产生的位选码。 图 310和图 39 分别为其实物图和引脚图。 图 39 一位数码管的原理图 图 310 SM410564 数码管实物图 整机 电路 及工作原理 本设计采用 AT89S51 单片机芯片配合 ADC0809 模 /数转换芯片构成一个简易的数字电压表。 设计的硬件电路由主控部分 (单片机 AT89S51)、采集模拟量部分( A/D 转换一路 ADC0804)、显示部分(四位八段数码管)、报警电路(蜂鸣器) 4 个部分组成。 各部分之间相互协作,构成一个统一的有机整体,实现数字电压表的功能。 该电路通过 ADC0809 芯片采样输入口 IN0 输入的 0~ 5 V 的模拟量电压,经过模 /数 四川信息职业技术学院毕业设计说明书 (论文 ) 第 13 页 共 28 页 转换后,产生相应的数字量经过其输出通道 D0~ D7传送给 AT89S51芯片的 P0口。 AT89S51负责把接收到的数字量经过数据处理,产生正确的 7段数码管的显示段码,并通过其 P1口经驱动芯片 74HC245 驱动,再传送给数码管。 同时它还通过其三位 I/O 口 、 、 产生位选信号,控制数码管的亮灭。 另外, AT89S51 还控制着 ADC0809 的工作。 其ALE 管脚为 ADC0809 提供了 1MHz 工作的时钟脉冲; 控制 ADC0809 的地址锁存端(ALE); 控制 ADC0809 的启动端 (START); 控制 ADC0809 的输出允许端 (OE); 控制 ADC0809 的转换结束信号 (EOC)。 各部分的硬件电路设计 详见附录一。 四川信息职业技术学院毕业设计说明书 (论文 ) 第 14 页 共 28 页 第 4 章 软件设计 主程序设计 初始化中主要对 AT89S51, ADC0809 的管脚和数码管的位选及所用到的内存单元70H,78H,79H,7AH 进行初始化设置。 准备工作做好后便启动 ADC0809对 IN0脚输入进的 0~ 5V电压模拟信号进行数据采集并转换成相对应的 0~ 255 十进制。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。