版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机应用课程设计班级: _ _学号: _姓名: _ _完成日期:年 月1目录2课设设计功能概述 .33课程设计分析 .33.1设计总体框图 .33.2单片机选择分析 .43.3温度传感器的选择 .93.4数码管 .163.5报警电路 .194电路原理图 .205 绘制软件流程图 .215.1主程序流程图 .215.2读温度子程序流程图 .225.3温度转换命令子程序流程图 .225.4计算温度子程序 .225.5温度显示子程序 .235.6温度上限调整子程序 .236程序代码清单 .237上机调试运行结果及分析 .338课程设计经验总结 .359参考文献 .3522 课设设计功能概述通过温度
2、传感器测得温度以后将数据送给单片机,再经过单片机处理后通过四位 8 段数码管将测得的温度显示出来,同时通过四个按键来实现温度的上下限,如果温度超过上下限,就通过报警电路发生报警,报警声还可以通过一个按键来实现静音。3 课程设计分析设计一个基于单片机的DS18B20数字温度计。课程设计要求:1. 5V供电;2. 温度采集采用 DS18B20;3. 4 位 LED显示;4. 2 个按键;5. 设计温度控制器原理图, 学习用 PROTEL画出该原理图,并用 proteus 进行仿真;设计和绘制软件流程图,用 C 语言进行程序编写;焊接硬件电路,进行调试。3.1 设计总体框图控制器采用单片机 AT89
3、S51,温度传感器采用 DS18B20,用 4 位 LED 数码管以串口传送数据实现温度显示,用四位按键调整报警点,蜂鸣器实现报警温度采集单片机复位LED 显示报警点按键调整单片机时钟电路温度报警33.2 单片机选择分析本次设计采用市场上极为普遍的 51 系列单片机, AT89C51 是一种带 4K 字节 FLASH 存储器( FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能 CMOS 8 位微处理器,俗称单片机。 AT89C2051 是一种带 2K 字节闪存可编程可擦除只读存储器的单片机。 单片机的可擦除只读存储器
4、可以反复擦除 1000 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造, 与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪速存储器组合在单个芯片中, ATMEL 的 AT89C51 是一种高效微控制器,3.2.1主要特性1.与 MCS-51 兼容 ;2.具有 4K 字节可编程 FLASH 存储器 ;3.寿命: 1000 写/擦循环 ;4.数据保留时间: 10 年;5.全静态工作: 0Hz-24MHz;6.三级程序存储器锁定 ;7.具有 128×8 位内部 RAM;8.含有 32 可编程 I/O 线;9.两个 16 位定时器 /计数器
5、;10.具有 5 个中断源 ;11.可编程串行通道 ;12.低功耗的闲置和掉电模式;13.片内振荡器和时钟电路 ;3.2.2管脚说明AT89C51 提供以下标准功能: 4K 字节 Flash 闪速存储器,128 字节内部 RAM ,32 个4I/O 口线,两个 16 位定时 /计数器,一个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时, AT89C51 可降至 0Hz 的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止 CPU 的工作,但允许 RAM ,定时 /计数器,串行通信口及中断系统继续工作。掉电方式保存 RAM 中的内容,但振荡器停止工作并禁止其它
6、所有部件工作直到下一个硬件复位。AT89C51 管脚说明如图 3-8 所示。图 3-8 AT89C51 芯片P0口: P0 口为一个 8 位漏级开路双向I/O 口,每脚可吸收 8TTL 门电流。当 P0 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据 /地址的低八位。 在 FIASH 编程时, P0口作为原码输入口,当 FIASH 进行校验时, P0 输出原码,此时 P0 外部必须接上拉电阻。P1口: P1 口是一个内部提供上拉电阻的8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL门电流。 P1 口管脚写入 1 后,被内部上拉为高,可
7、用作输入, P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时, P1 口作为低八位地址接收。P2口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收, 输出 4 个 TTL门电流,当 P2 口被写 “1时”,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时, P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, P2 口输出地址的高八位。在给出地址 “1时”,它利用内部上拉优势, 当对外部八位地址数据存储器进行读写时, P2 口输出其特殊
8、功能寄存器的内容。 P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口: P3 口管脚是 8 个带内部上拉电阻的双向I/O 口,可接收输出 4 个 TTL 门电流。5当 P3 口写入 “1后”,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平, P3 口将输出电流( ILL )这是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口,如下表所示:P3 口管脚 备选功能;P3.0 RXD(串行输入口);P3.1 TXD(串行输出口);P3.2 /INT0(外部中断 0);P3.3 /INT1(外部中断 1);P3.4 T0(计时器 0 外部
9、输入);P3.5 T1(计时器 1 外部输入);P3.6 /WR(外部数据存储器写选通) ;P3.7 /RD(外部数据存储器读选通) ;P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST 脚两个机器周期的高电平时间。ALE :当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时, ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE 脉冲。如想禁止ALE的
10、输出可在 SFR8EH 地址上置 0。此时,ALE 只有在执行 MOVX ,MOVC 指令是 ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE 禁止,置位无效。/PSEN:外部程序存储器的选通信号。 在由外部程序存储器取指期间, 每个机器周期两次 /PSEN 有效。但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。/EA :当 /EA 保持低电平时,则在此期间外部程序存储器( 0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时, /EA 将内部锁定为 RESET;当 /EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期
11、间,此引脚也用于施加 12V 编程电源( VPP)。XTAL1 :反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 :来自反向振荡器的输出。63.2.3振荡器特性XTAL1 和 XTAL2 分别为反向放大器的输入和输出。 该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。3.2.4复位方式单片机在启动时都需要复位,以使 CPU 及系统各部件处于确定的初始状态,并从初态开始工作。51 系列单片机的复位信号是从 R
12、ST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果 RST 引脚上有一个高电平并维持 2 个机器周期 (24 个振荡周期 )以上,则 CPU 就可以响应并将系统复位。单片机系统的复位方式有两种:手动按钮复位和上电复位。3.2.5手动按钮复位手动按钮复位需要人为在复位输入端 RST 上加入高电平。一般采用的办法是在 RST 端和正电源 VCC 之间接一个按钮。当人为按下按钮时,则 VCC 的+5V 电平就会直接加到 RST 端。手动按钮复位的电路(如图 3-9)所示。由于人的动作再快也会使按钮保持接通达数十毫秒,所以,完全能够满足复位的时间要求。图 3-9 手
13、动按钮复位3.2.6 上电复位AT89C51 的上电复位电路如图3-10 所示,只要在 RST 复位输入引脚上接一电容至7VCC 端,下接一个电阻到地即可。对于 CMOS 型单片机,由于在 RST 端内部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至 10uF。上电复位的工作过程是在加电时,复位电路通过电 容加给 RST 端一个短暂的高电平信号,此高电平信号随着 VCC 对电容的充电过程而逐渐回落,即 RST 端的高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位, RST 端的高电平信号必须维持足够长的时间。上电时, VCC的上升时间约为 10ms,而振荡器的起振时间取决于
14、振荡频率, 如晶振频率为 10MHz ,起振时间为 1ms;晶振频率为 1MHz ,起振时间则为 10ms。在图 3-10 的复位电路中,当 VCC 掉电时,必然会使 RST 端电压迅速下降到 0V 以下,但是,由于内部电路的限制作用,这个负电压将不会对器件产生损害。另外,在复位期间,端口引脚处于随机状态,复位后,系统将端口置为全“ 1”态。如果系统在上电时得不到有效的复位,则程序计数器 PC 将得不到一个合适的初值,因此, CPU 可能会从一个未被定义的位置开始执行程序。VccAVcc10uFT89CRST5R1GND图 3-10 上电复位3.2.7单片机的晶振电路单片机的时钟电路产生方法有
15、两种。内部时钟方式和外部时钟方式。本次设计采用的是内部时钟方式,利用芯片内部的振荡电路,在XTAL1 ,XTAL2 引脚上外接定时元件,内部的振荡电路便产生自激振荡。 此次采用最常见的内部时钟方式,即用外接晶体和电容组成的并联谐振回路。振荡晶体可在1.2MKZ 到 12MHZ 之间选择。电容值无严格要求,单电容取值对振荡频率输出的稳定性,大小,振荡电路起振速度有少许影响, C1,C2 可在 20pF 到 100pF 之间取值,但在 60pF 到 70pF 时振荡起有较高的频率稳定性。如图 3-11 所示。8图 3-11 内部时钟方式如果采用外部时钟源驱动器件, XTAL2 应不接。输入至内部时
16、钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。如图 3-12 所示。图 3-12 外部时钟3.3 温度传感器的选择本次设计采用 DS18B20 温度传感器3.3.1 DS18B20 的特点本设计的测温系统采用芯片 DS18B20,DS18B20 是 DALLAS 公司的最新单线数字温度传感器,它的体积更小,适用电压更宽,更经济。3.3.2 实现方法简介采用外接电源方式工作, 一线测温一线与 STC89C51 连接,测出的数据放在寄存器中,将数据经过 BCD 码转换后送到 LED 显示。9温度传感器是美国 DALLAS 半导体公司最新推出的
17、一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。 DS18B20 的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5;零待机功耗;温度以或位数字;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20 内部结构主要由四部分组成: 64 位光刻 ROM ,温度传感器,非挥发的温
18、度报警触发器 TH 和 TL ,配置寄存器。(1)光刻 ROM 中的 64 位序列号是出厂前被光刻好的,它可以看作是该 DS18B20 的地址序列码。 64 位光刻 ROM 的排列是:开始 8 位( 28H)是产品类型标号,接着的 48 位是该 DS18B20 自身的序列号,最后 8 位是前面 56 位的循环冗余检验码(CRC=X8+X5+X4+1 )。光刻 ROM 的作用是使每一个 DS18B20 都各不相同,这样就可以实现一根总线上挂接多个 DS18B20 的目的。 64 位的光刻 ROM 又包括 5 个 ROM 的功能命令:读 ROM ,匹配 ROM ,跳跃 ROM ,查找 ROM 和报
19、警查找。根据 DS18B20 的通讯协议,主机控制DS18B20 完成温度转换必须经过三个步骤:每10一次读写之前都要对DS18B20 进行复位操作,复位成功后发送一条ROM 指令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定的操作。表 1 ROM 指令表指 令约定代码功 能读 ROM33H读 DS18B20温度传感器 ROM中的编码(即 64 位地址)发出此命令之后,接着发出64 位 ROM 编码,访问单总线上符合 ROM55H与该编码相对应的DS18B20 使之作出响应,为下一步对该DS18B20 的读写作准备用于确定挂接在同一总线上DS18B20 的个数和识别64位搜索
20、ROM0F0HROM地址。为操作各器件作好准备忽略 64位 ROM 地址,直接向DS18B20 发温度变换命令, 适跳过 ROM0CCH用于单片工作告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应表 2 RAM 指令表指 令约定代码功 能44H启动 DS18b20进行温度转换,12 位转换时间最长为 750ms(9 位温度转换为 93.75ms),结果存入内部9 字节 RAM中读暂存器0BEH读内部 RAM中 9 字节的内容发出向内部 RAM的 3、 4 字节写上、下限温度数据命令,紧跟该写暂存器4EH命令之后, 是传送三字节的数据, 三字节的数据分别被存到暂存器的第 3
21、、4、 5 字节复制暂存器48H2将 RAM中第 3 、 4、5 字节的内容复制到 E PROM中重调 E2PR0M0B8H将 E2PROM中内容恢复到 RAM中的第3 、4、5 字节读供电方式0B4H读 DS18B20的供电模式。寄生供电时DS18B20发送“ 0 ”,外接电源供电 DS18B20 发送“ 1 ”(2) DS18B20 中的温度传感器可完成对温度的测量,以 12 位转化为例:用 16 位符号扩展的二进制补码读数形式提供,以 0.0625/LSB 形式表达,其中 S 为符号位。表 3DS18B20温度值格式表11这是 12 位转化后得到的12 位数据,存储在DS18B20 的两
22、个 8bit 的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于0, 这 5 位为 0,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于0,这 5 位为 1,测到的数值需要取反加1再乘于 0.0625 即可得到实际温度。 例如 +125的数字输出为 07D0H, +25.0625的数字输出为 0191H, -25.0625的数字输出为 FE6FH,-55的数字输出为 FC90H。表 4DS18B20 温度数据表(3)DS18B20 温度传感器的存储器DS18B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可电擦除的 E2 PRAM ,后
23、者存放高温度和低温度触发器 TH 、TL 和结构寄存器。存储器能完整的确定一线端口的通讯,数据开始用写寄存器的命令写进寄存器,接着也可以用读寄存器的命令来确认这些数据。当确认以后就可以用复制寄存器的命令来将这些数据转移到可电擦除 RAM 中。当修改过寄存器中的数据时,这个过程能确保数据的完整性。暂存存储器由9 个字节组成,其分配如表 5 所示。当温度转换命令发布后, 经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第1 和第 2 个字节。 CPU 可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表3 所示。对应的温度计算:当符号位 S=0 时,直接将二进制位转换为十进制;
24、当 S=1 时,先将补码变为原码,再计算十进制值。第3 和第 4 个字节是复制 TH 和 TL ,同时第 3 和第 4 个字节的数据可以更新;第 5 个字节是复制配置寄存器,同时第5 个字节的数据可以更新; 6、7、8 三个字节是计算机自身使用。第9 个字节是冗余检验字节。表 5DS18B20暂存寄存器分布12寄存器内容字节地址温度值低位( LS Byte )1温度值高位( MS Byte)2高温限值( TH)3低温限值( TL)4配置寄存器5保留6保留7保留8CRC校验值9(4)配置寄存器该字节各位的意义如下:表 6配置寄存器结构低五位一直都是 "1" ,TM 是测试模式
25、位,用于设置 DS18B20 在工作模式还是在测试模式。在 DS18B20 出厂时该位被设置为 0,用户不要去改动。 R1 和 R0 用来设置分辨率,如下表所示( DS18B20 出厂时被设置为 12 位)。表 7温度分辨率设置表3.3.3 DS18B20 外部电源的连接方式DS18B20 可以使用外部电源 VDD ,也可以使用内部的寄生电源。当 VDD 端口接 3.0V5.5V 的电压时是使用外部电源;当 VDD 端口接地时使用了内部的寄生电源。无论是内部寄生电源还是外部供电, I/O 口线都要接 4.7K 的上拉电阻。DS18B20 的外部电源供电方式在外部电源供电方式下, DS18B20
26、 工作电源由 VDD 引脚接入,此时 I/O 线不需要强上拉, 不存在电源电流不足的问题, 可以保证转换精度,同时在总线上理论可以挂接任意多个 DS18B20 传感器,组成多点测温系统。注意:在外部供电的方式下, DS18B20 的 GND 引脚不能悬空,否则不能转换温度,读取的温度总13是 85。图 4外部电源连接3.3.4 DS18B20 温度处理过程1、配置寄存器配置寄存器是配置不同的位数来确定温度和数字的转化。2、温度的读取DS18B20 在出厂时已配置为 12 位,读取温度时共读取16位,所以把后 11 位的 2 进制转化为 10 进制后再乘以 0.0625 便为所测的温度,还需要判
27、断正负。前5 个数字为符号位,当前 5 位全为 1 时,读取的温度为负数;当前 5 位全为 0时,读取的温度为正数。 16 位数字摆放是从低位到高位。3、DS18B20 控制方法DS18B20 有六条控制命令( RAM ):见表 2。4、DS18B20 的初始化(1)总线主机发送一复位脉冲(最短为480us 的低电平信号)(2)总线主机释放总线,并进入接收方式(3)单线总线经过5K 的上拉电阻被拉至高电平状态(4)DS18B20 在 I/O 引脚上检测到上升沿之后,等待15-60us,接着发送存在脉冲( 60us-240us的低电平信号)初始化时序145、向 DS18B20 发送控制命令先通过
28、总线向 DS18B20 发送 ROM 指令,对 ROM 进行操作;之后,发送 ROM 指令,来启动传感器或进行其它 RAM 操作,以完成对温度数据的转换。3.3.5 DS18B20 的读写操作方法:总线控制器在写时间隙向 DS18B20 写数据,在读时间隙从 DS18B20 读数据;在每个时间隙有一位的数据通过单总线被传输。写时间隙的产生过程:写时间隙的产生从总线控制器把单总线拉低开始。Write 0 和write 1 时间隙间隔要大于1us。1、产生 write 1 时间隙:当总线控制器把单总线拉到低电平后,必须在15us 内释放单总线,单总线被释放后5K 的上拉电阻会把单总线拉到高电平。2
29、、产生 write 0 时间隙:当总线控制器把单总线拉到电平后,总线控制器在write 0 时间隙内必须继续保持低电平,最少60us。在总线控制器发出写时间隙后 1560us,DS18B20 会采样单总线上的数据。如果在采样窗口期单总线为高电平,则视为向 DS18B20 写入“ 1”;如果在采样窗口期单总线为低电平,则视为向 DS18B20 写入“ 0”。读时间隙的产生:一个读时间隙的产生是通过控制器把单总线拉到低电平,并保持至少 1us,之后释放总线产生的。当控制器发出读时间隙后, DS18B20 将开始传输数据“ 1”或“ 0”到总线上。 DS18B20 通过把总线置于高电平传输“ 1”,
30、通过把总线置于低电平传输“ 0”。当传输“0”时,DS18B20 将在读时间隙结束时释放总线,总线将会被上拉电阻拉回高电平闲置状态。 DS18B20 的输出数据在发出读时间隙后的 15us 内有效,因此:在读时间隙发出后,控制器必须释放总线并在 15us 内采样总线的电平状态。153.4数码管LED 即发光二极管,英文全称为Light Emitting Diode 。单独的发光二极管便是一个最简单的 LED ,通过控制其的亮灭来作为信号指示,一般用于电源指示灯、工作状态指示等。单个的发光二极管使用比较简单。LED 数码管是由若干个发光二极管组成的显示字段的显示器件,一般简称为数码管。当数码管中
31、的某个发光二极管导通的时候,相应的一个字段便发光, 不导通的则不发光。LED 数码管可以根据控制不同组合的二极管导通,来显示各种数据和字符。单片机应用系统中使用最多的是 7 段 LED ,其可以显示十进制数字以及一些英文字符。 7 段 LED 显示模块可以分为共阴极和共阳极两种,下面分别进行介绍。7 段共阳极 LED 数码管是由 7 个条形发光二极管和一个小数点位构成, 其引脚配置,如图所示,其内部结构,如图所示。从图中可以看出,其中 7 个发光二极管构成字形 “ 8”,可以用来显示数字,另一个发光二极管构成小数点。因此,这种数码管有时也被称为 8 段 LED 数码管显示器。共阴极 7 段 L
32、ED 数码管和共阳极 LED 数码管结构类似,其引脚配置,如图所示。 从图中可以看出 7 段 LED 数码管同样由 8 个发光二极管组成, 其中 7 个发光二极管构成字形“ 8”,另一个发光二极管构成小数点。共阴极 7 段 LED 数码管的内部结构,如图所示。其中所有发光二极管的阴极为公共端,接 GND 。如果发光二极管的阳极极为高电平的时候,发光二极管导通,该字段发光;反之,如果发光二极管的阳极为低电平的时候,发光二极管截止,该字段不发光。共阳极:16位选为高电平(即1)选中数码管 ,各段选为低电平(即0 接地时)选中各数码段 , 由 0 到 f 的编码为: uchar code table
33、= 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0 xc6,0xa1,0x86,0x8e;共阴极:位选为低电平(即0)选中数码管 ,各段选为高电平 (即 1 接+5V 时)选中各数码段 , 由 0 到 f 的编码为 : uchar code table=0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71;3.4.1LED数码显示方式及电路1)静态显示方式LED 显示器工作方式有两种:静态显示方式和动态
34、显示方式。静态显示的特点是每个数码管的段选必须接一个 8 位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用 CPU 时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。两位共阴数码管静态显示电路图172)动态显示方式本次设计选用的是动态显示的方法动态显示的特点是将所有位数码管的段选线并联在一起, 由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。显示器的亮度既与导通电流有关,也与点亮
35、时间和间隔时间的比例有关。调整电流和时间参数,可实现亮度较高较稳定的显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。 若显示器的数目不大于 8 位,则控制显示器公共极电位只需 8 位口(称为位选口),控制各位显示器所显示的字形也需一个 8 位口(成为段选口) 。动态显示电路183.5 报警电路蜂鸣器蜂鸣器是一种一体化结构的电子讯响器, 采用直流电压供电, 广泛应用于计算机、 打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“ H”或“ HA”(旧标准
36、用“ FM”、“ LB”、“JD”等)表示。有源蜂鸣器和无源蜂鸣器:判断有源蜂鸣器和无源蜂鸣器,还可以用万用表电阻档 Rxl 档测试 : 用黑表笔接蜂鸣器 "+" 引脚,红表笔在另一引脚上来回碰触,如果触发出咔、咔声的且电阻只有 8(或 16)的是无源蜂 蜂鸣器 ,如果能发出持续声音的,且电阻在几百欧以上的,是有源蜂鸣器。这里的“源”不是指电源。而是指震荡源。 也就是说有源蜂鸣器内部带震荡源,所以只要一通电就会叫。 而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用 2K5K 的方波去驱动它。 有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。 无源蜂鸣器的优点
37、是: 1。便宜, 2。声音频率可控,可以做出“多来米发索拉西”的效果。 3。在一些特例中,可以和 LED 复用一个控制口 有源蜂鸣器的优点是:程序控制方便 。由于蜂鸣器的工作电流一般比较大,以致于单片机的 I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大电流就可以了194 电路原理图51 单片机最小系统的 P0 口接上拉电阻,同时接四块共阳极 8 段数码管的 abcdefgh dp, P2.0 P2.1 P2.2 P2.2分别接 NPN 三极管。DS18B20 的 dq 端接到 P1.0 口,四个按键一端分别接 P3.0 P3.1 P3.2 P3.3口,一端接地。蜂鸣
38、器一端接地, 一端接 pnp 三极管的集电极。20基极接 51 单片机的 P1.7 口,发射极接电源。电路工作时,单片机的P0 口提供数码管的段码, P2.0 P2.1 P2.2 P2.3口提供位选信号。温度传感器采集到温度数据后,将采集到的数据送给单片机处理,单片机将处理好的数据通过数码管显示出来。四个按键中,其中两个接 51 单片机的外部中断 0 口和外部中断 1 口,来调整限制数值的加和减, 第三个按键接 P3.1 口来控制是调整上限还是调整下限。 第四个按键接 P3.0 口来控制蜂鸣器是否静音,一旦温度超过上限或低于下限, 单片机就输出低电平来使蜂鸣器响来实现报警电路。51 单片机最小
39、系统电路来实现单片机的复位和提供时钟电路.5 绘制软件流程图程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序, 显示数据刷新子程序等。5.1主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理 DS18B20 的测量的当前温度值,温度测量每 1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图1 所示。初始化调用显示子程序N1S 到?Y发 DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验初次上电?9 字节完?N读出温度值并且计算处理显示数CRC 校验正据刷新确?发送开始转换温移入温度暂存器度命令结束图 1主程序流程图图 2 读
40、温度流程图215.2读温度子程序流程图读出温度子程序的主要功能是读出RAM 中的 9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图2 示5.3 温度转换命令子程序流程图温度转换命令子程序主要是发温度转换开始命令, 当采用 12 位分辨率时转换时间约为750ms,在本程序设计中采用 1s 显示程序延时法等待转换的完成。温度转换命令子程序流程图如下图,图 3 所示开始发 DS18B20 复位命令N温度零下?Y发跳过 ROM 命令温度值取置“ +”补码置 -标志计算小数位发温度转换开始命令温度 BCD 值计算整数位温度 BCD 值结束结束图 3 温度转换流程图图 4 温度计算流程图5.4计算温度子程序计算温度子程序将 RAM 中读取值进行 BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如上图 图 4 所示225.5 温度显示子程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年音乐录制合同模板资讯
- 店铺租房合同协议书
- 办公室楼装修合同2024年
- 店铺租赁合同示范文本
- 赠与合同撤销权行使的司法实践
- 分公司承包合同2024年
- 广告安装责任合同
- 内部股权认购协议书
- 长沙银行中外技术合作合同样本
- 对外贸易合同范本:供货国别代号的更新与说明
- 信息系统部署与运维-题库带答案
- 婚姻心理学解读包含内容
- DZ/T 0462.3-2023 矿产资源“三率”指标要求 第3部分:铁、锰、铬、钒、钛(正式版)
- 备战2024年高考英语考试易错点12 名词性从句(4大陷阱)(解析版)
- 公务员历史常识100题及一套完整答案
- 信息技术与高中英语教学融合的途径
- 花篮拉杆式悬挑脚手架.计算书及相关图纸
- 职业道德与法律说课稿市公开课一等奖省赛课微课金奖课件
- 《电力建设施工技术规范 第2部分:锅炉机组》DLT 5190.2
- 史学概论完整版本
- 供水管网抢修管理课件
评论
0/150
提交评论