
#include "reg51h" //包含头文件
#define uchar unsigned char
#define uint unsigned int
//
//延时函数
//
delay(uint time) //int型数据为16位,所以最大值为65535
{
uint i,j; //定义变量i,j,用于循环语句
for(i=0;i<time;i++) //for循环,循环50time次
for(j=0;j<50;j++); //for循环,循环50次
}
//
//主函数
//
void main() //主函数
{
uint i; //定义变亮i
while(1) //进入while死循环
{
for(i=0;i<200;i++) //for循环,实现LED由亮逐渐变暗
{
P0=0xff; //熄灭8位发光二极管
delay(i); //延时保持熄灭状态i个时间单位
P0=0x00; //点亮8位发光二极管
delay(200-i); //延时保持点亮状态200-i个时间单位
}
P0=0xff; //熄灭8位发光二极管
delay(5000); //延时保持熄灭状态5000个时间单位,使现象更明显
for(i=0;i<200;i++) //for循环,实现LED由暗逐渐变亮
{
P0=0x00; //点亮8位发光二极管
delay(i); //延时保持熄灭状态i个时间单位
P0=0xff; //熄灭8位发光二极管
delay(200-i); //延时保持点亮状态200-i个时间单位
}
}
}
中断子函数有问题
这样改
void timer0() interrupt 1
{
TH0=(65536-100)/256; //原定时太短了吧
TL0=(65536-100)%256; //原定时太短了吧
t0++;
if(t0<=dc)
{
P1=0;
}
else
{
P1=0xff;
}
if(t0==200)
{
t0=0;
if(flag==0)
{
dc++;
if(dc==200)flag=1; //这是赋值语言,一个等号
}
else if(flag==1) //这应该是else if
{
dc--;
if(dc==0) flag=0;//这是赋值语言,一个等号
}
}
}
1、前期的手机呼吸灯的设置可以通过桌面的设置—显示—呼吸灯,进行设置。
2、部分机型呼吸灯在设置--其他设置--呼吸灯。
3、R9、R9Plus、A37、A59等新机型升级到最新版本后新呼吸灯设置路径:
①:进手机设置--通知与状态栏--收到通知时呼吸灯闪烁,将其开关打开。
②:然后再通过手机设置--通知与状态栏--通知管理--进入某一个应用,呼吸灯闪烁,对单个的应用进行呼吸灯设置。
注意:
开机充电及电量低时呼吸灯不会亮,关机充电会亮。
免打扰模式、静音模式下呼吸灯也是不闪烁的。
除拨号,电话本,信息外,其他程序的呼吸灯开关默认是关闭的,因此需要手动打开。
呼吸灯主要是通过呼吸灯律动实现对通知、充电等相应的提醒:
ColorOS 30及以后版本:
1、设置路径:「设置 > 通知与状态栏 > 收到通知时呼吸灯闪烁」, 「设置 > 通知与状态栏 > 通知管理 > 选择对应的应用程序 > 呼吸灯闪烁」,开关打开,息屏状态收到对应程序的消息时呼吸灯会亮起;
2、关机息屏充电时呼吸灯亮起。
ColorOS 30以前版本:
1、通知的开关打开,屏幕熄灭后,当您有未接来电、未读短信或通知时呼吸灯亮起;开关关闭,呼吸灯不响应;
2、电量低开关打开,当电池电量低于10%时呼吸灯亮起;开关关闭,呼吸灯不响应;
3、充电开关打开,当手机连接充电器时呼吸灯亮起;开关关闭,呼吸灯不响应;
备注:呼吸灯功能与手机硬件相关,您可以通过上述设置路径查看手机是否支持该功能。
以上就是关于51单片机设计呼吸灯全部的内容,包括:51单片机设计呼吸灯、51单片机,定时器,呼吸灯问题:、怎么打开呼吸灯等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)