stm32 5路循迹智能小车资料,可遥控


基于stm32的智能车,参加校园智能车比赛,能够实现遥控及循迹间切换
资源截图
代码片段和文件信息

/*2018年718智能车基础寻迹程序*/


/*
delay.h: 延时头文件
track.h: 循迹程序的头文件
carset.h:电机,舵机,光电对管的配置头文件
menu.h:  菜单头文件
oled.h:  oled的头文件
*/


#include “stm32f10x.h“
#include “delay.h“
#include “track.h“
#include “carset.h“
#include “menu.h“
#include “oled.h“
#include “usart.h“
#include “serialport.h“
#include “TIM.h“

extern double K_basic;                                      //调用其他.c文件的变量
extern double K_turn;
extern int    nflag;
int control=1;                                               //小车寻迹模式和调参模式标志位
extern int n1;
int begin=1;


int main()
{
Menu par1;                                                 //定义菜单相应结构体(有几个参数就定义几个结构体)
Menu par2;

 Serial_Port_Init(); //下位机串口初始化
delay_init();     //延时初始化
GPIO_motor_init();                                         //电机端口初始化
GPIO_infrared_init();                                      //光电对管端口初始化
TIM_motor_init(0);                                         //电机定时器设置
GPIO_servo_init();                                         //舵机端口初始化
TIM_servo_init(1000);                                      //舵机定时器初始化
EXTIX_Init();                                              //外部中断初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);            //设置 NVIC 中断分组 选择NVIC_PriorityGroup_22
TIM_PWM_Init();

AddMenu(“k_b“&K_basic0.01&par1);                         //将K_basic通过par1结构体加入调参菜单
AddMenu(“k_t“&K_turn0.2&par2);                          //将K_turn通过par2结构体加入调参菜单
Menu_Init(); //菜单初始化

OLED_Clear();
OLED_ShowString(402(uint8_t*)“718“16);
OLED_ShowString(164(uint8_t*)“SmartCar“16);
while (1)

ProcessInfo(&g_serialinfo);                                     //一直等待串口信息
if(nflag==1)
if(begin==1)
{
begin+=1;
MotorRun(400400);
delay_ms(500);
}
else
{
Tracking(GetError());
}
else
{
    ProcessInfo(&g_serialinfo);                                     //一直等待串口信息
}



}
}

//按键中断函数,每按一次Key2切换一次模式标志位
//切换到寻迹程序需要两步:一、按下Key2,二、在oled菜单中点击quit退出(即退出Menu_ShowPar())

void EXTI2_IRQHandler(void)
{
delay_ms(10);                                                //消抖
if(GPIO_ReadInputDataBit(GPIOEGPIO_Pin_2)==0)
{
control*=-1;                                               //切换模式
}
EXTI_ClearITPendingBit(EXTI_Line2);                          //清除 LINE2 上的中断标志位
}



 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-12-21 19:44  wiseliang1 - 副本
     目录           0  2018-12-21 19:44  wiseliang1 - 副本新生杯示例代码(2)
     目录           0  2018-12-21 19:44  wiseliang1 - 副本新生杯示例代码(2)project
     目录           0  2018-12-21 19:44  wiseliang1 - 副本新生杯示例代码(2)projectApp
     目录           0  2018-12-21 19:44  wiseliang1 - 副本新生杯示例代码(2)projectAppinc
     文件           0  2018-10-15 20:10  wiseliang1 - 副本新生杯示例代码(2)projectAppincinclude.h
     文件      633941  2011-03-10 10:51  wiseliang1 - 副本新生杯示例代码(2)projectAppincstm32f10x.h
     文件        3236  2015-03-12 21:09  wiseliang1 - 副本新生杯示例代码(2)projectAppincstm32f10x_conf.h
     文件        1983  2011-04-04 18:57  wiseliang1 - 副本新生杯示例代码(2)projectAppincstm32f10x_it.h
     文件        2085  2011-03-10 10:51  wiseliang1 - 副本新生杯示例代码(2)projectAppincsystem_stm32f10x.h
     目录           0  2018-12-23 06:27  wiseliang1 - 副本新生杯示例代码(2)projectAppsrc
     文件        2679  2018-12-23 06:27  wiseliang1 - 副本新生杯示例代码(2)projectAppsrcmain.c
     文件        2418  2011-11-13 01:28  wiseliang1 - 副本新生杯示例代码(2)projectAppsrcstm32f10x_it.c
     文件       36577  2011-04-04 18:57  wiseliang1 - 副本新生杯示例代码(2)projectAppsrcsystem_stm32f10x.c
     目录           0  2018-12-21 19:44  wiseliang1 - 副本新生杯示例代码(2)projectBoard
     目录           0  2018-12-23 05:36  wiseliang1 - 副本新生杯示例代码(2)projectBoardinc
     文件        2260  2018-12-23 04:26  wiseliang1 - 副本新生杯示例代码(2)projectBoardincTIM.h
     文件        1062  2018-11-04 22:21  wiseliang1 - 副本新生杯示例代码(2)projectBoardincTM1637.h
     文件         605  2018-11-06 23:33  wiseliang1 - 副本新生杯示例代码(2)projectBoardincadc.h
     文件         314  2018-12-01 16:33  wiseliang1 - 副本新生杯示例代码(2)projectBoardinccarset.h
     文件         217  2018-10-15 20:47  wiseliang1 - 副本新生杯示例代码(2)projectBoardincdelay.h
     文件        1120  2018-11-06 23:35  wiseliang1 - 副本新生杯示例代码(2)projectBoardincexit.h
     文件         676  2018-10-20 13:35  wiseliang1 - 副本新生杯示例代码(2)projectBoardincflash.h
     文件         228  2018-10-20 23:24  wiseliang1 - 副本新生杯示例代码(2)projectBoardinckey.h
     文件         373  2018-11-06 17:12  wiseliang1 - 副本新生杯示例代码(2)projectBoardincled.h
     文件         885  2018-11-04 22:06  wiseliang1 - 副本新生杯示例代码(2)projectBoardincmenu.h
     文件         583  2018-11-04 22:06  wiseliang1 - 副本新生杯示例代码(2)projectBoardincmenu_key.h
     文件        1864  2018-11-07 19:03  wiseliang1 - 副本新生杯示例代码(2)projectBoardincoled.h
     文件       15257  2014-10-26 23:37  wiseliang1 - 副本新生杯示例代码(2)projectBoardincoled_font.h
     文件         943  2018-12-21 20:19  wiseliang1 - 副本新生杯示例代码(2)projectBoardincserialport.h
     文件         262  2018-12-23 05:36  wiseliang1 - 副本新生杯示例代码(2)projectBoardinc rack.h
............此处省略222个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)