久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3666|回復(fù): 15
打印 上一主題 下一主題
收起左側(cè)

請(qǐng)問(wèn)單片機(jī)端口電平中斷怎么喚醒休眠模式?

[復(fù)制鏈接]
回帖獎(jiǎng)勵(lì) 20 黑幣 回復(fù)本帖可獲得 2 黑幣獎(jiǎng)勵(lì)! 每人限 1 次
跳轉(zhuǎn)到指定樓層
樓主
ID:478344 發(fā)表于 2019-10-29 10:58 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
本帖最后由 水深藍(lán) 于 2019-10-29 14:31 編輯

目前我手頭做的項(xiàng)目要求低功耗,所以我采用休眠模式,想知道端口電平中斷如何喚醒休眠模式?

芯圣1.png (40.72 KB, 下載次數(shù): 64)

芯圣1.png

芯圣2.png (54.92 KB, 下載次數(shù): 57)

芯圣2.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:138097 發(fā)表于 2019-10-29 11:20 | 只看該作者
看是什么單片機(jī)了,我用過(guò)STM32的低功耗,可以用按鍵的外部中斷喚醒,需要在睡眠函數(shù)和初始化中定義
回復(fù)

使用道具 舉報(bào)

板凳
ID:478344 發(fā)表于 2019-10-29 14:30 | 只看該作者
whx.000 發(fā)表于 2019-10-29 11:20
看是什么單片機(jī)了,我用過(guò)STM32的低功耗,可以用按鍵的外部中斷喚醒,需要在睡眠函數(shù)和初始化中定義

我用的芯圣的OTP芯片 他的PDF文檔中顯示可以配置成電平變化中斷,就是我不知道如何實(shí)現(xiàn)
回復(fù)

使用道具 舉報(bào)

地板
ID:478344 發(fā)表于 2019-10-29 14:31 | 只看該作者
whx.000 發(fā)表于 2019-10-29 11:20
看是什么單片機(jī)了,我用過(guò)STM32的低功耗,可以用按鍵的外部中斷喚醒,需要在睡眠函數(shù)和初始化中定義

上圖是我使用的單片機(jī) 請(qǐng)問(wèn)應(yīng)該如何配置呢
回復(fù)

使用道具 舉報(bào)

5#
ID:213173 發(fā)表于 2019-10-29 15:03 | 只看該作者
一般有3種省電模式以降低功耗,它們分別是:低速模式,空閑模式和掉電模式。使用方法因品牌、型號(hào)不同代碼也不同。沒(méi)有一招通吃的方法。具體應(yīng)用需要查產(chǎn)品手冊(cè)。
回復(fù)

使用道具 舉報(bào)

6#
ID:123289 發(fā)表于 2019-10-29 16:44 | 只看該作者
中斷會(huì)自動(dòng)消除休眠狀態(tài)的(看一下手冊(cè))。不必操心。
回復(fù)

使用道具 舉報(bào)

7#
ID:478344 發(fā)表于 2019-10-30 11:17 | 只看該作者
//初始化
    #include "holychip_define.h"
    #include "inital.h"
    void inital(void)
    {
        PORTA=0X00;
        PORTB=0X00;                //PORT口輸出高低電平設(shè)置  1=高電平,0=低電平
        TRISA=0X00;                        //輸入輸出設(shè)置  1=輸入,0=輸出
        TRISB=0XE0;                        //輸入輸出設(shè)置  1=輸入,0=輸出  0X11100000  PB7,PB6,PB5設(shè)置為輸入
       
        PHCON1=0XFF;                //上拉設(shè)置 1=DISABLED PULL-UP  ;0=PULL-UP
        PHCON =0XFF;                //上拉設(shè)置 1=DISABLED PULL-UP  ;0=PULL-UP  
       
        PDCON1=0XFF;                //下拉設(shè)置 1=DISABLED PULL-UP  ;0=PULL-UP
        PDCON =0XFF;                //下拉設(shè)置 1=DISABLED PULL-UP  ;0=PULL-UP  
       
        ODCON1=0X00;                //開漏設(shè)置 0=DISABLED PULL-UP  ;1=PULL-UP
        ODCON =0X00;                //開漏設(shè)置 0=DISABLED PULL-UP  ;1=PULL-UP
    }

    //系統(tǒng)初始化                                                                                    
        void sysinitial(void)
    {
        INTECON=0x00;
        OSCCON=0X80;
        OPTION=0X80;                        //Ftimer0 1/2
        PCON=0X40;                                //更改  上下電復(fù)位 禁止看門狗
    }


