超声波模块
电路连接
超声波HCSR04模块有四个引脚,VCC,GND,TRIG和ECHO。
VCC接5V即可。
TRIG引脚负责发射超声波信号的信号引脚。这个引脚需要用超过10us的高电平来启动,所以写了一个20us的函数。每一点HCSR04会发射8个40khz的方波。方波发射后,ECHO引脚会输出高电平。
ECHO引脚是用来测量距离的数据引脚。当一个超声波信号发射后,ECHO引脚会输出高电平。当ECHO引脚直到检测到超声波信号回来的时,ECHO引脚输出低电平。
//以定时器0和定时器1为例
#define uint unsigned int
uint PWM=0; //定义PWM值,控制电机转速
uint pwm=0;
sbit IN11 = P1^0; //定义逻辑口
sbit IN21 = P1^1;
sbit IN31 = P1^2;
sbit IN41 = P1^3;
sbit a1=P2^1; //定义驱动使能口a1
sbit b1=P2^2; //定义驱动使能口b1
sbit RX=P1^6;//定义超声波接收端Echo
sbit TX=P1^7;//定义超声波控制端Trig
uint i=0,j=0;
void Time() //定时器0和1初始函数
{
TMOD |= 0x11; //设置定时器0方式为1 定时器1为方式1
// TMOD |= Ox01; //设置定时器0方