一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于cc2530按鍵中斷控制流水燈的實(shí)驗(yàn)方案

454398 ? 來源:博客園 ? 作者:籠包叔叔 ? 2020-10-18 10:46 ? 次閱讀

cc2530的第三次實(shí)驗(yàn):按鍵中斷控制流水燈

效果為按一次按鍵,流水燈亮一次

實(shí)驗(yàn)相關(guān)電路圖:

實(shí)驗(yàn)相關(guān)寄存器

初始化函數(shù)

//初始化LED燈
    //設(shè)置P1SEL,通用為0,外設(shè)為1 11111100
    P1SEL &=~0x03;

    //設(shè)置P0SEL,    11101111
    P0SEL &= ~0x10;

    //設(shè)置P1DIR,輸出為1,輸入為0  00000011
    P1DIR |= 0x03;

    //設(shè)置P0DIR     00010000
    P0DIR |= 0x10;     


//初始化按鈕和中斷
//初始化按鈕
    //初始化P0SEL,通用為0     11111101
    P0SEL&=~0x02;
    //初始化P0DIR,輸入為0     11111101
    P0DIR&=~0x02;

//初始化中斷
    //設(shè)置引腳中斷 1為中斷使能 00000010
    P0IEN |= 0x02;
    //設(shè)置端口中斷
    IEN1=1;
    //設(shè)置端口中斷觸發(fā)方式 1為中斷使能
    IEN1|=0x20;
    //設(shè)置總中斷
    EA=1;
    //清空標(biāo)志位
    P0IFG=0;

中斷服務(wù)函數(shù)

//中斷服務(wù)函數(shù)
#pragma vector = P0INT_VECTOR        //這一行的P0INT_VECTOR是中斷源的名稱嗎?
__interrupt void P0ISR(void)
{
  //清除端口中斷標(biāo)志位
  P0IFG=0;
  
  //LED燈流水亮一遍
  BLink();

  //清除端口中斷標(biāo)志位
  P0IF=0;


}

上面的代碼一定要注意P0IFG一定要在P0IF之前清除,話說P0IF與P0IFG到底是干啥用的?他們之間什么關(guān)系,端口的標(biāo)志寄存器?(記得查一下)
P0IFG是端口0中斷狀態(tài)標(biāo)志,P0IF是cpu內(nèi)中斷標(biāo)志寄存器,什么鬼,沒弄明白啊,問一下老師吧!

全部代碼

#include 

typedef unsigned int uint;
typedef unsigned char uchar;
#define LED1 P1_0
#define LED2 P1_1 
#define LED3 P0_4
#define BUTTON1 P0_1 

uint time=300;

