8.3.3 基于红外线的标志物控制设计_第1页
8.3.3 基于红外线的标志物控制设计_第2页
8.3.3 基于红外线的标志物控制设计_第3页
8.3.3 基于红外线的标志物控制设计_第4页
8.3.3 基于红外线的标志物控制设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

8.3.3基于红外线的标志物控制设计基于红外线控制的标志物有立体显示、智能路灯、烽火台报警等标志物,那么,我们如何能完成对它们的控制呢?基于红外线的标志物控制设计在嵌入式智能车的红外线发射电路中,红外线是由RI_TXD引脚(PF11引脚)控制输出的。(1)红外发射控制数组红外发射控制数组是在主文件中定义的,代码如下:static

uint8_tInfrared[6];//红外发送数据缓存红外发射控制(2)编写Infrared.h头文件Infrared.h头文件代码如下:#ifndef__INFRARED_H#define__INFRARED_H#defineRI_TXDPFout(11)

voidInfrared_Init(void);voidInfrared_Send(uint8_t*s,intn);#endif红外发射控制在嵌入式智能车的红外线发射电路中,红外线是由RI_TXD引脚(PF11引脚)控制输出的,需要对红外发射端口进行初始化和红外发射控制。红外发射端口初始化函数,代码如下:红外发射控制voidInfrared_Init(){

GPIO_InitTypeDefGPIO_InitStructure;

RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_11;

//GPIOF11引脚

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_OUT;

//输出模式

GPIO_InitStructure.GPIO_OType=GPIO_OType_PP;

//推挽输出

GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_UP;

//上拉模式

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_100MHz;

GPIO_Init(GPIOF,&GPIO_InitStructure);

RI_TXD=1;}红外发射控制函数,代码如下:voidInfrared_Send(uint8_t*s,intn){

uint8_ti,j,temp;

RI_TXD=0;

delay_ms(9);

RI_TXD=1;

delay_ms(4);

delay_us(560);

for(i=0;i<n;i++)

{

for(j=0;j<8;j++)

{

temp=(s[i]>>j)&0x01;红外发射控制函数 if(temp==0)//发射0

{

RI_TXD=0;

delay_us(500);//延时0.5ms

RI_TXD=1;

delay_us(500);//延时0.5ms

}

if(temp==1)//发射1

{

RI_TXD=0;

delay_us(500);//延时0.5ms

RI_TXD=1;

delay_ms(1);

delay_us(800);//延时1.69ms

}

}

}

RI_TXD=0;

//结束

delay_us(560);//延时0.56ms

RI_TXD=1;

//关闭红外发射}

红外发射控制函数(1)嵌入式智能车向立体显示标志物发送命令的数据结构嵌入式智能车向立体显示标志物发送命令的数据结构,其命令的数据结构共有6个字节,如表所示。数据结构是由以下6个字节组成:第1个字节为起始位(0xFF),固定不变;第2个字节为模式编号;第3个字节~第6个字节为可变数据。0xFF0xXX0xXX0xXX0xXX0xXX帧头模式数据[1]数据[2]数据[3]数据[4]立体显示标志物控制数据结构(1)嵌入式智能车向立体显示标志物发送命令的数据结构智能立体显示标志物的模式编号,如表所示。模式编号模式说明0x20前四位车牌信息显示模式0x10后两位车牌及坐标信息显示模式0x11显示距离信息模式0x12显示图形信息模式0x13显示颜色信息模式0x14显示交通警示牌信息模式0x15显示交通标志信息模式0x16显示默认信息0x17设置文字显示颜色立体显示标志物控制数据结构车牌显示模式的数据说明,如表所示。说明:在车牌显示模式下,车牌信息包括6个车牌字符和在地图上某个位置的坐标,共8个字符(注意:车牌信息格式为字符串格式)。模式数据[1]数据[2]数据[3]数据[4]说明0x20车牌[1]车牌[2]车牌[3]车牌[4]显示车牌及坐标0x10车牌[5]车牌[6]横坐标纵坐标立体显示标志物控制数据结构距离显示模式的数据说明,如表所示。说明:在距离显示模式下,数据[1]和数据[2]为需要显示的距离信息(注意:距离显示格式为十进制)。其余位为0x00,保留不用。模式数据[1]数据[2]数据[3]数据[4]0x11距离十位距离个位0x000x00立体显示标志物控制数据结构(2)显示车牌号信息的程序设计智能立体显示标志物显示车牌号信息函数Rotate_show_Inf(),代码如下:voidRotate_show_Inf(char*src,charx,chary){

Infrared[0]=0xFF;

//起始位

Infrared[1]=0x20;

//模式

Infrared[2]=*(src+0);//数据[1]

Infrared[3]=*(src+1);//数据[2]

Infrared[4]=*(src+2);//数据[3]

Infrared[5]=*(src+3);//数据[4]

Infrared_Send(Infrared,6);

delay_ms(500);

Infrared[1]=0x10;

//模式

Infrared[2]=*(src+4);//数据[1]

Infrared[3]=*(src+5);//数据[2]

Infrared[4]=x;

//数据[3]

Infrared[5]=y;

//数据[4]

Infrared_Send(Infrared,6);

delay_ms(10);

}立体显示标志物控制数据结构例如,发送给智能立体显示标志物显示的车牌信息是A123B4C5,其中车牌号是A123B4、坐标是C5。完成显示车牌号信息的代码如下:

Rotate_show_Inf("A123B4",'C','5');//把车牌信息传给立体显示标志物立体显示标志物控制数据结构(1)打开烽火台报警程序设计烽火台报警打开函数Alarm_Open(),代码如下:Staticu8HW_K[6]={0x03,0x05,0x14,0x45,0xDE,0x92};//报警器打开Staticu8HW_K

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论