最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

【Proteus仿真】【STM32单片机】汽车尾灯控制设计

维修 admin 42浏览 0评论

【Proteus仿真】【STM32单片机】汽车尾灯控制设计

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用Proteus8仿真STM32单片机控制器,使用按键、LED模块等。

主要功能:
系统运行后,系统运行后,系统开始运行,K1键控制左转向灯;K2键控制右转向灯;K3键控制紧急情况灯;K4键控制刹车指示灯。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*///系统数据设置
void sys_data_set(void)
{u8 key=0;key=KEY_Scan(0);//左转if(key==KEY1_PRESS){sys_ctrl.mode[0]=!sys_ctrl.mode[0];if(sys_ctrl.mode[0]==1)//打开{sys_ctrl.mode[1]=0;sys_ctrl.mode[2]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0XF7);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//右转else if(key==KEY2_PRESS){sys_ctrl.mode[1]=!sys_ctrl.mode[1];if(sys_ctrl.mode[1]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[2]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0XEF);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//紧急else if(key==KEY3_PRESS){sys_ctrl.mode[2]=!sys_ctrl.mode[2];if(sys_ctrl.mode[2]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[1]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0X00);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//刹车else if(key==KEY4_PRESS){sys_ctrl.mode[3]=!sys_ctrl.mode[3];if(sys_ctrl.mode[3]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[1]=0;sys_ctrl.mode[2]=0;sys_ctrlt=0;LED(0X00);	}}
}//系统功能控制
void sys_fun_ctrl(void)
{if(sys_ctrl.mode[0]==0 && sys_ctrl.mode[1]==0 && sys_ctrl.mode[2]==0 && sys_ctrl.mode[3]==0){sys_parm_init();LED(0XFF);TIM_Cmd(TIM2,DISABLE);//关闭定时器	}
}//应用控制系统
void appdemo_show(void)
{KEY_Init();ctrl_pin_init();TIM2_Init(400-1,70);//定时10mssys_parm_init();//系统参数初始化while(1){sys_data_set();//系统数据设置sys_fun_ctrl();//系统功能控制	}
}

三、实验现象

B站演示视频:



联系作者

视频地址:
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

【Proteus仿真】【STM32单片机】汽车尾灯控制设计

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用Proteus8仿真STM32单片机控制器,使用按键、LED模块等。

主要功能:
系统运行后,系统运行后,系统开始运行,K1键控制左转向灯;K2键控制右转向灯;K3键控制紧急情况灯;K4键控制刹车指示灯。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*///系统数据设置
void sys_data_set(void)
{u8 key=0;key=KEY_Scan(0);//左转if(key==KEY1_PRESS){sys_ctrl.mode[0]=!sys_ctrl.mode[0];if(sys_ctrl.mode[0]==1)//打开{sys_ctrl.mode[1]=0;sys_ctrl.mode[2]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0XF7);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//右转else if(key==KEY2_PRESS){sys_ctrl.mode[1]=!sys_ctrl.mode[1];if(sys_ctrl.mode[1]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[2]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0XEF);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//紧急else if(key==KEY3_PRESS){sys_ctrl.mode[2]=!sys_ctrl.mode[2];if(sys_ctrl.mode[2]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[1]=0;sys_ctrl.mode[3]=0;sys_ctrlt=0;LED(0X00);TIM_Cmd(TIM2,ENABLE);//打开定时器	}}//刹车else if(key==KEY4_PRESS){sys_ctrl.mode[3]=!sys_ctrl.mode[3];if(sys_ctrl.mode[3]==1)//打开{sys_ctrl.mode[0]=0;sys_ctrl.mode[1]=0;sys_ctrl.mode[2]=0;sys_ctrlt=0;LED(0X00);	}}
}//系统功能控制
void sys_fun_ctrl(void)
{if(sys_ctrl.mode[0]==0 && sys_ctrl.mode[1]==0 && sys_ctrl.mode[2]==0 && sys_ctrl.mode[3]==0){sys_parm_init();LED(0XFF);TIM_Cmd(TIM2,DISABLE);//关闭定时器	}
}//应用控制系统
void appdemo_show(void)
{KEY_Init();ctrl_pin_init();TIM2_Init(400-1,70);//定时10mssys_parm_init();//系统参数初始化while(1){sys_data_set();//系统数据设置sys_fun_ctrl();//系统功能控制	}
}

三、实验现象

B站演示视频:



联系作者

视频地址:
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

发布评论

评论列表 (0)

  1. 暂无评论