中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PIC18F458單片機(jī)休眠狀態(tài)工作方式與激活

        PIC18F458單片機(jī)休眠狀態(tài)工作方式與激活

        作者: 時(shí)間:2012-12-11 來(lái)源:網(wǎng)絡(luò) 收藏

        /*該程序?qū)崿F(xiàn)工作方式,并由實(shí)驗(yàn)板上的按鍵產(chǎn)生"電平變化中斷"將其從。休眠與的狀態(tài)由與D口相連的8個(gè)LED顯示。休眠時(shí)高4個(gè)
        LED發(fā)光,低4個(gè)LED熄滅; 以后高4個(gè)LED熄滅,低4個(gè)LED發(fā)光*/

        #include"p18f458.h"

        unsignedlong i;

        /*系統(tǒng)初始化子程序*/
        void initial()
        {
        INTCON=0x08;/*全局中斷禁止,"電平變化中斷"只執(zhí)行喚醒功能*/
        /*清除B口電平變化中斷標(biāo)志*/
        TRISA=0x00;/*A口設(shè)置為輸出*/
        TRISB=0XF0;/*RB1輸出,RB4輸入*/
        TRISD=0X00;/*D口為輸出*/
        TRISE=0x00;/*E口設(shè)置為輸出*/
        PORTBbits.RB1=0;
        PORTAbits.RA3=0;
        PORTE=0;/*將K1,K2,K3,K4四條列線置0*/
        PORTB=PORTB;/*讀PORTB的值,鎖存舊值,也為“電平變化
        中斷”作準(zhǔn)備*/
        }

        void SLEEP()
        {
        _asm
        SLEEP /*進(jìn)入*/
        _endasm
        }

        /*主程序*/
        main ()
        {
        initial();/*初始化*/
        PORTD=0X0F;/*高4個(gè)LED燈亮*/
        SLEEP();/*單片機(jī)開(kāi)始進(jìn)入休眠狀態(tài)*/
        PORTD=0XF0;/*激活后,低4個(gè)LED燈亮*/
        while(1)
        {
        ;
        }

        }
        完畢!
        -----------匯編語(yǔ)言編寫的單片機(jī)休眠狀態(tài)工作方式與激活-----------------------
        ;該程序?qū)崿F(xiàn)的休眠工作方式,
        ;http://www.51hei.com已用本站單片機(jī)實(shí)驗(yàn)板測(cè)試通過(guò)本程序
        ;并由實(shí)驗(yàn)板上的按鍵產(chǎn)生"電平變化中斷"將其從休眠狀態(tài)中激活.

        LISTP=18F458
        INCLUDE"P18F458.INC"

        COUNTEQU0X20

        ORG0X00
        GOTOMAIN
        ORG0X30

        ;************顯示子程序***************
        DISPLAY
        CLRFPORTA
        MOVWFSSPBUF
        LOOPNOP
        BTFSS PIR1,SSPIF
        GOTO LOOP
        NOP
        BCFPIR1,SSPIF
        BSFPORTA,5;詳細(xì)程序語(yǔ)句請(qǐng)參考3. 1. 3節(jié)
        RETURN

        ;**********初始化子程序*************
        INITIAL
        BCFINTCON,GIE;全局中斷禁止,"電平變化中斷"只執(zhí)行喚醒功能
        BSFINTCON,RBIE;PORTB口電平變化中斷允許
        BCFINTCON,RBIF;清除B口電平變化中斷標(biāo)志
        BCFTRISA,5 ;置RA5為輸出方式,以輸出鎖存信號(hào)
        BCFTRISB,1
        BCFTRISA,3
        BCFTRISE,0
        BCFTRISE,1
        BSFTRISB,4 ;設(shè)置與鍵盤有關(guān)的各口的輸入輸出方式
        BCFTRISC,5
        BCFTRISC,3 ;設(shè)置SCK與SDO為輸出方式
        MOVLW0XC0
        MOVWFSSPSTAT ;設(shè)置SSPSTAT寄存器
        MOVLW0X30
        MOVWFSSPCON1 ;設(shè)置SPI的控制方式,允許SSP方式,并且時(shí)鐘下降沿
        ;發(fā)送,與"74HC595當(dāng)其SCLK從低到高平跳變時(shí),串行
        ;輸入數(shù)據(jù)(DI)移入寄存器"的特點(diǎn)相對(duì)應(yīng)
        BCFPORTB,1
        BCFPORTA,3
        BCFPORTE,0
        BCFPORTE,1;K1,K2,K3,K4四條列線置0, 為電平變化中斷的產(chǎn)生
        ;創(chuàng)造初始條件
        RETURN ;返回

        ;****************************************
        MAINNOP
        CALLINITIAL;初始化
        MOVLW0X08
        MOVWFCOUNT
        MOVLW0XFF;"FF"為"DARK"字符的顯示段碼
        NEXT1
        CALLDISPLAY;在休眠之前使8各LED全顯示"DARK"
        DECFCOUNT,1
        BTFSSSTATUS,Z
        GOTONEXT1
        SLEEP;PIC16F877進(jìn)入"休眠工作方式"
        NOP
        MOVLW0X08
        MOVWFCOUNT
        MOVLW0X90;"90"為"9"的顯示段碼
        NEXT
        CALLDISPLAY;休眠喚醒之后顯示8個(gè)字符"9"
        DECFCOUNT,1
        BTFSSSTATUS,Z
        GOTONEXT
        NOP
        END



        關(guān)鍵詞: PIC18F458 休眠狀態(tài) 激活

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