当前位置: 首页 > news >正文

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

文章目录

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


一、功能简介

本项目使用Proteus8仿真51单片机控制器,使用按键、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_ctrl.cnt=0;LED=0XF7;TR0=1;//打开定时器	}}//右转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_ctrl.cnt=0;LED=0XEF;TR0=1;//打开定时器	}}//紧急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_ctrl.cnt=0;LED=0X00;TR0=1;//打开定时器	}}//刹车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_ctrl.cnt=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;TR0=0;//关闭定时器	}
}//应用控制系统
void appdemo_show(void)
{sys_parm_init();//系统参数初始化time0_init();while(1){sys_data_set();//系统数据设定sys_fun_ctrl();//系统功能控制				}
}void time0() interrupt 1 //定时器0中断函数
{static u8 msec=0;TH0=0XDC;	//给定时器赋初值,定时10msTL0=0X00;msec++;//10ms加1次if(msec>=30){msec=0;//LED左转if(sys_ctrl.mode[0]==1){sys_ctrl.cnt++;LED=(0XF7>>sys_ctrl.cnt)|0xF0;	if(sys_ctrl.cnt>=4){LED=0XF7;sys_ctrl.cnt=0;	}}//LED右转else if(sys_ctrl.mode[1]==1){sys_ctrl.cnt++;LED=(0XEF<<sys_ctrl.cnt)|0x0F;	if(sys_ctrl.cnt>=4){LED=0XEF;sys_ctrl.cnt=0;	}}//LED紧急else if(sys_ctrl.mode[2]==1){LED=~LED;	}}					
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

联系作者

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

http://www.lryc.cn/news/224888.html

相关文章:

  • 浙大恩特客户资源管理系统任意文件上传漏洞复现
  • 史上第一款AOSP开发的IDE (支持Java/Kotlin/C++/Jni/Native/Shell/Python)
  • GCC + Vscode 搭建 nRF52xxx 开发环境
  • Linux应用开发基础知识——Framebuffer 应用编程(四)
  • 智安网络|数据库入门秘籍:通俗易懂,轻松掌握与实践
  • EXCEL中安装多个vsto插件,插件之间互相影响功能,怎么解决
  • Java枚举
  • 基于MATLAB的关节型六轴机械臂轨迹规划仿真
  • 双11狂欢最后一天
  • YOLOX: Exceeding YOLO Series in 2021(2021.8)
  • HBuilderX 运行Android App项目至雷电模拟器
  • Java进阶(JVM调优)——阿里云的Arthas的使用 安装和使用 死锁查找案例,重新加载案例,慢调用分析
  • 续:将基于Nasm汇编的打字小游戏,移植到DOSBox
  • 外部访问K8S集群内部的kafka集群服务
  • AttributeError: module ‘tensorflow‘ has no attribute ‘contrib‘解决办法
  • 物奇平台耳机恢复出厂设置功能实现
  • RFID携手制造业升级,为锂电池生产带来前所未有的可靠性
  • 【星海出品】flask (四) 三方工具使用
  • MongoDB 索引
  • [Hive] INSERT OVERWRITE DIRECTORY要注意的问题
  • 刚柔相济铸伟业 ——访湖南顺新金属制品科技有限公司董事长张顺新
  • DHorse(K8S的CICD平台)的实现原理
  • 类图复习:类图简单介绍
  • 【字符串】【双指针翻转字符串+快慢指针】Leetcode 151 反转字符串中单词【好】
  • 3D Gaussian Splatting:用于实时的辐射场渲染
  • 【nlp】文本处理的基本方法
  • C++17 std::filesystem
  • JVM在线分析-解决问题的工具一(jinfo,jmap,jstack)
  • [深度学习]不平衡样本的loss
  • 【MySQL】表的增删改查(强化)