基于51单片机的US-100(超声波模块)1602显示程序课件.docVIP

  • 13
  • 0
  • 约7.16千字
  • 约 7页
  • 2019-05-28 发布于湖北
  • 举报

基于51单片机的US-100(超声波模块)1602显示程序课件.doc

/*****************************************************************************/ Name: LCD1602+US-100+STC89C52 HC-SR04 超声波测距模块串口程序 晶振: 11.0592M Designed by : 庶野琴风 Date:2016/08/11 QQ: 397739038 接线:模块 TRIG接 P3.1 ECH0 接 P3.0 RS(CS) 接 P2.0; RW(SID) 接 P2.1; E(SCLK) 接 P2.2; BF 接 P0.7; /*****************************************************************************/ #includereg52.h #includeintrins.h #define nops {_nop_();_nop_();_nop_();_nop_();} /****************************** 引脚及变量的定义 ****************************/ sbit RS = P2^0; // 寄存器选择位 sbit RW = P2^1; // 读取选择位 sbit E = P2^2; // 使能信号位 sbit BF = P0^7; // 忙碌信号位 unsigned char code Tab[] = {0123456789}; unsigned char code string[] = {range:2cm--4.5m}; char part,ge,shi,bai; char idata GLengthLoh[2]; // 接收缓冲区 bit success_flag; // 定义测试成功标志位 /*********************************************************/ /********* 函数名称: delay1ms(void) ******************/ /********* 函数功能:延时 1 毫秒 ******************/ /********* 函数参数: void ******************/ /*********************************************************/ void delay1ms(void) // 误差 -0.651041666667us { char a,b; for(b=102;b0;b--) for(a=3;a0;a--); } /*********************************************************/ /********* 函数名称: delaynms(char n) ******************/ /********* 函数功能:延时 n 个 1 毫秒 ******************/ /********* 函数参数: n ******************/ /*********************************************************/ void delaynms(char n) { char a; for(a = 0;a n;a--) delay1ms(); } /*********************************************************/ /********* 函数名称: BusyTest(void) ******************/ /********* 函数功能:判断液晶模块忙碌状态 ******************/ /********* 函数参数:返回值 :result ******************/ /*********************************************************/ unsigned char BusyTest() { bit result; RS = 0; RW = 1; //RS 为低电平, RW 为高电平时,可以读状态 E = 1; // 使能为高电平时可读取信息 nops; // 延时 40us,给硬件反应时间 result = BF; // 将忙碌标志位电平赋给 result E = 0; // 使能 1 到 0:执行指令 return result; } /*********************************************************/ /

文档评论(0)

1亿VIP精品文档

相关文档