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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

ABOV單片機(jī)的四路按鍵中斷源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:285534 發(fā)表于 2020-3-21 10:10 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
這是好東西,請珍惜這等寶貝,絕對是惜世珍寶,ABOV單片機(jī)資料太少,如有有緣人,拿去(硬貨)//======================================================
// Used ABOV Semiconductor's code generator
// Device name : A31G111/112
//======================================================
#include "A31G11x_pcu.h"
#include "A31G11x_scucg.h"
#include "A31G11x_uartn.h"
#include "A31G11x_int.h"
#include "A31G11x_adc.h"
#include "debug_frmwrk.h"

/**********************************************************************
// Main Clock Selection
**********************************************************************/
//#define USED_HIRC
//#define USED_WDTRC
//#define USED_MOSC
//#define USED_SOSC
//Clock Out Selection ( Monitoring )
#define USED_CLKO
volatile uint32_t msec;
volatile uint32_t test;

void mainloop(void);
//uint32_t bo;        
//uint32_t bi;
void delay (void)
{
        uint32_t i;
        
        for (i = 0; i < 0x100000; i++) ;
}
// PE0 port interrupt  
void EXTINT0_Handler(void)
{
        uint32_t j;
        uint32_t status;
        
        status = EIntPE_GetIntStatus();
        if(status & (_BIT(0)))
        {
                for (j= 0; j<5; j++)
                {
                        GPIO_SetValue(PE, _BIT(5));
                        delay();
                        GPIO_ClearValue(PE, _BIT(5));
                        delay();
                }
        }
                EIntPE_ClearIntStatus(0xFF);
}
// PE1 port interrupt  
void EXTINT1_Handler(void)
{
        uint32_t j;
        uint32_t status;
        
        status = EIntPE_GetIntStatus();
        if(status & (_BIT(1)))
        {
                for (j= 0; j<5; j++)
                {
                        GPIO_SetValue(PE, _BIT(5));
                        delay();
                        GPIO_ClearValue(PE, _BIT(5));
                        delay();
                }
        }
                EIntPE_ClearIntStatus(0xFF);
}
// PE2 port interrupt  
void EXTINT2_Handler(void)
{
        uint32_t j;
        uint32_t status;
        
        status = EIntPE_GetIntStatus();
        if(status & (_BIT(2)))
        {
                for (j= 0; j<5; j++)
                {
                        GPIO_SetValue(PE, _BIT(6));
                        delay();
                        GPIO_ClearValue(PE, _BIT(6));
                        delay();
                }
        }
                EIntPE_ClearIntStatus(0xFF);
}
// PE3 port interrupt  
void EXTINT3_Handler(void)
{
        uint32_t j;
        uint32_t status;
        
        status = EIntPE_GetIntStatus();
        if(status & (_BIT(3)))
        {
                for (j= 0; j<5; j++)
                {
                        GPIO_SetValue(PE, _BIT(7));
                        delay();
                        GPIO_ClearValue(PE, _BIT(7));
                        delay();
                }               
        }        
        
        EIntPE_ClearIntStatus(0xFF);
}
/**********************************************************************
    // Main
**********************************************************************/
int main()
{
        init();                        // 初始化        
  mainloop();//主程序               
  return (0);
} //main
///////////////////////////////////////
void mainloop(void)
{
//  uint32_t tmp=0x0;
//   AD_Init();         //AD管腳初始化
// Test Pin setting PE5
        PCU_SetDirection(PE, 5, PUSH_PULL_OUTPUT);
        PCU_ConfigurePullupdown(PE, 5, DISPUPD);        
        GPIO_ClearValue(PE, _BIT(5));

        // Test Pin setting PE6
        PCU_SetDirection(PE, 6, PUSH_PULL_OUTPUT);
        PCU_ConfigurePullupdown(PE, 6, DISPUPD);
        GPIO_ClearValue(PE, _BIT(6));
        
        // Test Pin setting PE7
        PCU_SetDirection(PE, 7, PUSH_PULL_OUTPUT);
        PCU_ConfigurePullupdown(PE, 7, DISPUPD);
        GPIO_ClearValue(PE, _BIT(7));

//        // external interrupt test pin PE0
        PCU_SetDirection(PE, 0, INPUT);
        PCU_ConfigurePullupdown(PE, 0, ENPU);               
        PCU_SetDebounce(PE,0,HCLK_1024);
        
        // external interrupt test pin PE1
        PCU_SetDirection(PE, 1, INPUT);
        PCU_ConfigurePullupdown(PE, 1, ENPU);        
        PCU_SetDebounce(PE,1,HCLK_1024);
        
//        // external interrupt test pin PE2
        PCU_SetDirection(PE, 2, INPUT);
        PCU_ConfigurePullupdown(PE, 2, ENPU);               
        PCU_SetDebounce(PE,2,HCLK_1024);
        
        // external interrupt test pin PE3
        PCU_SetDirection(PE, 3, INPUT);
        PCU_ConfigurePullupdown(PE, 3, ENPU);        
        PCU_SetDebounce(PE,3,HCLK_1024);



        EIntPx_SetReg(PORTE, 0, 0, 1); //使能GPIO中斷        
        EIntPx_SetReg(PORTE, 1, 0, 1); //使能GPIO中斷
        EIntPx_SetReg(PORTE, 2, 0, 1); //使能GPIO中斷        
        EIntPx_SetReg(PORTE, 3, 0, 1); //使能GPIO中斷

        EIntCfg(EINT0_SEL,PORTE,0);         //外部中斷配置
        EIntCfg(EINT1_SEL,PORTE,1);  //外部中斷配置        
        EIntCfg(EINT2_SEL,PORTE,2);         //外部中斷配置
        EIntCfg(EINT3_SEL,PORTE,3);  //外部中斷配置
        
        EIntPE_ClearIntStatus(0xFF);        

        NVIC_EnableIRQ(EXINT0_IRQn);  //使能外部中斷        
        NVIC_EnableIRQ(EXINT1_IRQn);  //使能外部中斷
        NVIC_EnableIRQ(EXINT2_IRQn);  //使能外部中斷        
        NVIC_EnableIRQ(EXINT3_IRQn);  //使能外部中斷

        
        EInt_MaskDisable(EXINT0_MASK|EXINT1_MASK|EXINT2_MASK|EXINT3_MASK); //中斷源掩碼配置
        
  while(1){               
//     AD_scan();              //按鍵掃描
//     AD_Handle();                        //按鍵處理                 
//                for(tmp = 0; tmp < 1000000; tmp++);        
                delay();
                GPIO_SetValue(PB, _BIT(0));
                delay();
                GPIO_ClearValue(PB, _BIT(0));               
        }  //while

} //mainloop


