单片机课程设计报告--远程温度采集系统.docVIP

单片机课程设计报告--远程温度采集系统.doc

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

单片机原理及应用 课程设计 学院: 班级: 学号: 姓名: 指导老师: 日期: 单片机应用技术课程设计任务书 远程温度采集系统 设计任务及步骤 使用proteus作为开发工具,完成双机通讯的温度采集功能: 使用LM20温度传感器、AD1674模数转换器、AT89C51单片机、4位拨码开关组成温度采集模块(从机),拨码开关用于设定模块的地址(00-15),从机在采集完温度信号后通过串口发送到主机; 使用AT89C51单片机、4位拨码开关、LED显示组成温度接收模块(主机),4位拨码开关用于设定通讯波特率(1200,2400,4800,9600)当主机波特率改变后,从机波特率也自动改变,上电运行显示波特率信息(停3S),之后显示接收地址与温度信息; 论文要求 ① 画出整个系统的电路原理图; ② 叙述各功能模块的工作原理; ③ 编写各模块程序; ④ 论文中应附上程序流程图; ⑤ 书写论文时注意结构合理,层次分明,在分析时注意语言的流畅。 工作计划 布置任务,查找资料 电路和程序设计 ③ 设计程序调试结果验收 ④ 论文答辩 指导教师 签 名 年 月 日 系 意 见 系主任签名: 年 月 日 课程设计内容及步骤 使用proteus作为开发工具,完成双机通讯的温度采集功能: 使用LM20温度传感器、AD1674模数转换器、AT89C51单片机、4位拨码开关组成温度采集模块(从机),拨码开关用于设定模块的地址(00-15),从机在采集完温度信号(间隔5S)后通过串口发送到主机; 使用AT89C51单片机、4位拨码开关、LED显示组成温度接收模块(主机),4位拨码开关用于设定通讯波特率(1200,2400,4800,9600)当主机波特率改变后,从机波特率也自动改变,上电运行显示波特率信息(停3S),之后显示接收地址与温度信息。 扩展要求: 将其设计成:当定时器达到一定时间时,从机没有收到来自主机的信号,则从机“发光报警”。当遇到故障时,也会发光报警,即将从机上的RXD或TXD接按键开关,接地或是接电源作为模拟信号。收到主机的信号后,又能恢复正常。 整个系统的电路原理图: 各功能模块的工作原理: 温度采集模块 使用LM20温度传感器、AD1674模数转换器、AT89C51单片机、4位拨码开关组成温度采集模块(从机),拨码开关用于设定模块的地址(00-15),从机在采集完温度信号(间隔5S)后通过串口发送到主机; (1)LM20经AD1674转换为12位数据给从机 LM20温度传感器经过电压跟随器后输入到AD1674的10VIN口,AD1674组成双峰。STS、CS、A0、CE、RC分别接到从机的P0-P4口实现AD1674的控制作用。一开始CE=1,CS=0,RC=0,A0=0启动12位温度转换,然后等待数据采集结束while(STS==1); 接着CE=1,CS=0,RC=1,12/8=1,A0=0允许高八位数据并行输出,最后CE=1,CS=0,RC=1,12/8=0,A0=1允许低四位数据并行输出。读出的12位数据存放在变量temp中。经过AD1674转换后输出的结果精确到(10.0/4095.0)。若LM20温度转换为电压值是1.13598v时,经过AD1674转换后输出的12位数为1.13598*4095/10=465转换为2进制为1。12位数据经过公式转换T = (1.8525-temp*10/4095.0)*10000/11.79.然后把低位小数位给temp1,temp就为整数部分,接着就是等待发送给主机。 /*读取AD1674转换结果*/ uint AD1674_Read(void) { uint temp; CS = 1; CE = 0; //初始化,关闭数据采集 CS = 0; A0 = 1; RC = 0; CE = 1; //CE=1,CS1=0,RC=0,A0=0启动8位温度转换 _nop_(); while(STS==1);//等待数据采集结束 CE = 0; //芯片使能关闭 RC = 1; A0 = 0; CE = 1; //CE=1,CS1=0,RC=1,12/8=1,A0=0允许高八位数据并行输出 _nop_(); temp = P1;//读取转换

文档评论(0)

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

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

1亿VIP精品文档

相关文档