1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 【单片机开发】智能小车工程(寻迹)

【单片机开发】智能小车工程(寻迹)

时间:2023-03-15 21:14:39

相关推荐

【单片机开发】智能小车工程(寻迹)

项目相关链接:

1.智能小车L298N驱动

2.智能小车寻迹驱动

3.智能小车蓝牙模块驱动

4.智能小车超声波测距驱动

(一)效果展示

一个只能走的小车是当然不足以称之为智能小车的,我们需要给小车安上一个眼睛。这是第一次作为一个开发者让机器可以听我的话。

(二)寻迹模块驱动

这部分代码用于寻迹 设定为沿白线走

白色(亮色)返回1 黑色(暗色)返回0

remote.h

#ifndef __REMOTE_H#define __REMOTE_H #include "sys.h"#define left GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_13)//读取PC13状态#define right GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_14)//读取PC14状态void remote_Init(void);//IO初始化#endif

remote.c

#include "stm32f10x.h"#include "remote.h"#include "sys.h" #include "delay.h"void remote_Init(void) //IO初始化{GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//使能PORTCGPIO_InitStructure.GPIO_Pin = GPIO_Pin_13|GPIO_Pin_14;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化GPIOC14,13}

main.c

//寻迹测试 小车沿白线走

#include "sys.h"#include "delay.h"#include "motor.h"#include "PWM.h"#include "remote.h"#include "usart.h"int main(void){TIM4_PWM_Init(899,0);delay_init();//延时函数初始化 Motor_12_Config(); //298电机驱动初始化remote_Init();NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);if(right==1&left==1) //在线上{Motor_1_PRun(); Motor_2_PRun();}if(left==0&right==1) //左出界 {Motor_right();delay_ms(5);}if(right==1&left==0) //右出界{Motor_left();delay_ms(5);}if(right==0&left==0) //前方无路{Motor_1_STOP();Motor_2_STOP()delay_ms(1000);}}

以上代码仅为相应部分,其他代码在其他文章中,请自寻。

如果一个小车都控制不了又怎么去控制自己的人生。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。