www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]二、ATMEGA16的中斷系統(tǒng)二—(02)、4*4行列式按鍵的睡眠模式中斷喚醒廢話不多說了,上一篇有這一片所用的寄存器,所以你要想看這篇,還是建議看看上一篇,當(dāng)然要是會(huì)~~~直接上圖~~~好了,下面的就是程序了(這里要注

二、ATMEGA16的中斷系統(tǒng)

二—(02)、4*4行列式按鍵的睡眠模式中斷喚醒

廢話不多說了,上一篇有這一片所用的寄存器,所以你要想看這篇,還是建議看看上一篇,當(dāng)然要是會(huì)~~~

直接上圖~~~





好了,下面的就是程序了(這里要注意一下,Proteus中的二極管的作用,一定要弄明白~~呵呵,雖然我不明白~~笨死了~~但是有一點(diǎn)我是知道的,防止回流,但是為什么這么接~~我蛋疼了~~不會(huì)?。?/p>

//------------------------------------------------------------------------------
//4*4行列式按鍵的睡眠模式中斷喚醒實(shí)驗(yàn)
//其中睡眠模式再"intrinsics.h"文件里,需要調(diào)用
//該設(shè)計(jì)如用于電池供電的遙控器等應(yīng)用中,則對(duì)延長(zhǎng)電池壽命非常的有幫助,是一種省電的高效設(shè)計(jì)
#include"ioavr.h"
#include"intrinsics.h"
typedef unsigned char uchar;
typedef unsigned intuint;
//------------------------------------------------------------------------------
__flash uchar skey[16]={10,11,12,13,3,6,9,14,2,5,8,0,1,4,7,15};//這里是根據(jù)鍵盤的設(shè)定來設(shè)定的,我這里設(shè)定的是手機(jī)鍵盤,方便使用
__flash uchar act[4]={0xfe,0xfd,0xfb,0xf7};
ucharconst seg[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,
0x7c,0x39,0x5e,0x79,0x71};//共陰極數(shù)碼管
uchar c;//定義全局變量,主要是因?yàn)樵谥袛嗬锝^對(duì)不可以出現(xiàn)返回?cái)?shù)據(jù)的命令?。?!
//------------------------------------------------------------------------------
//延時(shí)函數(shù)
voiddelay_ms(uint k)
{
uinti,j;
for(i=0;ifor(j=0;j<1140;j++);
}
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//鍵盤檢測(cè)函數(shù)
void key_scan()
{
uchar i,j,in,ini,inj;
uchar flag=0;
for(i=0;i<4;i++)
{
PORTB=act[i];
delay_ms(5);//延時(shí)消抖
in=PINB;
in=in>>4;
in=in|0xf0;
for(j=0;j<4;j++)
{
if(act[j]==in)
{
flag=1;
inj=j;
ini=i;
}
}

}
if(flag==0)
c=16;
c=(ini*4+inj);
}
//------------------------------------------------------------------------------
//main
void main()
{
uchar key_value;
DDRA=0XFF;//數(shù)碼管設(shè)置
DDRC=0XFF;
PORTA=0X00;
PORTC=0XFF;

DDRD=0XFB;//設(shè)置PD2為輸入,也就是要用到其第二管腳功能,當(dāng)檢測(cè)到為低電平時(shí)喚醒睡眠模式
PORTD=0XFF;

MCUCR=0X60;//選擇休眠模式:掉電模式;選擇INT0觸發(fā)方式:低電平觸發(fā)
GICR=0X40;
SREG=0X80;
while(1)
{
DDRB=0X0F;//按鍵設(shè)置,高四位為輸入,第四位為輸出,你懂得~~~同時(shí)要注意,一定要保證第四位輸出低電平,要不然不能檢測(cè)所有鍵盤
PORTB=0XF0;

delay_ms(10);
__sleep();//調(diào)用__sleep()函數(shù)
if(c!=16)
key_value=skey[c];
PORTA=seg[key_value];
PORTC=0xfe;
delay_ms(2000);
PORTA=0x00;
PORTC=0xff;
}
}
//------------------------------------------------------------------------------
//INT0
#pragma vector=INT0_vect
__interrupt voidint0()
{
key_scan();
}


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在現(xiàn)代嵌入式系統(tǒng)中,實(shí)時(shí)性保障是確保系統(tǒng)穩(wěn)定運(yùn)行和高效處理任務(wù)的關(guān)鍵。特別是在涉及硬實(shí)時(shí)任務(wù)(如DMA傳輸)時(shí),合理設(shè)計(jì)多級(jí)中斷系統(tǒng)和任務(wù)調(diào)度方案至關(guān)重要。本文將探討如何使用ARM Cortex-M的NVIC優(yōu)先級(jí)分組機(jī)...

關(guān)鍵字: 中斷系統(tǒng) 嵌入式系統(tǒng)

當(dāng)多個(gè)同級(jí)別中斷同時(shí)發(fā)出中斷請(qǐng)求時(shí),單片機(jī)中斷系統(tǒng)將按照自然優(yōu)先級(jí)別進(jìn)行中斷排序,并首先響應(yīng)其中自然優(yōu)先級(jí)別最高的中斷。

關(guān)鍵字: 中斷優(yōu)先級(jí) 單片機(jī) 中斷系統(tǒng)

MCS-51單片機(jī)中斷系統(tǒng)的結(jié)構(gòu)如圖4-1所示。MCS-51單片機(jī)有5個(gè)中斷源,分別是2個(gè)外部中斷源、2個(gè)定時(shí)/計(jì)數(shù)器中斷源和1個(gè)串行接口中斷源。與中斷系統(tǒng)有關(guān)的寄存器有TCON、SCON、IE和IP,它們都可以按位尋址...

關(guān)鍵字: MCS-51 單片機(jī) 中斷系統(tǒng)

單片機(jī)系統(tǒng)用戶可以通過中斷系統(tǒng)的軟件和硬件實(shí)現(xiàn)對(duì)某一中斷請(qǐng)求的開放(或允許)和屏蔽。開放是指中斷請(qǐng)求發(fā)生時(shí)中斷系統(tǒng)響應(yīng)該請(qǐng)求,并完成相應(yīng)的中斷服務(wù)處理工作;相反地,屏蔽是指中斷系統(tǒng)既不接收中斷請(qǐng)求,也不進(jìn)行中斷處理。

關(guān)鍵字: MCS-51 單片機(jī) 中斷系統(tǒng)

中斷系統(tǒng)是計(jì)算機(jī)的重要組成部分。實(shí)時(shí)控制、故障自動(dòng)處理、計(jì)算機(jī)與外圍設(shè)備間的數(shù)據(jù)傳送往往采用中斷系統(tǒng)。中斷系統(tǒng)的應(yīng)用大大提高了計(jì)算機(jī)效率。

關(guān)鍵字: 中斷系統(tǒng) 8XC552 單片機(jī)

8XC51GB有15個(gè)中斷源,對(duì)應(yīng)有15個(gè)固定的中斷矢量地址(見圖10.8)。其中有7個(gè)外部中斷是INT0~INT6,外部中斷引腳與端口3和端口5引腳的功能復(fù)用;有8個(gè)內(nèi)部中斷,它們分別是3個(gè)定時(shí)器中斷(定時(shí)器T0、T1...

關(guān)鍵字: 8XC51GB 中斷系統(tǒng)

中斷是計(jì)算機(jī)中一個(gè)很重要的概念,中斷技術(shù)的引入使計(jì)算機(jī)的發(fā)展和應(yīng)用大大地推進(jìn)了一步。因此,中斷功能的強(qiáng)弱已成為衡量一臺(tái)計(jì)算機(jī)功能完善與否的重要指標(biāo)之一。

關(guān)鍵字: MCS 51單片機(jī) 中斷系統(tǒng)

1.PowerPC中斷系統(tǒng)簡(jiǎn)介PowerPC處理器的中斷系統(tǒng)由兩部分組成,一是內(nèi)核的中斷及異常的處理;二是中斷控制器。以P2020處理器為例,包括E500內(nèi)核中斷及異常處理系統(tǒng)和OpenPIC中斷控制器。在E500內(nèi)核中...

關(guān)鍵字: Power 中斷系統(tǒng)

引言   現(xiàn)場(chǎng)總線作為生產(chǎn)過程自動(dòng)化發(fā)展的重點(diǎn),對(duì)推動(dòng)自動(dòng)化技術(shù)起到巨大的推動(dòng)作用,是現(xiàn)代化工業(yè)的標(biāo)志。MODBUS作為現(xiàn)場(chǎng)總線的一種通信協(xié)議,它實(shí)現(xiàn)了PLC控制器、工控儀表與設(shè)備間的通

關(guān)鍵字: avr單片機(jī) 智能控制系統(tǒng) modbus協(xié)議

一、項(xiàng)目概述 1.1 引言 溫室是一種可以改變植物生長(zhǎng)環(huán)境、為植物生長(zhǎng)創(chuàng)造最佳條件、避免外界四季變化和惡劣氣候?qū)ζ溆绊懙膱?chǎng)所。它以采光覆蓋材料作為全部或部分結(jié)構(gòu)材料,可在冬季或其

關(guān)鍵字: avr單片機(jī)
關(guān)閉