


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<reg52.h>/ 包括一个 52 标准内核的头文件#defineucharunsignedchar/ 定义一下方便使用#defineuintunsignedint #defineulongunsignedlongsbitTrig=PMO;产生脉冲引脚sbitEcho=P3A2; 回波引脚sbittest=P1A1;/测试用引脚ucharcodeSEG71O=OxCO,OxF9,OxA4,OxBO,Ox99,Ox92,Ox82,OxF8,Ox8O,Ox9O ;/ 数码管 O-9uintdistance4;/测距接收缓冲区ucharge,shi,bai,temp,f
2、lag,outcomeH,outcomeL,i;/自定义寄存器bitsucceed_flag;/测量成功标志/* 函数声明voidconversion(uinttemp_data);voiddelay_2Ous();voidmain(void)/ 主程序 uintdistance_data,a,b; ucharCONT_1;i=O;flag=O;test=O;Trig=O;/ 首先拉低脉冲输入引脚TMOD=Ox11;/定时器0,定时器1, 16位工作方式TR0=1; /启动定时器0IT0=0;/ 由高电平变低电平,触发外部中断ET0=1;/ 打开定时器 0 中断EX0=0;/ 关闭外部中断EA
3、=1;/ 打开总中断 0while(1)/ 程序循环 EA=0;Trig=1;delay_20us();Trig=0;/ 产生一个 20us 的脉冲,在 Trig 引脚 while(Echo=0); 等待Echo回波引脚变高电平 succeed_flag=0;/ 清测量成功标志EX0=1;/ 打开外部中断TH1=0;/ 定时器 1 清零TL1=0;/ 定时器 1 清零TF1=0;/TR1=1;/ 启动定时器 1EA=1;while(TH1<30);/ 等待测量的结果,周期 65.535 毫秒(可用中断实现) TR1=0;/ 关闭定时器 1EX0=0;/ 关闭外部中断 if(succeed
4、_flag=1) distance_data=outcomeH*256+outcomeL; distance_data=(distance_data*1.87)/100;/为什么除以58等于厘米,丫米=(X秒*344) /2/X 秒=(2*Y 米)/344=X秒=0.0058*Y 米=厘米二微秒/58 if(succeed_flag=0) distance_data=0;/ 没有回波则清零 test=!test;/ 测试灯变化/* 每循环 3 次就显示结果一次*/ a=distance_data;if(b=a)CONT_1=0; if(b!=a)CONT_1+;if(CONT_1>=3)
5、CONT_1=0; b=a; conversion(b); /*/ 外部中断 0,用做判断回波电平 INTO_()interrupt0/ 外部中断是 0 号 outcomeH=TH1;取出定时器的值 outcomeL=TL1;/ 取出定时器的值succeed_flag=1;/ 至成功测量的标志EX0=0;/ 关闭外部中断/*/ 定时器 0中断,用做显示 timer0()interrupt1/ 定时器 0 中断是 1 号TH0=0xfd;/ 写入定时器 0初始值 TL0=0x77;switch(flag)case0x00:P0=ge;P2=0xfe;flag+;break;case0x01:P0
6、=shi;P2=0xfd;flag+;break;case0x02:P0=bai;P2=0xfb;flag=0;break;/ 显示数据转换程序 voidconversion(uinttemp_data) ucharge_data,shi_data,bai_data; bai_data=temp_data/100;temp_data=temp_data%100;/ 取余运算 shi_data=temp_data/10;temp_data=temp_data%10;/ 取余运算 ge_data=temp_data;bai_data=SEG7bai_data;shi_data=SEG7shi_data; ge_data=SEG7ge_data;EA=0; / 显示数据的时候不要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年感应水龙头行业研究报告及未来行业发展趋势预测
- 紧固件镦锻工成本预算考核试卷及答案
- 2025年2,6-二氯吡嗪行业研究报告及未来行业发展趋势预测
- 提硝工职业考核试卷及答案
- 精细木工协同作业考核试卷及答案
- 有色液固分离工异常处理考核试卷及答案
- 2025年茶巾行业研究报告及未来行业发展趋势预测
- 2025年花菜行业研究报告及未来行业发展趋势预测
- 玻纤制品后处理工作业指导书
- 烟草评吸师设备维护与保养考核试卷及答案
- 典型故障波形分析-典型故障下录波图的分析(电力系统故障分析)
- 2025高考政治命题纲要解读
- 万科物业管理服务方案
- 中国糖尿病行为与生活方式干预指南(2024版)解读课件
- 《对外汉语比字句》课件
- 《中华人民共和国职业分类大典》(2022年版)各行业职业表格统计版(含数字职业)
- 养老院消防应急演练的不足与改进措施
- 七年级上册劳动与技术教案
- 高级职称答辩模板
- 小学数学苏教版三年级上册第一单元《两三位数乘一位数混合运算》试题
- 2024年秋季新北师大版七年级上册数学全册教案
评论
0/150
提交评论