国产肉体XXXX裸体137大胆,国产成人久久精品流白浆,国产乱子伦视频在线观看,无码中文字幕免费一区二区三区 国产成人手机在线-午夜国产精品无套-swag国产精品-国产毛片久久国产

新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 外中斷(按鍵)控制數(shù)碼管顯示

外中斷(按鍵)控制數(shù)碼管顯示

作者: 時(shí)間:2016-11-24 來(lái)源:網(wǎng)絡(luò) 收藏
#include "config.h"

#defineuintunsigned int
#defineucharunsignedchar
#defineulongunsignedlong

本文引用地址:http://m.ptau.cn/article/201611/320668.htm

#defineSIGNALP3_5//鍵盤(pán)初始信號(hào)

#defineKEY6P3_2//KEY6口就是INT0口
#defineKEY2P3_3

int num;


// 延時(shí)約(0.001 * n)秒
void delay(unsigned char n)
{
ulong i;
do {
i = CPUCLK / 1000;
while(i--);
} while (--n != 0);
}


void int0() interrupt 0 // 也可不判斷是否為KEY6按下,因?yàn)橐l(fā)此中斷的就是KEY6鍵
{
if(KEY6 == 0)
{
delay(10);//延時(shí)消除按鍵抖動(dòng)
if (KEY6 == 0)//確定有鍵按下
{
num++;
if (num > 9)
num = 0;
P0 = num;
}
while (!KEY6);//等待KEY1松開(kāi)
delay(10);//延時(shí)消除松鍵抖動(dòng)
}
}


void int1() interrupt 2
{
if(KEY2 == 0)
{
delay(10);//延時(shí)消除按鍵抖動(dòng)
if (KEY2 == 0)//確定有鍵按下
{
num--;
if (num < 0)
num = 9;
P0 = num;
}
while (!KEY2);//等待KEY1松開(kāi)
delay(10);//延時(shí)消除松鍵抖動(dòng)
}
}

//外中斷初始化函數(shù)
void int_init()
{
EA = 1;//開(kāi)總中斷
EX0 = 1;//開(kāi)外中斷0
IT0 = 0;//外中斷0低電平觸發(fā)方式
EX1 = 1;
IT1 = 0;
}

//主程序入口
void main(void)
{
int_init();
SIGNAL = 0;//重要??!雖然SIGNAL和IT1是同一地址,但必須初始化SIGNAL

num = 0;
P0 = num;

for (;;){
}
}

外中斷程序設(shè)計(jì)步驟:

1. 開(kāi)總中斷

2. 開(kāi)外中斷

3. 設(shè)置外中斷觸發(fā)方式

4. 中斷處理程序



評(píng)論


技術(shù)專區(qū)

關(guān)閉