按键消抖(定时器中断)
来源:互联网 发布:js cookie 永不过期 编辑:程序博客网 时间:2024/06/04 18:00
#include<reg52.h>
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;
sbit KEY4 = P2^7;
unsigned char code LedChar[]={
0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,
0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E
};
0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,
0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E
};
bit KeySta = 1;
void main()
{
bit backup = 1;
unsigned char cnt = 0;
{
bit backup = 1;
unsigned char cnt = 0;
EA = 1;
ENLED = 0;
ADDR3 = 1;
ADDR2 = 0;
ADDR1 = 0;
ADDR0 = 0;
TMOD = 0x01;
TH0 = 0xF8;
TL0 = 0xCD;
ET0 = 1;
TR0 = 1;
P2 = 0xF7;
P0 = LedChar[cnt];
ENLED = 0;
ADDR3 = 1;
ADDR2 = 0;
ADDR1 = 0;
ADDR0 = 0;
TMOD = 0x01;
TH0 = 0xF8;
TL0 = 0xCD;
ET0 = 1;
TR0 = 1;
P2 = 0xF7;
P0 = LedChar[cnt];
while(1)
{
if(KeySta != backup)
{
if(backup == 0)
{
cnt++;
if(cnt >= 10)
{
cnt = 0;
}
P0 = LedChar[cnt];
}
backup = KeySta;
}
}
}
{
if(KeySta != backup)
{
if(backup == 0)
{
cnt++;
if(cnt >= 10)
{
cnt = 0;
}
P0 = LedChar[cnt];
}
backup = KeySta;
}
}
}
void InterruptTimer0() interrupt 1
{
static unsigned char keybuf = 0xFF;
{
static unsigned char keybuf = 0xFF;
TH0 = 0xF8;
TL0 = 0xCD;
TL0 = 0xCD;
keybuf = (keybuf <<1) |KEY4;
if(keybuf == 0x00)
{
KeySta = 0;
}
else if(keybuf == 0xFF)
{
KeySta = 1;
}
else
{
}
if(keybuf == 0x00)
{
KeySta = 0;
}
else if(keybuf == 0xFF)
{
KeySta = 1;
}
else
{
}
}
阅读全文
0 0
- 按键消抖(定时器中断)
- (驱动)(中断)(定时器)中断结合定时器完成按键消抖的驱动程序
- 按键中断 定时器
- CC26XX定时器以及按键中断
- 按键中断 定时器中断的练习
- 51单片机:利用定时器中断写一个简易加法计算器,按键消抖算法很好。
- tiny6410按键驱动程序2.0(利用中断和定时器去抖)
- 按键中断消抖--2
- Linux按键驱动程序、定时器消抖
- 嵌入式S3C2440按键消抖--定时器操作
- 单片机按键的定时器消抖处理
- Sysstick定时中断实现按键消抖
- 按键驱动程序(定时器去抖)
- 中断处理(按键驱动)
- 外部中断(按键1)
- nrf51822 --- 外部中断 (按键)
- STM32之中断(按键)
- 按键驱动(一)-中断
- 最近的一点感想
- 位运算---计算整数的N次方
- The study of list ,tuple and conditional statement in Python(20170905)
- String、Stringbuffer和Stringbuilder之间的区别
- java框架篇---hibernate(一对一)映射关系
- 按键消抖(定时器中断)
- 【BZOJ4569】[Scoi2016]萌萌哒(并查集+st表)
- 查看linux内核模块依赖关系的三种方法
- Webuploader 上传图片与form表单(二)
- python: time模块、datetime模块
- 进程的基本状态
- 十进制与二进制相互转换(包括带小数点)
- python基础——面向对象
- 代码整洁_迭进