全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

怎样去设计一种基于51单片机的骑行帽呢?

时间:2023-08-21 11:27

人气:

作者:admin

标签: 基于  怎样    设计  一种 

导读:怎样去设计一种基于51单片机的骑行帽呢?-本系统要求使用单片机或其他控制器件实现一个智能骑行帽的设计和实现。 可自动控制LED灯,在光线昏暗的地方提供照明。...

本系统要求使用单片机或其他控制器件实现一个智能骑行帽的设计和实现。 可自动控制LED灯,在光线昏暗的地方提供照明。

在帽体上通过灯带进行转向提醒,后侧人员提醒,可实现多种供电方式,可USB供电,也可太阳能板供电,或动力储存电。要求设计尽可能的方便使用,合理。

要求熟悉单片机或其他控制器的原理和设计,熟练掌握C语言或其他编程语言的设计编程,完成时间管理器的软件、硬件设计与实现。整个毕业设计还要求完成相应的英文翻译和毕业设计论文。

1、通过学习掌握程序设计、调试技术。

2、掌握仿真软件的使用方法,并能编辑、编译和下载设计文件。

3、掌握系统搭建实用硬件系统的方法。

要求与数据

要求:

1、 系统能自动检测光线强度,并控制骑行帽前LED灯的开关,在光线昏暗的地方提供照明。

2、 在帽体后方,通过灯带进行转向提醒,给后侧人员提醒。

3、 可实现多种供电方式,可USB供电,也可太阳能板供电,或动力储存电。

4、 可播放音乐。

部分程序: /**********************************

**********************************/

/**********************************

包含头文件

**********************************/

#include "main.h"

#include "lcd1602.h"

#include "key.h"

#include "adc.h"

#include "Time.h"

/**********************************

变量定义

**********************************/

uchar key_num = 0; //按键标志位

uint time_num = 0; //计时变量

uchar state=0; //音乐变量

uint light_value; //检测光照

bit mort=0; //模式变量

bit state_1=0; //手动自动模式变量

bit state_2=0; //1闪烁标志位

bit state_3=0; //2闪烁标志位

/**********************************

函数声明

**********************************/

void Delay_function(uint x); //延时函数

void Key_function(void); //按键函数

void Monitor_function(void); //监测函数

void Manage_function(void); //处理函数

/****

******* 主函数

*****/

void main()

{

Timer0Init(); //定时器0初使化函数

while(1)

{

Key_function(); //按键函数

Monitor_function(); //监测函数

Manage_function(); //处理函数

Delay_function(10); //延时10ms

time_num++; //计时变量+1

if(time_num > 5000)

{

time_num = 0;

}

}

}

/****

******* 延时 x ms函数

*****/

void Delay_function(uint x)

{

uint m,n;

for(m=x;m>0;m--)

for(n=110;n>0;n--);

}

/****

*******按键函数

*****/

void Key_function(void)

{

key_num = Chiclet_Keyboard_Scan(); //按键扫描

if(key_num != 0) //有按键按下

{

switch(key_num)

{

case 1: //按键1

state++; //切换歌曲

if(state>=7)

state=0;

switch(state)

{

case 1:

I001=0;

I002=1;

I003=1;

I004=1;

I005=1;

break;

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信