关键词不能为空

当前您在: 主页 > 英语 >

超声波测距实验

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-09 08:25
tags:

-

2021年2月9日发(作者:tired是什么意思)


实验


7


超声波测距实验



< br>1


)实验目的



?



掌握超声波测距的原理



?



掌握超声波测距的软件编程




2


)实验器材



电源


POWER


模块、


测距


&


振动


&


压力


&


角度模块、


主控


制器模块、


LCD1602


、超声波模块、连接线




3


)实验程序



ceju



#include


#include


#include



#define uchar unsigned char


#define uint



unsigned int



//#define Trig P2^6



//#define Echo P2^7



void Time0_Init()



{





TMOD |=0X01;





TH0=0;




TL0=0;




ET0=1;







EA=1;





}







sbit Trig=P2^6;




sbit Echo=P2^7;




double t;




int s;





int ge;




int shi;




int bai;



void main(void)




{





Time0_Init();




lcd_init();







//< /p>


定时


0



工作方 式


1,16


位定时器




//


允许


T 0


中断



//


开启总中断




while(1)



{





Trig=0;




Trig=1;




delay_ms(1);




Trig=0;





while(Echo==0);




{




}




TR0=1;





while(Echo==1)




{




}





TR0=0;




t=(double)(TH0*256+TL0)*12.0/11.0592;




TH0=0;




TL0=0;




s=(int)340*t/20000;






ge=s%10;




s=s/10;




shi=s%10;




s=s/10;




bai=s;














delay_ms(100);











lcd_display_str(0,0,










lcd_1602_display_num(1,1,bai);










lcd_1602_display_num(2,1,shi);










lcd_1602_display_num(3,1,ge);



}



}






4


)测试步骤



1.


将超声波模块插入测距


&


振动


&


压力


&


角度传感器模



J5


,按表


1


的连线关系连好线。给模块上电。


2.


编写程序,并下载到主控制器。



3.


用物体挡住超声波模块,


观察液晶显示的距离。


移动


物体,观察液晶显示的距离是否与实际吻合。






5


)实验结果



液晶显示屏上显示超声波模块 距离阻挡物的距离(直线


距离)


,最大可到

400cm


左右。

























实验


8



PWM


直流电机调速实验


< p>


1


)实验目的



?



了解单片机硬件

< br>PWM


的配置方法



?



掌握直流电机速度的控制方法




2


)实验器材



电 源


POWER


模块、


CPU_51


模块、速度


&


加速度度传

< br>感器模块、


LCD1602


、超声波模块、连接线




3


)实验程序< /p>




main.c



#include


#include


#include




int ge,shi,bai,age,ashi;



sbit KEY1=P1^4;


int i=0;


int a;


//


定时器初始化



void Time0_Init()


{


TMOD |= 0X01; //


定时


0


,工作方式


1


< br>16


位定时器



TH0 = (65536-46080)/256; //


定时时间:


50 ms



50ms


后进入中




TL0 = (65536-46080)%256;


ET0 = 1; //

允许


T0


中断



TR0 = 1; //


启动定时器


0


EA = 1; //


开启总中断



}


void Time1_Init()


{






}




int count,speed = 100


/*


定时器


0


中断函数



count


用于计数,计满即是


1s< /p>



speed


变量存

1s


内得到的脉


冲数。



*/


TMOD |= 0x50; //

定时器


1


,工作方式


1

< p>


16


位计数器



TH1 = 0; //


计数器赋初值



TL1 = 0;


TR1 = 1; //


启动计数器



void Time0_Int() interrupt 1


{


count++;


//lcd_1602_display_num(1,0,2);



if(count > 19)


{


speed = TH1*256+TL1; //


取得


1s


,计数器


1


得到 的脉冲数



count = 0;


TH1 = 0;


TL1 = 0;





}


TH0 = (65536-46080)/256; //


定 时器


0


,重新赋初值



TL0 = (65536-46080)%256;


}





/*PWM


初始化


< br>PWM


的频率是


11.0592/256 MHZ


,通过改变


CCAP0H


< br>CCAP0L


的值,可以改变


PWM

的占空比。



*/



void PWM_Init()


{



//PCA


工作模式寄存器,设置< /p>


PCA/PWM


时钟源输入为



sysclk/12


关闭


PCA


溢出计数中断






CMOD = 0X00;


CCON = 0X00;




CCAPM0 = 0X42;


//PCA


控制寄存器




//PCA


比较

/


捕获寄存器,


设置


P1.3


pwm


输出,无中断





CL = 0X00;



CH = 0X00;





//PCA



16


位计数器


< br>//PCA


捕获


/


比较寄存器, 当


PCA


模块


用于

PWM


模式时,他们用来控制输出的占空比




CCAP0L = 0XC0;//


占空比


25% CCAP0H=CCAP0L= 0X80


时占空比


50% 0(


ˇ


?


ˇ)



0X40




75%





}






int b;


void main(void)


CCAP0H = 0XC0;


CR = 1;



//


启动


PCA


定时器



{












while(1){



while(KEY1){;}//


开关不闭合不改变



if(i==0)


{CCAP0L = 0XC0;



CCAP0H = 0XC0;



a=25;}


else if(i==1)








{CCAP0L = 0X80;



CCAP0H = 0X80;



a=50;}


else



{CCAP0L = 0X40;









CCAP0H = 0X40;






a=75;}


int test_li=0


lcd_init();


Time0_Init();


Time1_Init();


PWM_Init();




















































b=speed;











ge=b%10;


b=b/10;


shi=b%10;


bai=b/10;


age=a%10;


ashi=a/10;







lcd_display_str(0,1,












lcd_1602_display_num(7,1,bai);












lcd_1602_display_num(8,1,shi);


























}






lcd_1602_display_num(9,1,ge);

lcd_display_str(0,0,


lcd_1602_display_ num(9,0,age);


lcd_1602_display_num(10,0,ashi);








i++;


i=i%3;


delay_ms(1000);


}




4< /p>


)测试步骤



1.


按照连线方法连线。



2.


自行编写主程序



3.


给系统上电。



4.


观察液晶屏显示的转速是否正确,


连续按下轻触开关


K EY1


,观察液晶屏显示的转速和占空比是否变化。




5


)实验结果



液晶显示屏上第一行显示占空比,第二行显示转速。占


空比随按键按 下变化,同时转速也发生变化。占空比大时转


速快。














实验


9


红外对管转速测量实验



< p>
1


)实验目的



?



了解电机驱动的原理



?



了解红外对管的工作原理



?



掌握使用红外对管测速的方法




2


)实验器材



电 源


POWER


模块、红外传感器模块、主控制器模块、


LCD1602


、超声波模块、连接线




3


)实验程序



main.c



#include


#include


#include




int ge,shi,bai,age,ashi;



sbit KEY1=P1^4;


int i=0;


int a;


//


定时器初始化



void Time0_Init()


{

-


-


-


-


-


-


-


-



本文更新与2021-02-09 08:25,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/620034.html

超声波测距实验的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文