版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于FOGA的环境温度的采集及数据通信分析基于FOGA的环境温度的采集及数据通信分析 1 11.2DS18B20与FPGA单路通信 31.2.1DS18B20简介 3 61.2.3DS18B20与FPGA通信 81.3FPGA的UART接口设计 1.1.1UART通信协议 1.1.2UART接口设计 加热还是降温,以实现温度控制。第二章已经说过,本设计选用DS18B20温度传感器实现对环境温度的采集,在DS18B20获取了环境温度后,传给FPGA进功能上能够完成相同的工作,也就是说一个基于FPGA的设计,能够通过VHDL实现,也就能够通过VerilogHDL实现,二者没有本质上的区别。对于这两种硬件编程语言,笔者在本科学习期间都曾接触过,亲身使用后对比觉得,VHDL比对简单。因此,现在多数的FPGA开发往往使用VerilogHDL。根据任务书的要在对智能温控器的各个模块进行设计时,本次设计使用VerilogHDL和口2)定义输入输出口及模块的各个引脚。3)使用VerilogHDL编写程序完成模块的各项功能。4)参照basys3开发板管脚分配表编写约束文件。5)进行综合和实现,如果报错,根据Vivado给出的提示进行修改。DS18B20的内部结构如图3-2所示。存储器和控制逻辑存储器和控制逻辑温度传感器产生器单线端口探测光刻ROM中包含64位序列号,它的(低位)前8位是产品类型编码,中间48位是每个温度传感器的唯一序号,最后8位是前面56位的CRC(循环冗余校验)码,如图3-2所示。这64位序列号是在出厂前被光刻好的,可以看作是MSB图3-364位光刻ROM温度传感器完成温度采集的工作,测量结果以16位符号扩展的二进制补码的形式提供,存放形式如图3-4所示。BIT14BIT14SSSSS表3-1所示。温度(℃)数据输出二进制十六进制0是在工作模式还是在测试模式,一般是在工厂中将其设为测试模式,即1,测试结果正确则准备出厂,并将该位设置为工作模式,即0。中间的R1和RO供用户设置分辨率,如图3-5所示。11111所以,作为用户的我们能操作的只有R1和RO这两位,不同的二进制数值对应的分辨率如表3-2所示。009011011在DS18B20出厂时,R1R2被设置为“11”,即12位分辨率,本设计任务书中要求的温度分辨率为0.0625℃,恰好对应12位,所以在设计过程中不需要进成后再进行温度的读取。本设计用到的12位分辨率的转换时间是750ms,所以在设计时至少要留出750ms的转换时间,设计时如果忽略这一点,将会导致结存储器包括9个字节的暂存存储器和掉电不丢失的EEPROM存储单元,如图3-6所示。012345012345678TH用户字节1TL用户字节2配置寄存器保留保留保留TH用户字节1TL用户字节2图3-6内部存储器转换得到的温度值以二进制补码形式存放在暂存器的第0和第1个字节中。DS18B20有数据总线供电(即寄生电源)和外部供电两种供电方式。相比的VCC引脚与basys3开发板的+5V相连,无非是比数据总线供电方式多用到一从机等待15~60us写操作时序图如图3-5所示:主机写0时隙主机写0时隙←60us<主机写时隙<120us→主机写1时隙←从机采样时间窗口→与写操作一样,读操作至少需要60us,并且至少需要经过lus的恢复时间才读操作时序图如图3-6所示:主机读0时隙主机读1时隙在图3-4、3-5、3-6中,黑色实线代表系统主机拉低总线,灰色实线代表主在介绍了DS18B20结构和单总线通信原理的基础上,本节将介绍DS18B20DS18B20的指令包括ROM操作指令和读DS1820温度传感器ROM中的编码(即64位地址)编码相对应的DS1820使之作出响应,为下一步对该DS1820的用于确定挂接在同一总线上DS1820的忽略64位ROM地址,直接向DS1820发温度变换命令。适用于告警搜索命令执行后只有温度超过设定值上限或下限的片子启动DS1820进行温度转换,12位转换时最长为750ms(9位为93.75ms)。结果存入内部9字节RAM中。写暂存器令之后,是传送两字节的数据。复制暂存器将RAM中第3、4字节的内容复制到EEPROM将EEPROM中内容恢复到RAM中的第3、4字读DS1820的供电模式。寄生供电时DS1820源供电DS1820发送“1”。温度转换流程如图3-7所示。读取温度初始化初始化1.进行ROM操作1)主机复位操作,即DS18B20初始化。2)主机对DS18B20写跳过ROM指令(CCH)。3)主机对DS18B20写启动温度转换命令(44H)。2.进行RAM操作1)主机复位操作。2)主机对DS18B20写跳过ROM指令(CCH)。用Vivado平台进行设计,实现DS18B20与FPGA的通信。RESET1:begin/初始化1换state<=WAIT_800MS;//进入下一状态,等待RESET2://第二次初始化,此处代码和第一次初始化相state<=READ1;//进入下一状态,读取温度发送数据端数据线TXD和RXD的电平标准为:逻辑1=-3V~-15V;逻辑0=+3~+15Vbasys3开发板上并没有成型的UART接□,所以我们需要使用VerilogHDL符包含10位(1个起始位,1个停止位,8个数据位),此时的波特率为2400Bd。传输时序如图3-8所示。LSBUART的信号线上共有两种状态,分别用逻辑1和逻辑0表示,即高电平和其中UART各位的意义如下:1)起始位(StartBit):发出逻辑0信号,表示传输字符的开始。2)数据位(DataBits):可以是5~8位逻辑0或1。常见的数据位为8位,同样,本设计也是采用8位数据位进行数据的传输与接收。3)校验位(ParityBit):数据位加上这一位,得到1的数目为奇数或偶数,4)停止位(StopBit):字符数据的结束标志,可以是1位、1.5位、2位的高电平。本次设计使用1位的高电平表示一个字节传输的结束。5)空闲位(IdleBit):处于逻辑1状态,表示当前线路上没有数据传送。使用状态机描述总线一端的Rx端□的状态转换图如图3-9所示。Rx=1并持续一个时钟复位taTx=1并持续一个时钟Tx=1如图3-11所示,首先要对串□调试助手进行设置,电脑的端□是COM6,波特率为9600,接收和发送都是十六进制,其余设置默认即可。友善串口调试助手友善串口调试助手一□波特率9600☑自动换行□自动重发1000ms01010200038C040005010600070008000900然后向串口发送数据“01010200038c04000501060007
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学三年级数学《寒假生活巧巩固:素养导向的实践性作业设计》教案
- 小学四年级数学《折线统计图》单元整体教学设计
- 3.2 代数式的值(第2课时 公式中的代数式求值)(教学设计)
- 数据资源市场化流转与价值转化机制探析
- 组织盈利优化方案与典型实例汇编
- 旅游业务经理旅游策划与推广岗位绩效衡量表
- 基于生成模型的创新技术研究与应用
- 企业数据资产全生命周期管理框架构建与最佳实践路径研究
- 2025-2030年宁夏手抓羊肉店行业跨境出海战略分析研究报告
- 人教四年级数学下册三角形《三角形的分类》公开课教案
- T/YH 1037-2025商业小卫星产品保证要求
- 中小学正高职称评审答辩高频题及高分答案育人实践与反思
- 2026年餐厨垃圾处理项目运营成本控制与核算
- 无仓储危险品公司安全管理制度、操作规程汇编
- 2025年福州市社区工作者招聘考试笔试试题及答案解析
- 2026年上海市嘉定区社区工作者招聘笔试模拟试题及答案解析
- 九年级上册物理期中必考-根据电路图连接实物图练习题(含答案)
- DB41-T 2379-2022 油茶主要虫害防控技术规程
- 广东省佛山市2026届高三上学期教学质量检测(一)英语试卷(含答案)
- 2025年新凯来硬件笔试题及答案
- TCTESGS-《长江流域和澜沧江以西(含澜沧江)区域河湖管理范围内建设项目防洪影响补救措施专项设计报告编制导则》编制说明
评论
0/150
提交评论