网站大量收购独家精品文档,联系QQ:2885784924

【最新资料】单片机水流流速实习报告.doc

  1. 1、本文档共80页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【最新资料】单片机水流流速实习报告.doc

单片机课程设计报告 院系名称 : 自动化学院 学生姓名 : 3号:张拓航 8号:杨永发 13号:姚义飞 18号:杨翰林 专业名称 : 测控技术与仪器 班 级 : 测控1102班 时间 : 2014.09.15-2014.09.28 水流流速仪的设计 一、设计目的 使用MJ-HZ21FA传感器测量水的流速,实时显示其值。并相应地做出动作:当高于某值时,控制电机正转,当低于另一值时,控制电机反转。同时,从串口输出流速值。 二、设计要求 (1)熟悉MJ-HZ21FA传感器,ADC0809的使用; (2)熟悉电机控制方法。 (3)熟悉主控制器的使用。 三、设计器材 STC52单片机 (1个) 极性电容(33pF,2个) MJ-HZ21FA传感器(1个) 排阻(10K) 电阻(1K 200 8.2K)(3 个) 晶振(12MHz ,1 个) 电机 ULN2003驱动电路 LCD1602 四、水流流速仪系统原理 ?水流流速仪的系统框图如下图所示: 五、设计方案及分析(包含设计电路图) 4.1 硬件电路设计 4.1.1 单片机最小系统控制模块设计 采用STC52单片机控制。STC52单片机是一种低功耗、高性能CMOS8位微控制器,具有 8KB的系统可编程Flash 存储器。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路,能够满足题目设计的所有要求,加之我们对STC52单片机也比较熟悉,最小系统电路图如图4所示 图4 4.1.2 显示模块设计 采用LCD1602显示,连接电路简单,显示电路连接图如下所示 4.1.3传感器采集模块 本系统采用MJ-HZ21FA传感器采集信号,该模块使用广泛模块性能稳定,测度精确 4.1.5 其他电路设计 a.复位电路 单片机在RESET端加一个大于20ms正脉冲即可实现复位,上电复位和按钮组合的复位电路如下: 在系统上电的瞬间,RST与电源电压同电位,随着电容的电压逐渐上升,RST电位下降,于是在RST形成一个正脉冲。只要该脉冲足够宽就可以实现复位,即ms。一般取R1,C22uF。当人按下按钮S1时,使电容C1通过R1迅速放电,待S1弹起后,C再次充电,实现手动复位。R1一般取8.2K。 b.时钟电路 当使用单片机的内部时钟电路时,单片机的XATL1和XATL2用来接石英晶体和微调电容,如图所示,晶体一般可以选择3M~24M,电容选择30pF左右。我们选择晶振为12MHz,电容33pF。 4.2软件程序设计 软件分为两部分,主程序和中断服务程序主程序完成初始化工作、超声波发射和接收顺序的控制。外部中断服务子程序主要完成时间值的读取、距离计算、结果的输出等工作。为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1 ms(这也就是超声波测距仪会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。由于采用的是1 MHz的晶 振,计数器每计一个数就是1μs,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按计算,即可得被测物体与测距仪之间的距离,设计时取0℃时的声速为34 m/s则有:?d=(c×)/2=170T0/10000cm 其中,T为计数器T的计算值。 附录Ⅱ:程序代码 1.stepmotordrive.h #ifndef __STEPMOTORDRIVE_H__ #define __STEPMOTORDRIVE_H__ #include reg52.h #include LcdDrive.h sbit SMA = P2^4; sbit SMB = P2^5; sbit SMC = P2^6; sbit SMD = P2^7; /*********************************************************** *function: forward *para: void *desc: 电机正转一圈 ************************************************************/ void forward(void); /*********************************

文档评论(0)

zhangningclb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档