- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
超声波模块原理图:
发射
接收原理图
PCB:
51单片机原理图:
软件部分
C语言程序:
/*====================================================================
调试要求:
1.MCU:AT89S52芯片或AT89C52
2.晶振:12MHz
调试注意:
本程序带温度补偿,采用DS18B20测量温度
1.LCD1602液晶屏有显示后,才接入超声波模块。
2.注意超声波模块电源的极性。不清楚请参好淘宝的电路图
3.没有选用频率为12MHz晶振,用了别的频率晶振,单片机定时器的测量值与
发出的40KHz频率脉冲不对。
4.使用者经常误发出20KHZ脉冲当40KHZ脉冲。(40KHz频率脉冲,周期25us,
占空比为50% = 12.5us)
5.如果是用开发板调超声波模块,请检查开发板上的电路是否与超声波模块的
控制脚复用了, 若复用了,请通过跳线分开发板上的电路。
6如果使用的是万用板,请确定单片机的复位电路和晶振电路是否正常,同时
单片机的31脚(EA)记得 接高电平。
====================================================================*/
#include reg52.h
#include intrins.h
#define uchar unsigned char
#define uint unsigned int
//===============================LCD1602接口定义=====================
/*-----------------------------------------------------
|DB0-----P2.0 | DB4-----P2.4 | RW-------P0.1 |
|DB1-----P2.1 | DB5-----P2.5 | RS-------P0.2 |
|DB2-----P2.2 | DB6-----P2.6 | E--------P0.0 |
|DB3-----P2.3 | DB7-----P2.7 | 注意,P0.0到P0.2需要接上拉电阻
---------------------------------------------------
=============================================================*/
#define LCM_Data P2 //数据接口
#define Busy 0x80 //用于检测LCM状态字中的Busy标识
sbit LCM_RW = P0^1; //读写控制输入端,LCD1602的第五脚
sbit LCM_RS = P0^2; //寄存器选择输入端,LCD1602的第四脚
sbit LCM_E = P0^0; //使能信号输入端,LCD1602的第6脚
//===============================超声波模块定义========================
sbit RemPin = P3^2;// 接收端(这个不能修改,因为是外部中断(INT0)的引脚)
sbit TxPin = P3^1;// 发射端
//***********************************************************************
//ds18b20数字温度传感器控制引脚定义
sbit dq_ds18b20=P3^3;//定义控制DS18B20
//***********************************************************************
//LCD显示模块的函数声明
void WriteDataLCM (uchar WDLCM);//LCD模块写数据
void WriteCommandLCM (uchar WCLCM,BuysC); //LCD模块写指令
uchar ReadDataLCM (void);//LCD模块读数据
uchar ReadStatusLCM (void);//读LCD模块的
原创力文档


文档评论(0)