基于NiosIISOPC嵌入式高精度温度测量仪设计.docVIP

基于NiosIISOPC嵌入式高精度温度测量仪设计.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于NiosIISOPC嵌入式高精度温度测量仪设计

基于NiosIISOPC嵌入式高精度温度测量仪设计   摘要:针对传统8位温度测试仪测量精度低的缺点,利用FPGA设计基于NiosII的SOPC嵌入式高精度温度测量仪,采用了“NiosII+DS18B20”SOPC嵌入式设计结构。测试结果表明:本设计结构在抗干扰能力、测量精确和扩展性等方面具有较好的优势,有一定的实用价值。   关键词:高精度温度测量仪 可编程逻辑门列阵 SOPC NiosII   中图分类号:TH85 文献标识码:A 文章编号:1007-9416(2012)11-0179-02   1、引言   温度是人类生存和生产重要的环境因素,温度测量是现代控制系统的一个重要内容[1]。因此,准确地对温度进行测量,在现代生活和生产过程中,显得尤其重要。目前大多数的温度测量系统,采用8位的单片机进行设计,由于受到单片机的位数的限制,温度测量精度不高,很难满足对温度要求较高的场合。   针对以上情况,本文利用32位软核CPU和SOPC嵌入式技术在FPGA上设计一款高精度温度测量系统。测试结果表明:本测量仪在设计结构[2]、抗干扰能力[2]、测量精确[2]、测量速度[2]和扩展性方面[2]具有较好的优势。   2、本系统整体硬件设计框图   图1,为本设计的整体的硬件设计框图,本设计采用了基于NiosII的SOPC嵌入式设计方案,本设计的绝大部分电路在一片可编程逻辑门列阵(FPGA)上实现,包括NiosII处理器、Avalon数总线、JTAG控制器、EPCS控制、SDRAM控制器、LCD1602控制器、DS18B20读写接口电路。这些电路模块通过Avalon总线相连。   图1 本系统整体硬件设计框图   由于温度传感器DS18B20不能单独工作,它要与一个CPU的配合使用,在本设计中,采用了32位的软核NiosII处理器,Nios II是由Altera公司推出32位RISC软核CPU,在可编程片上系统(SOPC)中得到了广泛地应用。SDRAM控制器起到控制SDRAM芯片作用,用于存放NiosII软核CPU运行时的程序和在运行时所产生的重要的数据。JTAG UART控制器通过JTAG线与上位PC机相连,实现程序的下载和在线调试功能。EPSC控制器及其外围的EPSC存储芯片,构成一个串行的电可擦除的存储系统,主要用于存储FPGA配制文件与NiosII软核CPU执行程序代码。1602 LCD控制器及其外围1602液晶显示屏,构成字符显示设备,用于显示当前测得的温度值。在发开过程中,由于SOPC Builder开发工具包中没有现成的DS18B20读写控制IP核,因此,在设计过程中,设计者通过自定义用户逻辑单元的方法,自定义DS18B20读写接口,并把这个DS18B20读写接口添加到SOPC硬件系统,以便顺利地完成对外围的温度传感器BS18B20进行读写操作。   3、温度传感器DS18B20简介   DS18B20是Dallas公司生产的新一代智能化数字式温度传感器[1-4],采用了单总线通信方式,其直接与微处理器的某一个I/O口相连,并能实现双向通信。DS18B20的工作电压使用范围宽(3.0~5.5V),可以采用外部供电方式,也可以采用寄生电源方式,即当总线DQ为高电平时,窃取信号能量给DS18B20供电[5]。DS18B20的温度测量范围,为-50至125℃,分辨率为9至12位,并可编程可设,当分辨率设为12位时,DS18B20的温度分辨率能达0.0625℃,从而保证温度系统的高精度,因此,DS18B20被广泛地应用于工业、农业、航天航空等领域中的对温度要求较高的场合。   3.1 基于DS18B20的单线通信协议   DS18B20温度传感器,是采用单线通信协议与控制器进行数据交换。DS18B20时序由复位时序、写时序和读时序三个基本组成。复位时序是DS18B20温度传感器的最基本的一个时序,在DS18B20与控制器交换数据之前,必需要进行一次复位操作。这个时序的具体的实现过程为:首先由CPU向DS18B20温度传感器发出一个宽度不小于480μs低电平,然后CPU释放总线,等待15-60μs之后,CPU检测由DS18B20发回的复位操作成功信号,如果收到大约60-240μs低电平信号时,则DS18B20的复位操作成功,如果收不到这一信号,说明DS18B20复位操作不成功。DS18B20的写时序图的电气特点为,首先由CPU启动写操作,即把数据总线设为高电平“1”,然后设为低电平“0”,然后延时15μs后,根据要写的数据情况(是写“1”还是写“0”),把数据输出端置于高电平或继续保持低电平,最后等待DS18B20采集此数据线,写操作的周期大约为60-120μs。DS18B20的读时序图基本上与写时序

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档