//模式轉(zhuǎn)換
    #include "holychip_define.h"
    #include "model.h"
    void high_frequence_change_to_sleep(void)                //高低頻切睡眠
    {
    //        SBIT(OSCCON, 7, LOW);
        T0OSCEN=0;
    }
    void high_frequence_change_to_low_frequence(void)        //高頻切低頻
    {
    //        SBIT(OSCCON, 0, HIGH);
        SCS=1;
    }
    void low_frequence_change_to_high_frequence(void)        //低頻切高頻
    {
    //        SBIT(OSCCON, 0, LOW);
        SCS=0;
    }
    void low_or_high_frequence_change_to_green(void)        //高低頻切綠色模式        T0定時(shí)喚醒
    {
        OPTION=0X05;       
        SBIT(OPTION, 5, HIGH);                        //T0CS=1       
    //        T0CS =1;
        T0IF=0;                                                        //清T0中斷標(biāo)志
        T0IE=1;                                                        //使能T0定時(shí)器
        T0=0X00;                                                //T0賦初值
        asm(sleep)
    }
               

//PB電平變化中斷初始化
    #include "holychip_define.h"
    #include "PORTB_interrupt_inital.h"
    void PORTB_interrupt_inital()
    {
        TRISB=0XE0;                //PORTB端口設(shè)置 0X11100000  PB7,PB6,PB5設(shè)置為輸入
        IOCB=0XE0;                //使能PORTB端口為電平變化中斷
       
        PBIF=0;                        // PROTB中斷請(qǐng)求標(biāo)志清零
        PBIE=1;                        //使能PROTB中斷
        GIE=1;                        //使能GIE
    }       
//脈沖顯示函數(shù)
    #include "holychip_define.h"
    #include "Pulse_display.h
    uS延時(shí)函數(shù)
    void DelayUs(unsigned char t)
    {   
     while(--t);
    }
    mS延時(shí)函數(shù)
    void DelayMs(unsigned int t)
    {
        unsigned char count = 200;          
        while(t--)
        {
                while(count--);
        }
    }
    //脈沖顯示子程序
    void Pulse_display(void)                       
    {
    if(PORTB7==1)
     PORTA1=1;
     DelayMs(20);
     PORTA1=0;
     if(PORTB7==0)
     PORTA2=1;
     DelayMs(20);
    PORTA2=0;
               
    if(PORTB6==1)
    PORTA3=1;
    DelayMs(20);
    PORTA3=0;
    if(PORTB6==0)
    PORTB0=1;
    DelayMs(20);
    PORTB0=0;

    if(PORTB5==1)
    PORTB1=1;
    DelayMs(20);
    PORTB1=0;
    if(PORTB5==0)
    PORTB2=1;
    DelayMs(20);
    PORTB2=0;
    }
//主函數(shù)
    #include "holychip_define.h"
    #include "inital.h"
    #include "Pulse_display.h"
    #include "PORTB_interrupt_inital.h"
    #include "model.h"
    void main(void)
    {
        inital();                        //端口初始化
        DelayMs(100);                //延時(shí)等待系統(tǒng)穩(wěn)定
        sysinitial();                //系統(tǒng)初始化
    PORTB_interrupt_inital();//PB電平中斷初始化,設(shè)置PB7,PB6,PB5電平中斷
        while(1)
        {
        high_frequence_change_to_sleep();  //高頻轉(zhuǎn)換為睡眠模式
        Pulse_display();        //脈沖顯示

        }
    }
    //PORTB中斷服務(wù)程序
    void Intr(void) __interrupt 0
    {
        if(PBIF)                                        //Judge PBIF
        {
                PBIF=0;                                        //Clear PBIF
        }
    }
回復(fù)

使用道具 舉報(bào)

8#
ID:478344 發(fā)表于 2019-10-30 11:18 | 只看該作者
yzwzfyz 發(fā)表于 2019-10-29 16:44
中斷會(huì)自動(dòng)消除休眠狀態(tài)的(看一下手冊(cè))。不必操心。

你好 以下是我根據(jù)數(shù)據(jù)手冊(cè)寫的代碼,請(qǐng)問(wèn)只要進(jìn)入中斷就會(huì)喚醒單片機(jī)么,那我這樣做可以么
回復(fù)

使用道具 舉報(bào)

9#
ID:478344 發(fā)表于 2019-10-30 11:18 | 只看該作者
wulin 發(fā)表于 2019-10-29 15:03
一般有3種省電模式以降低功耗,它們分別是:低速模式,空閑模式和掉電模式。使用方法因品牌、型號(hào)不同代碼 ...

