基于89s52单片机的无线测温仪内容摘要:
1”。 如果使用寄生电源,总线控制器必须在这条命令发出后立即起动强上拉并最少保持 10ms。 (4)[44h] Convert T(温度变换) 这条命令启动一次温度转换而无需其他数据。 温度转换命令被执行,而后DS18B20 保持等待状态。 如果总线控制器在这条命令之后跟着发出读时间隙,而DS18B20 又忙于做时间转换的话, DS18B20 将在总线上输出“ 0”,若温度转换完成,则输出“ 1”。 如果使用寄生电源,总线控制器必须在发出这条命令后立即起动强上拉,并保持 500ms。 (5)[B8h] Recall E2(重新调整 E2) 这条命令把贮存在 E2 中温度触发器的值重新调至暂存存储器。 这种重新调出的操作在对 DS18B20 上电时也自动发生,因此只要器件一上电,暂存存储器内 11 就有了有效的数据。 在这条命令发出之后,对于所发出的第一个读数据时间片,器件会输出温度转换忙的标识:“ 0” =忙,“ 1” =准备就绪。 (6)[B4h] Read Power Supply(读电源) 对于在此命令 发送至 DS18B20 之后所发出的第一读数据的时间片,器件都会给出其电源方式的信号:“ 0” =寄生电源供电,“ 1” =外部电源供电。 DS8B20 控制时序 ( 1)复位时序 每一次通信之前必须进行复位,复位的时间、等待时间、回应时间应严格按照序编程。 图 34 DS18B20的复位时序 ( 2)读时序 对于 DS18B20 的读时隙是从主机把单总线拉低之后,在 15 秒之内就得释放单总线,以让 DS18B20 把数据传输到单总线上。 DS18B20 在完成一个读时序过程,至少需要 60us 才能完成 , 对于 DS18B20 的 写时序仍然分为写 0时序和写 1 时序两个过程。 对于 DS18B20 的读时序分为读 0 时序和读 1时序两个过程。 图 35 读时序 ( 3)写时序 对于 DS18B20 写 0 时序和写 1时序的要求不同,当要写 0时序时,单总线要被拉低至少 60us,保证 DS18B20 能够在 15us 到 45us 之间能够正确地采样 IO总 12 线上的 “0” 电平,当要写 1 时序时,单总线被拉低之后,在 15us 之内就得释放单总线。 图 36 写时序 18B20 的测温原理 DS18B20 的测温原理 是 ,低温度系数晶振的振荡频率受温度的影 响很小 ,用于产生固定频率的脉冲信号送给减法计数器 1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器 2 的脉冲输入, 其 中还隐含着计数门,当计数门打开时, DS18B20 就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。 计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将 55℃ 所对应的基数分别置入减法计数器 1 和温度寄存器中,减法计数器 1 和温度寄存器被预置在 55℃ 所对应的一个基数值。 减法计数器 1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器 1的预置值减到0 时温度寄存器的值将加 1,减法计数器 1 的预置将重新被装入,减法计数器 1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到 0时 ,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。 斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是 DS18B20 的测温原理。 18B20 对温度的处理 18B20 将转换后的温度以 9 位数据格式表示,最高位为符号位,其余 8位以二进制补码形式 表示温度值。 测温结束时,这 9位数据转存到暂存存储器的前两个字节中,符号位占用第一字节, 8 位温度数据占据第二字节。 13 DS18B20 的高速暂存存储器由 9 个字节组成,其分配如图 所示。 当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第 0和第 1 个字节。 单片机可通过单线接口读到该数据,读取时低位在前,高位在后。 温度数据表如表 33所示: 表 33 DS18B20温度数据表 温度 /0C 二进制表示 十六进制表示 符号位 5位) 数据位( 11 位) +125 0 0 0 0 0 1 1 1 1 1 0 1 0 0 0 0 07D0H + 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0008H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0000H 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 FFF8H 55 1 1 1 1 1 1 0 0 1 0 0 1 0 0 0 0 FC90H 上表是 DS18B20 温度采集转化后得到的 12 位数据,存储在 DS18B20 的两个8比特的 RAM 中,二进制中的前面 5位 是符号位,如果测得的温度大于或等于 0,这 5 位为 0,只要将测到的数值乘于 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1再乘于 即可得到实际温度。 例如当 DS18B20 采集到 +125℃ 的实际温度后,输出为 07D0H,则: 实际温度 =07D0H╳ =2020╳ =125℃ 例如当 DS18B20 采集到 55℃的实际温度后,输出为 FC90H,则应先将 11位数据位取反加 1得 370H 则: 实际温度 =370H╳ =880╳ =55℃ 无线收发模块器件选择 无线发射模块简介 F05V 是安阳市新世纪研究所推出的一款小体积、微功率 RF无线发射模块;采用 SMT 工艺,声表稳频,性能稳定,特别适合低电压电池供电。 实物图如图311。 主要特点: ( 1)超小体积,厚度 3mm ( 2)低电压、低功耗 ( 3)无数据时休眠 14 ( 4)符合 FCC 认证标准 性能参数 : 发射频率: 315MHz 工作电压: DC3V() 发射电流: 10mA/3V (连发 ) 发射功率: 8dBm 传输速率: 110k 频率稳定度: 105[声表稳频 ] 调制方式: ASK 外形尺寸: 9 20 3mm(宽 X长 X厚 ) 工作温度: 40℃ +85℃ 1正电源 3V 2地 3数据信号输入 Y外接天线 图 38 F05V引脚图 自定义编码的格式 为了提高数据传输的可靠性,必须对发送数据及发射的脉冲格式进行编码,而在接收端则必须对这些信号进行解码,才能正确恢复出原来的数据。 在这里我们使用单片机软件的方法进行编码和解码,这种编码方式相比较硬件编码器方式更加灵活,而且还可以降低整个无线 遥控系统的成本。 无线数据传输不像有线传输那样有较高的效率,它往往会受到周围环境的干扰,这时我们为了使接收端能够正确接收 1 字节的数据,采用了数据校验的方式。 我们把 3 个 半 字节长度数据作为一个码元,其中包括起始位、数据位、校验位和结束位。 本文的编码中加入了 反码校验位(对数据位取反),即对 12位的数据进行取反,得到数据位的反码 ,经过实验验证这种情况下误 码率产生的概率很低 ,可以使用。 图 37 发射模块实物图 15 图 39 自定义编码格式图 单片机对 F05V 的控制编码原理 ( 1) 编码表示形式 主控制器通过 18B20 温度传感器采集到温度以后,要对这个温度进行编码,考虑到单片机定时器的特性,我们用高低电平的持续长短来表示“ 1”和“ 0”。 高电平 30ms 低电平 30ms 宽度的信号变化来表示 “ 1” ,用高电平 60ms 低电平60ms 宽度的信号变化来表示“ 0”。 “ 1” “ 0” ( 2) 定时器控制产生数据编码 ① 用定时器 0 来控制单个数据位高低电平的变化时间 我们用单片机来设置中断模式,让其工作于定时器 0状态,定时周期分别为30us 和 60us。 当单片机检测到温度值中的二进制位为“ 1”时,会将 30us 定时装入控制字字,这样单片机就会把高低电平变化为 30us 的无线信号发送出去;当检测到二进制位为“ 0”时,会把 60us 定时装入控制字,这样又会把高低电平为 60us 的无线信号发送出去。 我们把起始位、数据位、校验位和结束位 都运用电平的变化来表示 ,这样一个完整的温度数据发送完毕、 ② 用定时器 1 来控制码元发送的时间间隔 单片机对温度的采 集是不断进行的,我们不可能只发送一个温度数据,而是采用实时发送的形式。 如果发送的频率过低,用户看到的温度就会滞后,会产生大的误差;如果发送的频率过高,单片机解码能力有限,会产生码元之间的干扰,起始位 数据位 校验位 结束位 16 并且液晶显示的频率太高用户看起来也不方便。 经过我试验的论文,码元发送的时间间隔在 1s左右,会产生良好的效果。 我们设置定时器 1 工作在方式 0,定时中断的间隔为 1s,当第一温度数据的第一位来临时开启中断, 1s 之后再进行第二个温度数据的发送。 J04v 无线接收模块简介 J04v也是安阳市新世纪电子研究所推出的一款 生接收模块,采用 SMT 贴片生产工艺,性能稳定并具有较好的接收灵敏度及性价比。 是电池供电产品的理想选择。 可以广泛应用于需要长期处于接收状态的遥控报警及单片机短距离无线数据传输系统。 主要特点: ( 1)输出无噪声干扰 (零电平) ( 2)极低功耗(工作状态 3V/ mA) ( 3)特小体积(不需要外接天线) 性能参数 : 接收频率: 315MHz 433MHz 工作电压: DC3V() 工作电流: 调制带宽: 10K 图 310 接收模块 实物 输出电平: TTL 电平 接收灵敏度: 90dBm 电路结构:超再生 外形尺寸: 10 23 5mm(宽 X 长 X 厚 ) 工作温度: 40℃ +60℃ 单片机对 J04v 的控制解码原理 这里我们使用 89S52 单片机的定时器 2中断来进行编码, 89S52 单片机的定时器不同于其他中断的是,他具有捕获功能。 在这里我们使用此定时器的下降沿中断方式,当第一下降沿来临时进入中断,定时器开始计数,第二次中断来临的时候,本次中断结束,记录时间,下次中断开启(计数器此时清 0,接受新时间),单片机对数据的采集解码以 4位为一单元。 解码步骤: 17 ( 1)外部下降沿来临时,采集数据前 2 位,如果为起始位,则准备接受接下来的数据;反之则抛弃,重新开放中断接受。 ( 2)当接受到第 26 位数据时,将第 14位到第 26位 的数据取反,然后与第3位到 第 14位的一个字节数据比较,如果相同传输证明没有错误;反之则抛弃,重新开放中断接受。 ( 3)判断数据的后 2 位是否为结束位,如果是,则证明传输正确,结束本次接受,准备下次接受;反之则抛弃,重新开放接受。 显示模块 现在市面上运用的显示器件,种类繁多,良莠不齐。 一般来说有 LED 和 LCD显示模块, LED 又分为数码管显示和点阵显示,这两种器件价格便宜,但是显示效果不是很好,所以我们选用 lCD 来显示。 LCD 显示器是一种功耗极低的显示器,在控制和仪表系统中 应用广泛。 根据 LCD 显示原理的不同,常见和常用 的 LCD可以分为字符型 LCD 和点阵型 LCD 两种。 不同的显示原理使得这两种 LCD的指令系统、接口和功能等是不相同的,各有优缺点。 结合到本次设计的实际要求,我们显示需要大一点的屏幕,而且最好是题解接口方便的为最佳,这样便与以后进行扩展,经过比较还是选用点阵 12864 型 LCD。 12986 型 LCD 的显示原理 12。基于89s52单片机的无线测温仪
相关推荐
的检测电路 ,图中 R2 为限流电阻,当有光反射回来时,光电传感器的三极管导通, 在 LM324 的 2 脚出产生低电平电压,通过 LM324处理后在 出产生高电平,返回给单片机,从而 达到检测的目的。 并通过变阻器 R3 可调节 传感器的灵敏度。 四川理工学院创新基金 第 7 页 共 19 页 231A411U1ALM324NGND
富等。 在 SCM 系统已经被广泛的应用。 液晶显示器可以分为三个类别根据功能 :Biduan 字符点阵液晶显示器、液晶显示器、点阵液晶显示器、光两种可以显示数字、字符等 ,和图形点阵液晶显示器可以显示字符和图形。 [13] 滨州学院本科毕业设计(论文) 12 本设计选择相对负担得起的字符 LCD1602 液晶显示器可以显示两行 16字符 ,使用 + 5 V电源 ,电路结构简单
其中 S9 和 S10 分别为“抢答时间调整键” 10 和“回答时间调整键”, 其对应的 I∕O 接口分别为 和 ; S11 和 S12 分别为时间“加 1”和“减 1”按键,其对应的 I∕O 接口分别为 和 ; S13 和 S14 分别为 时钟与复位模块包括时钟电路和复位电路,单片机的最小系统就是由时钟电路、复位电路及单片机构成。 单片机的时钟信号用来提供单片机片内各种操作的时间基准
DCS 与电力自动化监控系统;它应用领域很广,可以应用于电力、冶金、石油、化工等领域的数据采集与监视控制以及过程控制等诸多领域。 在电力系统中, SCADA 系统应用最为广泛,技术发展也最为成熟。 它在远动系统中占重要地位 ,可以对现场的运行设备进行监视和控制,以实现数据采集、设备控制、测量、参数调节以及各类信号报警等各项功能 ,即我们所知的"四遥"功能 .RTU(远程终 端单元 )
首先要引用 ,创建一个 MapView对象 来显示地图。 通过 MapController对象 来设置地图显示的地点以及放大的倍数,要定位地点需要构建一个 GeoPoint 对象 来表示地点的经度和纬度,然后使用 animateTo方法将地图定位到指定的 GeoPoint对象 上 ,再 新建一个 Overlay 对象 并在 上 面 标注一些图标文字信息。 通过地名定位 的设计思路 本功
id 与 tb_account 表的 _id 对应。 No 为收入信息的编号,不 同用户的收入信息存入数据库的时候,都是以 no=1 为起始的,进而往后递增。 表 7 收入信息表 字段名 数据类型 是否主键 是否外键 描述 _id Integer N Y 用户 id 太原科技大学华科学院毕业设计(论文) 6 NO INTEGER N N 编号 MONEY DECIMAL N N 收入金额