基于单片机的语音温度计的设计内容摘要:
、非易失性存储技术制造,兼容标准 MCS51指令系统及 80C51 引脚结构,芯片内集成了通用 8位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S51 可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S51 具有如下特点: 40 个引脚, 4k Bytes Flash 片内程序存储器, 128 bytes 的随机存取数据存储器( RAM), 32 个外部双向输入 /输出( I/O)口, 5个中断优先级 2层中断嵌套中断, 2个 16 位可编程定时计数器 ,2 个全双工串行通信口,看门狗( WDT)电路,片内时钟振荡器。 (如图 26所示)。 基于单片机的语音温度计系统设计 第 9 页 共 31 页 图 AT89S51 芯片 此外, AT89S51 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。 空闲模式下, CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、 TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。 主要功能特性 : 兼容 MCS51 指令系统 32 个双向 I/O 口 2 个 16 位可编程定时 /计数器 全双工 UART 串行中断口线 , 2 个外部中断源 中断唤醒省电模式 看门狗( WDT)电路 灵活的 ISP 字节和分页编程 4k 可反复擦写 (1000 次) ISP Flash ROM 工作电压 时钟频率 033MHz 128x8bit 内部 RAM 低功耗空闲和省电模式 3 级加密位 软件设置空闲和省电功能 双数据寄存器指针 AT89S51 的 引脚功能介绍: VCC: AT89S51 电源正端输入,接 +5V。 VSS: 运城学院计算机科学与技术系毕业论文 第 10 页 共 31 页 电源地端。 XTAL1: 单芯片系统时钟的反相放大器输入端。 XTAL2: 系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一个 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。 RESET: AT89S51 的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间, AT89S51 便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H 处开始读入程序代码而执行程序。 EA/VPP: EA为英文 External Access的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部 EPROM 中)来执行程序。 因此在 8031 及 8032 中, EA 引脚必须接低电平,因为其内部无程序存储器空间。 如果是使用 8751 内部程序空间时,此引脚要接成高电平。 此外,在将程序代码烧录至 8751 内部 EPROM 时,可以利用此引脚来输入 21V 的烧录高压( VPP)。 ALE/PROG: ALE 是英文 Address Latch Enable的缩写,表示地址锁存器启用信号。 AT89S51 可以利用这支引脚来触发外部的 8 位锁存器(如 74LS373),将端口 0的地址总线( A0~ A7)锁进锁存器中,因为 AT89S51 是以多工的方式送出地址及数据。 平时在程序执行时 ALE 引脚的输出频率约是系统工作频率的 1/6,因此可以用来驱动其他周边晶片的时基输入。 此外在烧录 8751 程序代码时,此引脚会被当成程序规划的特殊功能来使用。 PSEN: 此为 Program Store Enable的缩写,其意为程序储存启用,当 8051 被设成为读取外部程序代码工作模式时( EA=0),会送出此信号以便取得程序代码,通常这支脚是接到 EPROM 的 OE 脚。 AT89S51 可以利用 PSEN 及 RD 引脚分别启用存在外部的 RAM 与 EPROM,使得数据存储器与程序存储器可以合并在一起而共用 64K 的定址范围。 PORT0( ~ ): 端口 0 是一个 8位宽的双向输出入端口,共有 8 个位, 表示位 0, 表示位 1,依此类推。 其他三个 I/O 端口( P P P3)则不具有此电路组态,而是内部有一提升电路, P0 在当作 I/O 用时可以推动 8 个 LS 的 TTL 负载。 如果当 EA 引脚为低电平时(即取用外部程序代码或数据存储器), P0 就以多工方式提供地址总线( A0~ A7)及数据总线( D0~ D7)。 设计者必须外加一个锁存器将端口 0送出的地址锁住成为 A0~ A7,再配合端口 2 所送出的 A8~ A15 合成一个完整的 16 位地址总线,而定址到 64K 的外部存储器空间。 PORT2( ~ ): 基于单片机的语音温度计系统设计 第 11 页 共 31 页 端口 2 是具有内部提升电路的双向 I/O 端口,每一个引脚可以推动 4个 LS的 TTL 负载,若将端口 2 的输出设为高电平时,此端口便能当成输入端口来使用。 P2 除了用做一般 I/O 端口使用外,若是在 AT89S51 扩充外接程序存储器或数据存储器时,也提供地址总线的高字节 A8~ A15,这个时候 P2 便不能当作 I/O来使用了。 PORT1( ~ ): 端口 1 也是具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4个 LS TTL 负载,同样地若将端口 1的输出设为高电平,便是由此端口来输入数据。 如果是使用 8052 或是 8032 的话, 又当作定时器 2的外部脉冲输入脚,而 可以有 T2EX 功能,可以做外部中 断输入的触发脚位。 PORT3( ~ ): 端口 3 也具有内部提升电路的双向 I/O 端口,其输出缓冲器可以推动 4个TTL 负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。 其引脚分配如下: : RXD,串行通信输入。 : TXD,串行通信输出。 : INT0,外部中断 0输入。 : INT1,外部中断 1输入。 : T0,计时计数器 0输入。 : T1,计时计数器 1输入。 : WR:外部数据 存储器的写入信号。 : RD,外部数据存储器的读取信号。 b 信号显示 对于数字显示系统,我们使用串行移位寄存器 74HC164 来控制 LED 数码管,每 2 片为 1 组, 用来 构成数码管的 0~99 秒的数字提示, 还有 4 个 LCD 二极管,用 来控制信号灯的亮与暗。 使用这样 4 组串行连接,这种布局设计便于我们 PCB板的布局和制作,而且能够更形象的模拟出 温度的测控功能。 74HC164 静态显示接口 芯片简介: M74HC164 为串行输入、并行输出移位寄存器, 74HC164 为单向总线驱动器。 在串行口为方式 0 状态,即工 作在移位寄存器方式,波特率为振荡频率的十二分之一。 器件执行任何一条将 SBUF 作为目的寄存器的命令时,数据便开始从 RXD 端发送。 在写信号有效时,相隔一个机器周期后发送控制端 SEND 有效,即允许 RXD 发送数据,同时,允许从 TXD 端输出移位脉冲。 第一帧( 8 位)数据发送完毕时,各控制信号均恢复原状态,只有 TI保持高电平,呈中断申请状态。 第一个 74HC164 把第一帧数据并行输出, LED1 显示该数据。 然后,用软件将 TI 清零,发送第二帧数据。 第二帧数据发送完毕, LED1 显示第二帧数据,第一帧数据串行输入给第二个 74HC164, LED2 显示第一帧数据。 依此类推,直到把数据区内所有数据发送出去。 应该注意,数据全部发送完后,第一帧数据在最后一个 LED 显示。 由于 TXD 端口最多可以驱动 8 个 TTL 门。 运城学院计算机科学与技术系毕业论文 第 12 页 共 31 页 各模块设计 (1) .电源模块 采用单片机控制模块提供电源。 优点是系统简明扼要,节约成本;缺点是输出功率不高。 其电路图如图 27 所示 . 图 电源模块 (2) .单片机及复位键控制模块 单片机采用 89S51,其中有 8K 内 存可用。 对交通灯的控制主要用其中的计数器定时来完成。 一方面要完成对各模块的控制,另一方面也要协调 好各模块的时序及口线冲突问题。 单片机复位电路是使 CPU 和系统中的其他功能部件都处在一个确定的初始状态,并从该状态开始工作,例如复位后 PC=0000H,使单片机从第一个单元取指令。 无论是在单片机刚接上电源时,还是断电后或者发生故障后都要复位。 单片机复位的条件是:使 RST/VPD 引脚 加上持续两个机器周期(即 24 个振荡周期)的高电平。 若时钟频率为 12MHz,每机器周期为 1us,则只需 2us 以上时间的高电平,在 RST 引脚出现高电平后的第二个机器周期执行复位。 单片机常见的复位电路如图 按键复位电路 所示。 图 按键复位电路 该电路除了具有上电复位电路功能,还可以使用中复位,只要按下图 中的 RESET 键,此时电源 VCC 经电阻 R1 、 R2 分压,在 RESET 端产生一个复位高电平。 单片机复位期间不产生 ALE 和 PSEN 信号,即 ALE=1,这表明单片机复位不会有任何取 值 操作。 基于单片机的语音温度计系统设计 第 13 页 共 31 页 按键复位电路,易掌握,好操作。 ( 3) 显示模块 LED 用来实现倒计时功能,可直接从 74HC164 的接口上接过来。 其控制较为简单。 其电路图如图 37所示。 LED 显示器的简单介绍: 简单的 LED 显示器有 LED 状态显示器(俗称发光二极管)、 LED 七段显示器(俗称数码管)和 LED 十六段码显示器。 发光二极管用于显示系统的两种状态:数码管用于显示数字, LED 十六段显示器用于字符显示。 本文采用 LED 七段显示器。 数码管的结构 :由 8 个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字 0~ 9,字符 A~ F等符号及小数点“ .”。 有共阳极和共阴极两种类型。 共 阳极数码管中 8 个发光二极管的阳极(二极管正端)连在一起。 通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。 当某段驱动电路的输入端为低电平时,该端所连接的字段导通并点亮。 根据发光字段的不同组合可显示出各种数字或字符。 此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 共阴极数码管中 8 个 发光二极管的阴极(二极管负端)连在一起。 通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。 当某段驱动电路的输出端为高电平时,该端所连接的字段导通并点亮。 根据发光字段的不同组合可显示出各种数字或字符。 同样,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 我采用共阴极 LED 数码管 图 LED 显示 运城学院计算机科学与技术系毕业论文 第 14 页 共 31 页 发光二极管的作用 发光二极管是一种由磷化镓( GAP)等半导体材料制成的、能直接将电能转变成光能的发光显示器件。 当其内部有一定电流通过时,它就会发 光。 二极管是用来控制哪个灯亮, 12 个二极管分别接在 AT89S51 芯片上的, 口。 如下图 所示。 图 二极管显示 单片机的简介和发展趋势 单片机全称为单片微型计算机( Single Chip Microputer) ,又称微控制器或嵌入式控制器。 它是将计算机的基本部件微型化并集成到一块芯片上的微型计算机,通常片内都含有 CPU、 ROM、 RAM、并行 I/O、串行 I/O、定时器 /计数器、中断控制、系统时钟及系统总线等。 随着技术的发展,单 片机片内集成的功能越来越强大,并朝着片上系统方向发展。 单片机有着体积小、功耗低、功能强、性能价格比高、易于推广应用等显著优点,在自动化装置、智能仪器仪表、过程控制、通信、家用电器等许多领域得到日益广泛的应用。 单片机的特点 单片机与通用微机相比较 ,在结构 ,指令设置上均有其独特之处 ,其主要特点如。基于单片机的语音温度计的设计
相关推荐
可以不使用外部上拉电阻。 当 P0 口用作普通 I/O 口 的时候,内部上拉电阻断开,外部必须连 接上拉电阻 ( ) [5]。 : P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口。 同时 也可以用作定时器 /计数器 2 的外部输入。 则可以用作定时器 /计数器 2 捕捉 /重装方式的触发控制 端。 : P2 口也是一个具有内部上拉电阻的 8 位双向 I/O 口。
但 8751 片内有 4K 的 EPROM,用户可以将自己编写的程序写入单片机的 EPROM 中进行现场实验与应用, EPROM 的改写同样需要用紫外线灯照射一定时间擦除后再烧写。 AT89C5 AT89S51 的比较 AT89C51 是 ATMEL公司推出的一种带 4K 字节闪速可编程 、 可擦除 、 只读存储器的低电压、高 性能 CMOS 8 位微控制器。 器件 用 ATMEL公司高密度
可靠。 如果 3 脚与地断开,输出端电压 Uo 将升高到与输入端 Ui相等的程度,有可能损坏负载。 但发现这种情况时,必须先关断电源,将 3 脚重新接地;绝对不允许在未关断电源的情况下重接 3 脚,否则有可能损坏稳压器。 三、 用 w7805 组成的 5 伏稳压电源 图 213 所示的电路,是用 W7805 组成的输出的电压为 5V、输出电流为 安的稳压电源。 图中电容 C集成稳压器 IC102
求,并作出快速响应、及时处理。 这是由片内的中断系统来实现的。 当中断请求源发出中断请求时,如果中断请求被允许,单片机暂时中止当前正在执行的主程序,转到中断服务处理程序处理中断服务请求。 中断服务处理程序处理完中断服务请求后,再回到原来被中止的程序之处(断点),继续执行被中断的主程序。 图 6 为整个中断响应和处理过程。 图 6 中断响应和处理过程 6 数码管驱动模块 数码管是一种把多个 LED
控制器,可以根据室内温度状况自主的选择制冷还是制热,从而使室内的温度处于一个相对稳定的状态,为人们营造一个温馨 、 舒适的居家环境。 国内外温度控制器发展现状 温度控制器是信息技术的最前端产品。 从先前的模拟温度控制器到今天的数码控制器。 温控器的经历逐步向着智能化数字化的道路。 目前,温度传感器被广泛的应用在工业生产、科学事业研究和 生活等方面,需求量越来越大。 一般来说
存储 器( 0000HFFFFH),不管是否有内部程序存储器。 注意加密方式 1 时, /EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。 在 FLASH 编程期间,此引脚也用于施加 12V 编程电源( VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 容并且冻结振荡器,禁止所用其他芯片功能