超声波测距C程序

超声波测距C程序

ID:41032541

大小:36.50 KB

页数:5页

时间:2019-08-14

超声波测距C程序_第1页
超声波测距C程序_第2页
超声波测距C程序_第3页
超声波测距C程序_第4页
超声波测距C程序_第5页
资源描述:

《超声波测距C程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、#include#include/***************************数码管为共阴数码管***************************/sbits0=P2^7;//个位选通sbits1=P2^6;//十位选通sbits2=P2^5;//百位选通sbits3=P2^4;//千位选通sbitdp=P0^7;//小数点sbitin=P3^2;//外部中断,接CX20106的脚sbitcsb=P3^3;//40KHz方波输出脚#definese

2、gP0//数码管的数据口为P1口#defineucharunsignedchar#defineuintunsignedint#definenop_nop_()/****************************/voidinit(void);//初始化voiddelay_nms(uintn);//延时nmsvoiddelay100us();//延时usvoiddisplay(uintdat);//4位数码管显示函数,只用了位voidtran(void);//超声波测量函数/*************

3、**************/uintdis,H=100,L=20;ucharflag=0,high_time,low_time,m=0;ucharleddata[]={0x3F,//"0"0x06,//"1"0x5B,//"2"0x4F,//"3"0x66,//"4"0x6D,//"5"0x7D,//"6"0x07,//"7"0x7F,//"8"0x6F,//"9"0x77,//"A"0x7C,//"B"0x39,//"C"0x5E,//"D"0x79,//"E"0x71,//"F"0x76,//"H"

4、0x38,//"L"0x37,//"n"0x3E,//"u"0x73,//"P"0x5C,//"o"0x40,//"-"0x00,//熄灭0x00//自定义};voiddelay100us(){uchari;for(i=0;i<50;i++);}/**********************************函数名称:主函数修改日期:入口参数:无返回值:无**********************************/voidmain(void){init();while(1)//循环测量并显

5、示{tran();//发送超声波信号测距display(dis);//显示距离}}/**********************************函数名称:初始化函数修改日期:入口参数:无返回值:无**********************************/voidinit(void){TMOD=0x01;//定时器方式用于计时TH0=0;TL0=0;/*设定T0的工作模式为*/EA=1;IT0=1;//下降沿有效,左传感器}/*******************************

6、***函数名称:延时函数修改日期:入口参数:n返回值:无**********************************/voiddelay_nms(uintn){uchari;while(n--){for(i=123;i>0;i--);}}/**********************************函数名称:显示函数修改日期:入口参数:data返回值:无**********************************/voiddisplay(uintdat){uchari,j,k;//

7、分别为百十个位的缓存i=dat/100;//百位j=dat%100/10;//十位k=dat%100%10;//个位s3=1;s2=0;s1=1;s0=1;seg=~leddata[i];dp=0;delay_nms(2);dp=1;s2=1;s3=1;s2=1;s1=0;s0=1;seg=~leddata[j];delay_nms(2);s1=1;s3=1;s2=1;s1=1;s0=0;seg=~leddata[k];delay_nms(2);s0=1;}/***********************

8、***********函数名称:超声波测量函数修改日期:入口参数:无返回值:无**********************************/voidtran(void){uchari;floattemp;TH0=0;TL0=0;//清定时TR0=1;//开定时for(i=8;i>0;i--){csb=!csb;nop;nop;nop;nop;nop;nop;nop;nop;nop;}csb=1;delay_nms(1)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。