恩恩 以下是我查看數(shù)據(jù)手冊(cè)寫的代碼,請(qǐng)問(wèn)這樣可以么
回復(fù)

使用道具 舉報(bào)

10#
ID:401564 發(fā)表于 2019-10-31 00:06 | 只看該作者
PIC的大多例程是以匯編為主的
在PIC的眼中,匯編和C是一樣,你還是學(xué)一下怎么看匯編,能看明白別人寫的是什么就可以了,就幾十條指令而已,看半個(gè)月就會(huì)了
如果是不想看,那就得認(rèn)真的看數(shù)據(jù)手冊(cè)了,一般來(lái)說(shuō),PIC的數(shù)據(jù)手冊(cè)都會(huì)有寫的
回復(fù)

使用道具 舉報(bào)

11#
ID:478344 發(fā)表于 2019-10-31 09:59 | 只看該作者
Y_G_G 發(fā)表于 2019-10-31 00:06
PIC的大多例程是以匯編為主的
在PIC的眼中,匯編和C是一樣,你還是學(xué)一下怎么看匯編,能看明白別人寫的是什么 ...

主要是因?yàn)楣疽笪宜械捻?xiàng)目都用C寫,而且我自己對(duì)C也熟悉一些
回復(fù)

使用道具 舉報(bào)

12#
ID:401564 發(fā)表于 2019-10-31 10:57 | 只看該作者
水深藍(lán) 發(fā)表于 2019-10-31 09:59
主要是因?yàn)楣疽笪宜械捻?xiàng)目都用C寫,而且我自己對(duì)C也熟悉一些

這年頭,如果不是刻要求用匯編的話,還用匯編的,基本都是上古世紀(jì)的人了,但PIC對(duì)于文件寄存器的操作大多都是用匯編來(lái)做教程的,就算是高端的18F系列,在文件寄存器上竟然還是以匯編為主了,哪怕是最近幾年才出的單片機(jī)也是如此,神奇了.
但也不一定要學(xué)匯編了,能看明白文件寄存器怎么操作就可以了.主要還是要多看數(shù)據(jù)手冊(cè)
回復(fù)

使用道具 舉報(bào)

13#
ID:478344 發(fā)表于 2019-10-31 16:20 | 只看該作者
Y_G_G 發(fā)表于 2019-10-31 10:57
這年頭,如果不是刻要求用匯編的話,還用匯編的,基本都是上古世紀(jì)的人了,但PIC對(duì)于文件寄存器的操作大多都 ...

是的 當(dāng)然如果只是點(diǎn)燈之類的程序,匯編還是更好的,而且有的芯片只有0.5KROM。。。不過(guò)我還是喜歡C
回復(fù)

使用道具 舉報(bào)

14#
ID:370231 發(fā)表于 2019-10-31 18:06 | 只看該作者
希望對(duì)你有幫助! FT60F02x_PA_INT.pdf (345.77 KB, 下載次數(shù): 13)

回復(fù)

使用道具 舉報(bào)

15#
ID:478344 發(fā)表于 2019-11-1 09:25 | 只看該作者
a89588038 發(fā)表于 2019-10-31 18:06
希望對(duì)你有幫助!

好的謝謝
回復(fù)

使用道具 舉報(bào)

16#
ID:625009 發(fā)表于 2019-11-1 10:46 | 只看該作者
根據(jù)手冊(cè)配置中斷喚醒
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 美国av片在线观看 | 久久久精品一区二区三区 | 性一交一乱一透一a级 | 国产精品永久免费视频 | 色综合久久久 | 久久国产精品久久久久久 | 国产一区亚洲 | 最新国产在线 | 九九精品在线 | 国产精品18hdxxxⅹ在线 | 伊人网在线综合 | 激情久久av一区av二区av三区 | 中文在线一区二区 | 久久av一区二区三区 | 中文字幕亚洲国产 | 久久激情网| 久久国产精品精品国产色婷婷 | 99精品视频在线 | 99re在线视频 | 日韩综合一区 | 在线观看国产视频 | 色资源在线 | 黄色网页在线 | 一区二区三区在线免费观看视频 | 自拍中文字幕 | 99国内精品久久久久久久 | 视频在线亚洲 | 国产精品久久精品 | 日本三级网址 | 国产视频中文字幕 | 国产一区二区麻豆 | 91av视频 | 欧美在线观看免费观看视频 | 一级片视频免费观看 | 国产高清av免费观看 | 亚洲精品成人网 | 国产精品久久国产精品 | 中文字幕免费视频 | 韩日精品视频 | 91精品国产色综合久久不卡98口 | 久久精品国产免费高清 |