📄 zz02_keycounter.c
字号:
/*********************************************************
** 功能描述: 按键记数程序,对S1的按键次数,以二进制显示在16个LED上 **
*********************************************************/
#include "p30f6014.h"
int failmemory[40];
int main()
{
INTCON1=0x0000;
INTCON2=0x0000; //关闭所有中断
unsigned int led = 0x0000;
unsigned long int i = 0;
while(1)
{
TRISD = TRISD&0xffff; //将RD8-RD15配置为输入,D0~D7
TRISD = 0xfff8; //RD0-RD2配置为输出,作138译码
PORTD = PORTD&0xfff8; //选中KEYA
if ((PORTD&0xff00)==0xfe00) //查询S1是否按下
{
for (i=0;i<10;i++){} //延时消抖
if ((PORTD&0xff00)==0xfe00)
led = led+1;
while ((PORTD&0xff00)==0xfe00)
{
for (i=0;i<10;i++){}
}
}
PORTD = (PORTD&0xfff8)|0x0002; //选中LEDA
TRISD = TRISD&0x00ff; //将RD8-RD15配置为输出,D0~D7
PORTD = (PORTD&0x00ff)|((~(led<<8))&0xff00);
PORTD = (PORTD&0xfff8)|0x0003; //选中LEDB
PORTD = (PORTD&0x00ff)|((~led)&0xff00);
PORTD = (PORTD&0xfff8)|0x0007;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -