标题:
基于红外传感技术的STM32智能车程序
[打印本页]
作者:
也随风落
时间:
2019-4-2 13:30
标题:
基于红外传感技术的STM32智能车程序
设计一种集红外遥控、 黑线循迹、自动泊车、车速检测、行驶路程显示等功能于一体的智能车。主要使用了红外传感技术,并结合 STM32F103 系列芯片,模拟现代新型汽车的自动驾驶功能。 采用槽型对射光电传感器测量智能车车速,使用红外光对管进行障碍物检测, TFT LCD 彩屏模拟汽车的仪表盘,并显示智能车的各项数据,如驾驶模式、 行驶距离、车速等。使用红外遥控器对智能车进行操控,并且控制多种模式的自由切换。
#include "led.h"
#include "key.h"
#include "delay.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "remote.h"
#include "beep.h"
#include "motor_control.h"
int main(void)
{
u8 key;
u8 t=0;
u8 *str=0;
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
uart_init(115200); //串口初始化为115200
LED_Init(); //LED端口初始化
LCD_Init();
Beep_Init();
Remote_Init(); //红外接收初始化
GPIO_Configuration();//电机
Control_GPIOC_Config();//传感器
POINT_COLOR=RED; //设置字体为红色
LCD_ShowString(30,50,200,16,16,"STM32 CAR");
LCD_ShowString(30,70,200,16,16,"REMOTE CAR");
LCD_ShowString(30,90,200,16,16,"SPEED: ");
LCD_ShowString(30,130,200,16,16,"KEYVAL:");
LCD_ShowString(30,150,200,16,16,"KEYCNT:");
LCD_ShowString(30,170,200,16,16,"SYMBOL:");
while(1)
{
key=Remote_Scan();
if(key)
{
LCD_ShowNum(86,130,key,3,16); //显示键值
LCD_ShowNum(86,150,RmtCnt,3,16); //显示按键次数
switch(key)
{
case 24: Forward_run();str="UP";break; //UP
case 74: Backward_run();str="DOWN";break; //DOWN
case 16: LEFT();str="LEFT";break; //LEFT
case 90: RIGHT();str="RIGHT";break; //RIGHT
case 56: Stop();str="STOP";break; //STOP
case 162: LED_L();str="1";break; //"1"
case 98: LED_M();str="2";break; //"2"
case 226: Left_Back();str="AUTO_PARKING";break; //"3"
case 34: X_J();str="TRACKING";break; //"4"
}
LCD_Fill(86,170,116+8*8,170+16,WHITE); //清楚之前的显示
LCD_ShowString(86,170,200,16,16,str); //显示SYMBOL
}else delay_ms(10);
t++;
if(t==50)
{
t=0;
LED0=!LED0;
}
}
}
复制代码
全部资料51hei下载地址:
红外遥控循迹小车.7z
(229.87 KB, 下载次数: 43)
2019-4-3 02:34 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
shuaibao
时间:
2021-1-14 14:48
根本没有光电测速呀 瞎jb吹牛
作者:
forest-float
时间:
2021-1-15 12:01
为了能够测定出电机在单位时间内转子旋转了多少个周期,我们在电机的外部电路中加入了一
个开关型的霍尔原件( 44E),同时在电子转子上的转盘上加入了一个能够使霍尔原件产生输出的带
有磁场的磁钢片。当电机旋转时,带动转盘是的磁钢片一起旋转,当磁钢片旋转到霍尔器件的上方
时,可以导致霍尔器件的输出端高电平变为低电平。当磁钢片转过霍尔器件上方后,霍尔器件的输
出端又恢复高电平输出。这样电机每旋转一周,则会使霍尔器件的输出端产生一个低脉冲,我们就
可以通过检测单位时间内霍尔器件输出端低脉冲的个数来推算出直流电机在单位时间内的转速。
作者:
forest-float
时间:
2021-1-15 12:04
现在使用红外遥控小车的很不方便的,需要将遥控器对着小车,最好是使用2.4G通信,而且模块也便宜,控制也方便,红外遥控器一般多用在对固定位置不变的物体进行无线控制,动态物体一般不用的
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1