//延遲函數(shù)
void Delay(uint time)
{
  for(uint i=0;i

這個(gè)實(shí)驗(yàn)的難點(diǎn)以及重點(diǎn)主要是在初始化中斷這個(gè)過程,
初始化引腳的寄存器P0IEN|=0x02;
設(shè)置端口中斷的寄存器IEN1|=0x20;
設(shè)置端口中斷觸發(fā)方式PICTL|=0x01;
設(shè)置總中斷EA=1
清空標(biāo)志位:P0IFG=0;
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 流水燈
    +關(guān)注

    關(guān)注

    21

    文章

    433

    瀏覽量

    60221
  • CC2530
    +關(guān)注

    關(guān)注

    19

    文章

    221

    瀏覽量

    58647
  • 中斷控制
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    8958
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【RA-Eco-RA4M2開發(fā)板評(píng)測(cè)】點(diǎn)燈實(shí)現(xiàn)6種LED花式流水燈操作

    很高興收到瑞薩電子提供的RA4M2開發(fā)板,這次帖子就專門用來說說專業(yè)點(diǎn)燈操作,實(shí)現(xiàn)各種花式的流水燈,可以十分方便地控制LED的各種狀態(tài),甚至多個(gè)LED組合控制,如跑馬燈等。 打開原理圖,可以看到3個(gè)
    發(fā)表于 04-28 21:28

    CC2530連接ADS7822,經(jīng)示波器檢測(cè),CLK無輸出波形是怎么回事?

    CC2530連接ADS7822,UBART1作為SPI模式,P1.4——CS,P1.5——CLK,P1.7——Dout【CC2530——ADS7822】.硬件查詢方式。 因?yàn)锳DS7822沒有
    發(fā)表于 02-10 08:22

    CC2530驅(qū)動(dòng)ADS1255,可以正確的讀到寄存器的值,就是得到AD裝換的值不正確,為什么?

    最近用CC2530驅(qū)動(dòng)ADS1255,現(xiàn)在可以正確的讀到寄存器的值,就是得到AD裝換的值不正確,有沒有一個(gè)驅(qū)動(dòng)ADS1255的示范程序了?
    發(fā)表于 02-10 07:47

    #中國(guó)香河英茂科工#STC32G12K128#屠龍刀三.2 流水燈例程

    流水燈
    丙丁先生
    發(fā)布于 :2025年01月19日 14:19:35

    如何使ADS1247功耗降低?

    請(qǐng)問如何使ADS1247功耗降低,我用CC2530控制1247,現(xiàn)在整體功耗在休眠時(shí)候是5V0.45mA,但是1247說明上有一句說是:在睡眠模式下功耗只有0.1-0.5uA,我已經(jīng)把CC2530
    發(fā)表于 01-10 07:58

    低成本單片機(jī)方案——觸摸流水燈開關(guān)控制

    方案觸摸流水燈控制方案Thedevelopmentofascheme隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展和智能家居的普及,觸摸流水燈
    的頭像 發(fā)表于 12-26 16:37 ?588次閱讀
    低成本單片機(jī)<b class='flag-5'>方案</b>——觸摸<b class='flag-5'>流水燈</b>開關(guān)<b class='flag-5'>控制</b>

    使用cc2530控制的ads1299,讀取轉(zhuǎn)換數(shù)據(jù)的時(shí)候輸出是c0 00 00 80 00 00 80 00 00 7f ff ff這樣,為什么?

    我在用ADS1299做腦電采集,現(xiàn)在使用cc2530控制的ads1299,目前讀寫寄存器和發(fā)送命令都正確,但是讀取轉(zhuǎn)換數(shù)據(jù)的時(shí)候輸出是c0 00 00 80 00 00 80 00 00 7f
    發(fā)表于 12-25 06:26

    cc2530驅(qū)動(dòng)ADS8862采集數(shù)據(jù),ADS8862老是驅(qū)動(dòng)不成功,為什么?

    cc2530驅(qū)動(dòng)ADS8862采集數(shù)據(jù),2530SPI主模式配置完畢,ADS8862老是驅(qū)動(dòng)不成功,請(qǐng)問有沒有相關(guān)例程呢?望大佬提供下,謝謝!
    發(fā)表于 12-10 07:04

    基于51單片機(jī)的跑馬燈/流水燈系統(tǒng)

    具體實(shí)現(xiàn)功能(1)9種LED流水燈模式通過按鍵進(jìn)行切換,數(shù)碼管顯示流水燈模式。(2)通過加減按鍵可以切換每種LED流水燈的速度。仿真演示視頻
    的頭像 發(fā)表于 10-22 14:12 ?569次閱讀
    基于51單片機(jī)的跑馬燈/<b class='flag-5'>流水燈</b>系統(tǒng)

    《DNK210使用指南 -CanMV版 V1.0》第十五章 按鍵中斷實(shí)驗(yàn)

    第十五章 按鍵中斷實(shí)驗(yàn) 本章實(shí)驗(yàn)將介紹如何使用CanMV讓Kendryte K210通過中斷的方式獲取板載
    發(fā)表于 10-12 09:20

    CC2592前端與CC2530結(jié)合使用

    電子發(fā)燒友網(wǎng)站提供《將CC2592前端與CC2530結(jié)合使用.pdf》資料免費(fèi)下載
    發(fā)表于 09-26 10:13 ?4次下載
    將<b class='flag-5'>CC</b>2592前端與<b class='flag-5'>CC2530</b>結(jié)合使用

    FPGA 實(shí)驗(yàn)一:流水燈模塊

    實(shí)驗(yàn)一:流水燈模塊 對(duì)于發(fā)展商而言,動(dòng)土儀式無疑是最重要的任務(wù)。為此,流水燈實(shí)驗(yàn)作為低級(jí)建模II的動(dòng)土儀式再適合不過了。廢話少說,我們還是開始實(shí)驗(yàn)
    發(fā)表于 06-10 09:38

    【GD32F303紅楓派開發(fā)板使用手冊(cè)】第四講 GEXTI-按鍵中斷檢測(cè)實(shí)驗(yàn)

    通過本實(shí)驗(yàn)主要學(xué)習(xí)以下內(nèi)容: ?EXTI中斷原理; ?按鍵中斷檢測(cè)原理;
    的頭像 發(fā)表于 05-31 10:13 ?850次閱讀
    【GD32F303紅楓派開發(fā)板使用手冊(cè)】第四講 GEXTI-<b class='flag-5'>按鍵</b><b class='flag-5'>中斷</b>檢測(cè)<b class='flag-5'>實(shí)驗(yàn)</b>

    單片機(jī)POV LED流水燈制作

    電子發(fā)燒友網(wǎng)站提供《單片機(jī)POV LED流水燈制作.docx》資料免費(fèi)下載
    發(fā)表于 05-28 14:34 ?3次下載

    使用STM8L152作為主控處理器與CC2530進(jìn)行串口通信,CC2530收不到STM8L的數(shù)據(jù)是怎么回事?

    使用STM8L152作為主控處理器,與CC2530進(jìn)行串口通信。在通信時(shí)候,STM8L能收到CC2530發(fā)來的數(shù)據(jù),但是CC2530卻收不到STM8L的數(shù)據(jù)。使用串口模塊進(jìn)行測(cè)試卻正常。 量了下TX
    發(fā)表于 05-09 07:54