数字电压表设计学士论文.docVIP

  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文档。上传文档
查看更多
项目编号: 2015-2016学年第一学期 微机原理(单片机)课程设计 总结报告 项目名称:数字电压表设计 班级: 姓名: 学号: 微机原理(单片机)课程设计任务书 项目名称:数字电压表设计 内容与要求: 上位机:完成界面设计与通讯程序 (1)能够显示采集的电压值,及16进制数值。当超出设定阈值时,电压值有提示字母。 (2)能够设定电压阈值 (3)绘制电压变化曲线,时间轴单位1秒,电压精度0.01V (4)可以对串口进行设置 下位机:完成电路设计与控制程序 (1)将A/D由电位器采集的10进制电压值及16进制数值,显示在LCD屏上面,电压值保留小数点后2位。 (2)通过串口与上位机通讯,并传输电压值,接受阈值设置。 (3)将阈值保存至外部存储器,重新复位上电后,阈值不变。 (4)当超出电压阈值时,相应指示灯提示,将当前电压值显示在LCD上,当电压高于电压阈值时,数值后显示“-HIGH”,当电压值低于电压阈值时,数值后显示“-NORMAL”。 项目组任务分担评价表 姓名 分担任务 组内评价 时逸菲 选题,设计方案。使用C#编写上位机程序,界面美化。 4 邱铎冠 焊接电路,调试下位机程序,测试各模块功能。 6 课程设计报告评分表 内容 总体方案 硬件设计 软件设计 结果分析 明细清单 问题分析 心得体会 参考文献 程序代码 格式规范 总分 时逸菲 得分 邱铎冠 得分 微机原理(单片机)课程设计报告 I 目录 Contents TOC \o 1-3 \h \z \u 一、总体方案 h 1 二、硬件设计 h 1 三、软件设计 h 3 四、结果分析或项目所实现的功能、指标 h 23 五、明细清单 h 27 六、设计调试中遇到的疑难问题及解决方法 h 27 七、心得体会与建议 h 28 八、参考文献 h 29 一、总体方案 系统结构如图1-1所示。 A/D转换 A/D转换模块 LCD显示模块 控 制 器 上位机 外部存储器模块 图1-1 数字电压表总体功能模块示意图 图中,A/D转换模块采用TLC1549芯片,LCD显示模块采用1602液晶屏。外部存储器为X5045(作EEPROM使用),上位机为微型计算机,控制器为基于STC89C52芯片的单片机开发板(含LED)。 二、硬件设计 TLC1549 A/D转换芯片原理如图所示: X5045原理如图所示: 相关硬件设计电路设计只需参照相应手册上典型应用电路图即可。 根据开发板的原理图,确定可用的I/O口,并合理分配给1602,X5045,TLC1549三个外设。具体管脚分配可参见下位机程序或最终原理图。 最终原理图如下: 最终方案如图所示,该原理图只包含本项目所需外设的链接信息,省略了开发板上已有内容。其中P0口应接上拉电阻,如图所示。P22口连接LED用于指示电压与阈值的关系。LCD1602的硬件电路无需自己设计,直接采用开发板上的20孔排针插座即可,X5045和TLC1549硬件连接则根据相关手册和开发板自身原理图确定。 三、软件设计 下位机程序设计: 波特率设置:9600 一位起始位,8位数据位,1位停止位,无校验位。 串口通信方式1下,波特率由计数器1的计数频率和PCON的SMOD位决定,校验,计数器工作在方式2下,为8位自动重装初值计数器。其中计数器计数频率为,八位自动重装计数器向上溢出频率为经计算,为了让计数器1产生9600波特率,TH,TL应赋初值0xFD。串口通信宏定义和相关初始化代码如下: void InitUART (void) { SCON = 0x50; // SCON: 模式 1, 8-bit UART, 使能接收 TMOD |= 0x20; // TMOD: timer 1, mode 2, 8-bit 重装 TH1 = 0xFD; // TH1: 重装值 9600 波特率 晶振 11.0592MHz TR1 = 1; // TR1: timer 1开始计数 EA= 1; //打开总中断 ES = 1; //打开串口中断 } 控制1602液晶屏: 1602液晶屏输入信号包括8位数据,读写信号,选通信号,指令/数据选择信号等。根据手册所给的写数据,写指令的时序图,编写基本操作函数如下: #define uint unsigned int sbit lcden=P1^2;//定义液晶使能端 sbit lcdrs=P1^0;/

文档评论(0)

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

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

1亿VIP精品文档

相关文档