资源简介
该算法能够较为完整的完成倒车雷达的所有需求,不过可能需要根据实际情况适当修改参数
代码片段和文件信息
#include
#include
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
sbit send=P3^7; /*超声波发射端 */
sbit receive=P3^3; /*超声波接收端 */
sbit K4=P3^6;
sbit beep=P1^7;
bit success_flag=0; /*判断是否有回波信号 */
ulong time;
uint c=322;
uchar baishigesf; /*显示各位 */
uchar key=1; /*键盘 */
uchar TimerHTimerL; /*读取测量定时器的值 */
float tempdistance;
ulong distance2; /*温度 */
/*函数声明 */
void delay_csb(uint us);
void init_csb(void);
void send_csb(void);
void final(void);
int write_final(void);
void key_control(void);
/*延时函数 */
void delay_csb(uint us)
{
while(us--);
}
/*初始化 */
void init_csb(void)
{
TMOD=0x11; /*定时器1工作在方式1,定时器0工作在方式1*/
TH1=0x00;
TL1=0x00; /*赋初值 */
EA=1; /*开总中断 */
EX1=0; /*关外部中断1*/
IT1=1; /*外部中断1跳沿触发 */
}
/*超声波发射 */
void send_csb(void)
{
send=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
send=0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_(); /*40KHz超声波 */
}
/*数据处理,显示结果 */
void final(void)
{
time=TimerH*256+TimerL; /*单位us*/
temp=ReadTemperature();
c=322; /*0°C时的声速 */
c=c*sqrt(1+temp/273.16); /*tt为温度值 温度对声速进行补偿,m/s */
distance2=time*c/2;
distance=(float)distance2/10000; /*计算距离,单位cm */
bai=(int)distance/100; /*距离的百位 */
shi=(int)distance%100/10; /*距离的十位 */
ge=(int)distance%10;
distance*=10;
sf=(int)distance%10; /*距离的十分位 */
}
/*LCD显示结果 */
int write_final(void)
{
uchar dat[6];
uchar tmp[5];
final();
DisplayListChar(00“distance= “);
dat[0]=0x30+bai;
dat[1]=0x30+shi;
dat[2]=0x30+ge;
dat[3]=0x2e;
dat[4]=0x30+sf;
dat[5]=‘\0‘;
Displ
- 上一篇:matlab的SVM工具包
- 下一篇:c++课程设计日期格式处理
相关资源
- 仿雷电射击游戏基于VC++MFC
- MFCC梅尔倒谱参数及matlab代码
- 激光雷达点云地平面校准 地面分割
- 格雷码等结构光条纹的生成C++
- 毫米波雷达数据处理得到运动目标
- C++ 课程设计 扫雷系统 报告+源代码
- visual c++ 6.0 完整扫雷源代码
- c++.win32.扫雷游戏代码
- 扫雷vc++sdk
- 基于Matlab的声纹锁
- 激光雷达数据读取、显示、分割、直
- C++编写的有界面的扫雷游戏
- C++扫雷游戏最全源代码
- 分治法求格雷码的C语言代码
- C语言实现控制台扫雷小游戏
- C语言实现的倒排索引算法(含全部源
- 扫雷游戏源程序 c++课程设计必备
- win扫雷外挂含VC++源代码
- C语言easyx扫雷.附带排行榜和计时器支
- qt写扫雷程序
- 51单片机数码管倒计时
- opengl:基于linux下雷达ppi
- c实现倒着输出乘法口诀
- Sick LMS激光雷达数据采集程序
- C++实战源码-利用switch语句输出倒三角
- C++实战源码-扫雷
- C语言实现扫雷游戏
- 倒立摆控制代码
- Qt扫雷小程序
- STM32 V3.0 电子时钟+温度+倒计时+闹钟
评论
共有 条评论