- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
串口的模拟数据采集系统设计论文
串口的模拟数据采集系统设计论文
基于串口的模拟数据采集系统设计
基于串口的模拟数据采集系统设计
1.设计要求:
设计一个模拟数据采集系统的基本要求如下:
1.采样电压范围:0—10V
2.测量误差小于:1mV
3.采样间隔:500mS
4.串口字符串输出电压值:每秒2次
5.可以自动输出,可以命令读取。
2.系统结构框图
本系统是以单片机AT89C51为核心,实现对模拟数据经串口的采集传输。系统结构框图如图1所示。数据采集模块采集模拟信号后,经MCP3204将模拟电压转换成相应的数字信号并送入单片机系统,进而单片机数据进行处理,之后将结果送LED数码管显示。
图 1 模拟数据采集系统框图
3.实验原理图:
本系统主要是由AD转换器、AT89C51的数据处理、4位的LED显示、串口传输等模块组成。由于需要检测0到10V的电压,所以用到了滑动变阻器;模块AD转换是用MCP3204,但由于转化的电压只能是0到5V,故采用了两个阻值相等的电阻分压,而且比较了第五位数据大小看是否应该进位,以减小误差,虽第五位数据可能不是很有效,但是还是能起到一定的效果。单片机AT89C51则主要是处理数据和模块之间的通信。MCP3204主要就是由CH0口来进行模数的转换。4位的LED功能就是显示当前的电压值,由于要显示小数点所以LED的DP口由单片机的P1.0口来单独的控制。开关则有与之相对应的功能。其电路仿真图如下
1
基于串口的模拟数据采集系统设计
图2所示:
图2系统的电路仿真原理图
4.程序框图
4.1.主程序流程设计
主程序流程图如图3所示,初始化是为了设定扫描LED时间,数据采集就是AD转换后的数据,数据处理主要是由单片机完成,处理后的数据就由P0口传出,由LED显示出来。
图3主程序流程框图
2
基于串口的模拟数据采集系统设计
4.2.MCP3204数据采集
MCP3204数据采集1次需要输入 5个控制位,当控制位输入完成后留1个空位的时间开始输出数据,数据长度是12个位,每次采集共18个时钟周期。每个时钟的上式沿数据进入ADC转换器,每个时钟的下降沿从ADC输出1位转换的结果。MCP3204数据采集程序流程图如图4所示:
图4 MCP3204数据采集程序流程图
4.3显示子程序
由P2.4口控制的输出显示,其最先开始显示的为数字电压值,当P2.4口输入一个低电平时,就会显示当前电压值。由于显示当前电压值时要用到小数,所有由P1.0口来控制小数点的输出。其大体流程图如下所示:
3
基于串口的模拟数据采集系统设计
图5 显示子程序流程图
5.仿真过程情况
由于模拟信号电压范围为0~10V,而MCP3204转换的精度是12位,可能在实验的时候还是有一定的误差,但在处理第五位数据时进行了判断,因此减小了一定的误差。其部分数值显示如下图6所示:
4
基于串口的模拟数据采集系统设计
图6 仿真结果
6.设计的优缺点
1.本设计在有限器材下设计出了要求所需的结果,因只能用MCP3204器件,而他的精度只有12位,电压只能是0-5V,故要把测试电压减半,但输出时又要要乘2,这就扩大了误差,但是我们可把结果精确到小数点第4位,这在一定程度上减小了误差。
2.由于采用了电阻分压,并且要求测试结果精确度高,所以对两个电阻阻值是同等大小要求很高。这在实际使用中可能有一定的麻烦。但是所用器件简单,这可以在一定程度上节约了成本。
3.如果要求精度特高的话,建议使用16位的AD转换器,但成本可能也一样提高。
4.如果有一个器件可以使得未知电压直接减去5V,那么将会让测试结果更好。
7.设计总结
由于在本次设计中所使用的基本都是大学所学知识,因此在一定程度上巩固了以前的知识,并对串口的通信知识有了更深一层的认识。另外,由于所使用的逻辑器件基本都忘光了,幸好由于这次实验和这门课程,让我重新的复习了一遍以前的知识,当然从中也学到了不少新的知识。在实际仿真中遇到了不少麻烦,许多问题都是在网上查找和同学们的帮助才得以解决,因此对那学同学我很是感激。同时也感谢老师对我这么课的教导,他的不少上课知识在设计中都用到了,实用性还是挺不错的,比那些只学理论的课好了不少。
5
基于串口的模拟数据采集系统设计
附录:
#includelt;reg51.hgt; //定义寄存器和端口
sbit DS
文档评论(0)