色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于C語言驅動CC2530的GPIO實現對信號燈控制

454398 ? 來源:博客園 ? 作者:Reqaw ? 2020-10-19 11:30 ? 次閱讀

本問主要介紹了CC2530處理器的通用輸入/輸出接口(GPIO),以及GPIO的位操作,理解GPIO的基本原理和功能,最后使用C語言驅動CC2530的GPIO實現對信號燈的控制。

CC2530的GPIO引腳有3個8位端口,分別是端口0,端口1和端口2,分別表示位P0,P1,P2,其中P0和P1是8位端口,而P2只有5位可用,所有端口均可以通過SFR寄存器來進行位尋址和字節尋址。

寄存器PxSEL中的x表示端口0~2,用來設置端口的每個引腳位GPIO(0)或者外部設備輸入信號(1),在默認情況下,當復位之后,所有的數字輸入/輸出引腳都設置為通用輸入引腳。

寄存器PxDIR用來改變一個端口引腳的方向,0設置為輸入,1設置為輸出。

GPIO一般是通過位操作完成寄存器設置的,而常用的位操作符有按位與“&”,按位或“|”,按位取反“~”,按位異或“^”,以及左移“<<”和右移“>>”操作。值得注意的是常使用按位或運算符將一個數據位置1,比如將P0端口方向寄存器的第一位和第二位置1(P0端口的0和1引腳置為輸出模式),可以寫為P0DIR |= 0x03;常使用按位與“&”將一個數據位置0,比如P0SEL &= ~0x03;,表示將將端口0和1配置位GPIO模式。

通過查看電路圖,實現CC2530微處理器開發板上的紅燈亮,只需使P0_1為0即可。

驅動程序如下:

 1 #include "iocc2530.h"
 2 
 3 #define uint unsigned int
 4 #define uchar unsigned char 
 5 
 6 #define Rled P1_1
 7 #define Gled P1_0
 8 #define ON  0
 9 #define OFF 1
10 #define Key1 P1_4
11 
12 void delay(uint n){//定義延時函數
13     uint i, j;
14     for(i = 0; i < n; i++)
15         for(j = 500; j >= 0; j--);
16 }
17 void key_init(){
18     P1SEL &= 0x10;//GPIO模式
19     P1DIR &= 0x10;//輸出模式
20 }
21 void led_init(){
22     P1SEL &= ~0x03;//GPIO模式
23     P1DIR |= 0x03; //輸出模式
24 
25     Rled = OFF;
26     Gled = OFF;
27 }
28 void main()
29 {
30     led_init();//led初始化
31     key_init();//案件初始化
32     Rled = ON;//打開紅燈
33     
34     while(1){
35          if(Key1 == ON){
36              delay(1000);   //消抖
37              if(Key1 == ON){
38                 while(Key1 == ON);//松手檢測
39 
40                 Rled = ~Rled;
41             }
42          }
43     }
44 }

燒寫完成后,可以看到綠燈常亮,按鍵被按下之后紅燈改變一次狀態,功能完成。

需要思考的是有時按鍵控制led時不太準確,后者說不太靈敏,從而引入下一節,通過中斷使得按鍵控制led更加準確。
編輯:hfy

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19259

    瀏覽量

    229653
  • led
    led
    +關注

    關注

    242

    文章

    23252

    瀏覽量

    660590
  • 寄存器
    +關注

    關注

    31

    文章

    5336

    瀏覽量

    120232