全部資料51hei下載地址:
abov-四路按鍵中斷-.7z (219.92 KB, 下載次數(shù): 11)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

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

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久 | 久草在线 | av天空| 国产精品亚洲精品日韩已方 | 欧美日韩在线一区二区三区 | 日韩国产欧美视频 | 黑人巨大精品 | 天天干精品 | 精品中文字幕在线观看 | ririsao久久精品一区 | 中文字幕av在线一二三区 | 天天久久| 在线观看亚洲欧美 | 亚洲444eee在线观看 | 亚洲欧美综合精品另类天天更新 | 国产成人精品亚洲日本在线观看 | 在线观看免费av网 | 国产精品视频一二三区 | 国产精品呻吟久久av凹凸 | 国产精品久久久久久 | 亚洲精品福利在线 | 亚洲成人精品一区二区 | 久久精品天堂 | 综合一区二区三区 | av男人的天堂av | 久久成人一区 | 91福利在线观看 | 久久精品亚洲国产奇米99 | 成人国产精品久久久 | 久久国产综合 | 欧美精品二区三区 | 国产精品视频久久久 | 久久久久国产一区二区三区 | 久久黄色精品视频 | 久久久久一区二区三区 | 亚洲天堂中文字幕 | 啪啪综合网 | 国产色网站| 精品国产欧美日韩不卡在线观看 | 久久9久 | 一区二区三区欧美 |