收藏 人收藏

    評論

    相關推薦

    CC2530 GPIO口輸入配置配置步驟

    介紹CC2530 GPIO口輸入配置配置。
    的頭像 發表于 07-06 14:40 ?2608次閱讀
    <b class='flag-5'>CC2530</b> <b class='flag-5'>GPIO</b>口輸入配置配置步驟

    CC2530控制LED閃爍該如何去實現

    CC2530控制LED閃爍CC2530 控制LED閃爍電路圖知識點CC2530有兩個高頻時鐘輸入輸出配置程序及注釋
    發表于 01-24 07:51

    基于CC2530的SDHC卡讀寫設計

    提出了將SDHC卡作為CC2530的外部存儲設備實現數據存儲的方法。SDHC卡具有體積小、存儲容量大的特點,通過CC2530組建的無線傳感網絡適用于工業監測,而將SDHC卡與CC2530
    發表于 05-02 14:28 ?3610次閱讀
    基于<b class='flag-5'>CC2530</b>的SDHC卡讀寫設計

    cc2530的PWM實現

    CC2530 結合了領先的RF 收發器的優良性能,業界標準的增強型8051 CPU,系統內可編程閃存,8-KB RAM 和許多其它強大的功能。CC2530 有四種不同的閃存版本:CC2530F32/64/128/256,分別具有
    發表于 11-07 18:43 ?4012次閱讀
    <b class='flag-5'>cc2530</b>的PWM<b class='flag-5'>實現</b>

    cc2530程序設計實例之CC2530 RF部分使用—實現點對點收發

    本文主要介紹了cc2530程序設計實例之CC2530 RF部分使用—實現點對點收發,通過串口調試助手發送字節數據。例如通過串口向設備A發送HelloCC2530,設備B可收到Hello
    發表于 12-09 12:22 ?2.2w次閱讀
    <b class='flag-5'>cc2530</b>程序設計實例之<b class='flag-5'>CC2530</b> RF部分使用—<b class='flag-5'>實現</b>點對點收發

    CC2530 GPIO輸出控制-控制Led亮滅實驗資料下載

    CC2530 GPIO輸出控制-控制Led亮滅實驗資料下載
    發表于 05-03 09:47 ?1次下載

    CC2530GPIO輸出控制-Led閃爍、流水燈實驗資料下載

    CC2530GPIO輸出控制-Led閃爍、流水燈實驗資料下載
    發表于 05-03 09:42 ?5次下載

    基于WSN的信號燈控制系統設計與實現

    基于WSN的信號燈控制系統設計與實現
    發表于 05-29 11:52 ?4次下載

    CC2530控制LED閃爍

    CC2530控制LED閃爍CC2530 控制LED閃爍電路圖知識點CC2530有兩個高頻時鐘輸入輸出配置程序及注釋
    發表于 11-29 18:51 ?15次下載
    <b class='flag-5'>CC2530</b><b class='flag-5'>控制</b>LED閃爍

    CC2530 引腳配置函數

    CC2530 引腳配置函數使用下面的函數可以避免麻煩的位邏輯運算,GPIO_Config.c:/*驅動文件:配置引腳作者:JX*/#include<ioCC2530.h>
    發表于 11-29 19:06 ?12次下載
    <b class='flag-5'>CC2530</b> 引腳配置函數

    CC2530 GPIO 控制LED燈

    I/O 控制寄存器寫入數據可以控制 I/O 口輸入輸出模式,實現對某些設備的控制信號采集的功能。若將通用 I/O 進行組合配置可以
    發表于 11-29 19:51 ?11次下載
    <b class='flag-5'>CC2530</b> <b class='flag-5'>GPIO</b> <b class='flag-5'>控制</b>LED燈

    CC2530按鍵控制流水燈設計

      實驗目的   1)、通過實驗掌握CC2530芯片GPIO的配置方法,帶你一步步走進嵌入式大門   2)、握Led驅動電路及開關Led的原理   3)、掌握檢測按鍵的方法
    發表于 04-11 15:55 ?8次下載

    CC2530按鍵控制LED開關實驗

      實驗目的   1)、通過實驗掌握CC2530芯片GPIO的配置方法   2)、掌握Led驅動電路及開關Led的原理   3)、掌握檢測按鍵的方法
    發表于 04-11 15:32 ?6次下載

    CC2530驅動OLED源代碼

    CC2530驅動OLED源代碼
    發表于 09-27 14:48 ?2次下載

    cc2530繼電器模塊使用

    CC2530繼電器模塊是一款基于TI公司的低功耗無線通信芯片CC2530的繼電器應用模塊。它能實現物聯網設備之間的遠程控制,廣泛應用于家庭自動化、工業
    的頭像 發表于 12-21 14:47 ?1517次閱讀
    主站蜘蛛池模板: 中文无码热在线视频| 青青草AV国产精品| 国产亚洲欧美在线观看三区 | 美女脱衣服搞鸡| 精品水蜜桃久久久久久久| 国产午夜精品理论片久久影视| 动漫AV纯肉无码AV电影网| YIN荡的老师系列第6部分视频| 2019午夜福合集不打码| 最新国产在线视频在线| 伊人久久精品线影院| 伊人青青操| 在线观看日本污污ww网站| 中文字幕亚洲综合小综合在线| 中国二级毛片| 99久久e免费热视频百度| 99国产这里只有精品视频| 99热这里只有是精品| 爱豆剧果冻传媒在线播放| 俄罗斯孩交精品| 国产精品久久久久激情影院| 国产精品一区二区在线播放| 国产一区二区三区四区五在线观看| 国语92电影网午夜福利| 精品国产在线手机在线| 久久中文字幕无码A片不卡| 美女被爆羞羞天美传媒| 欧美视频 亚洲视频| 日韩精品AV一区二区三区| 无码AV熟妇素人内射V在线| 亚洲精品久久久久无码AV片软件 | 美女网站免费看| 能看的黄页最新网站| 日韩亚洲不卡在线视频| 我在厨房摸岳的乳HD在线观看| 亚洲国产AV精品一区二区蜜芽| 亚洲日韩KKK444KKK聚色| 1300部真实小Y女视频合集| hdxxxx58丝袜连裤袜| 国产精品成人久久久久A伋| 精品极品三大极久久久久|