欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

只需一步,快速開(kāi)始

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

CC2530按鍵控制LED開(kāi)關(guān)實(shí)驗(yàn)詳解與源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:261369 發(fā)表于 2017-12-14 01:54 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
4、CC2530 按鍵控制LED開(kāi)關(guān)

1.實(shí)驗(yàn)?zāi)康?/font>
1)、通過(guò)實(shí)驗(yàn)掌握CC2530芯片GPIO的配置方法
2)、掌握Led驅(qū)動(dòng)電路及開(kāi)關(guān)Led的原理
3)、掌握檢測(cè)按鍵的方法

2.實(shí)驗(yàn)設(shè)備

硬件:PC 機(jī) 一臺(tái) EB2530(底板、核心板、仿真器、USB 線) 一套

軟件:2000/XP/win7 系統(tǒng),IAR 8.10 集成開(kāi)發(fā)環(huán)境

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



發(fā)光二極管是屬于二極管的一種,具有二級(jí)管單向?qū)щ娞匦裕粗挥性谡螂妷海ǘ䴓O 管的正極接正,負(fù)極接負(fù))下才能導(dǎo)通發(fā)光。P1.0引腳接發(fā)光二極管(D1)的負(fù)極, 所以P1.0引腳輸出低電平D1亮,P1.0引腳輸出高電平D1熄滅,D2,D3同理。

注:D3燈的控制腳復(fù)用到了防真器,而防真器用到了鎖存器,所以要使得D3亮,必 須取下防真器。

按鍵S1接在P0_1上,當(dāng)按鍵松開(kāi)時(shí),p0_1通過(guò)電阻上拉為高電平,當(dāng)按鍵S1按下時(shí),
p0_1為低電平。


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

操作P1.0我們需要掌握相關(guān)寄存器的作用和配置方法。如下表所示:

寄存器
作用
描述
P1 (0x90)
端口1
端口1。通用I / O端口。可以從SFR位尋址。
P0SEL
端口0 功能
選擇
P0.7 到P0.0功能選擇
0: 通用I / O
1: 外設(shè)功能
P0DIR
端口0方向
P0.7到P0.0的I/O方向
0: 輸入
1: 輸出
P1SEL
端口1 功能
選擇
P1.7 到P0.0功能選擇
0: 通用I / O
1: 外設(shè)功能
P1DIR
端口1 方向
P1.7到P1.0的I/O方向
0: 輸入
1: 輸出

按照表格寄存器的內(nèi)容,對(duì)P1.0口進(jìn)行配置,當(dāng)P1.0輸出低電平時(shí)D1被點(diǎn)亮。 所 以配置如下:


P1SEL &=~0x01; //配置P1.0為通用IO口 ,默認(rèn)為0的,可以不設(shè) P1DIR |= 0x01;              //P10 定義為輸出

按鍵S1配置如下:
P0SEL &= ~0X2;              //設(shè)置 P01 為普通 IO 口
P0DIR &= ~0X2;              //按鍵在 P01 口,設(shè)置為輸入模式

5.源碼分析

1)、請(qǐng)打開(kāi)工程,學(xué)習(xí)例程 \4、CC2530 按鍵控制 LED 開(kāi)關(guān)\sz-yy-zigbee\sz-yy-zigbee.eww
2)、主代碼 main.c 如下:

  1. #include <ioCC2530.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. //定義控制 LED 燈的端口
  5. #define LED1 P1_0 //LED1 為 P1.0 口控制
  6. #define KEY1 P0_1              //KEY1 為 P0.1 口控制
  7. //函數(shù)聲明
  8. void Delayms(uint);              //延時(shí)函數(shù)
  9. void InitLed(void);              //初始化 LED1
  10. void KeyInit();              //按鍵初始化
  11. uchar KeyScan();              //按鍵掃描程序
  12. /**************************** 延時(shí)函數(shù)
  13. *****************************/
  14. void Delayms(uint xms)              //i=xms 即延時(shí) i 毫秒
  15. {
  16. uint i,j;
  17. for(i=xms;i>0;i--)
  18. for(j=587;j>0;j--);
  19. }
  20. /**************************** LED 初始化函數(shù)
  21. *****************************/
  22. void InitLed(void)



  23. {
  24. P1DIR |= 0x01;              //P1_0 定義為輸出 LED1 = 1;              //LED1 燈熄滅
  25. }
  26. /**************************** 按鍵初始化函數(shù)
  27. *****************************/
  28. void InitKey()
  29. {
  30. P0SEL &= ~0X2;              //設(shè)置 P01 為普通 IO 口
  31. P0DIR &= ~0X2;              //按鍵在 P01 口,設(shè)置為輸入模式
  32. }
  33. /**************************** 按鍵檢測(cè)函數(shù)
  34. *****************************/
  35. uchar KeyScan(void)
  36. {
  37. if(KEY1==0)
  38. {
  39. Delayms(10);
  40. if(KEY1==0)
  41. {
  42. while(!KEY1);              //松手檢測(cè)
  43. return 1;              //有按鍵按下
  44. }
  45. }
  46. return 0;              //無(wú)按鍵按下
  47. }
  48. /*************************** 主函數(shù)
  49. ***************************/
  50. void main(void)
  51. {
  52. InitLed();              //調(diào)用初始化函數(shù) InitKey();
  53. while(1)
  54. {
  55. if(KeyScan())              //按鍵改變 LED 狀態(tài) LED1=~LED1;
  56. }



  57. }
復(fù)制代碼

6.實(shí)驗(yàn)步驟

1)、打開(kāi)代碼工程,\4、CC2530 按鍵控制 LED 開(kāi)關(guān)\sz-yy-zigbee\sz-yy-zigbee.eww,如 果 IAR 沒(méi)有很安裝,請(qǐng)按。\學(xué)習(xí)例程以及開(kāi)發(fā)環(huán)境安裝\2.開(kāi)發(fā)環(huán)境搭建.pdf 去安裝。
2)通過(guò)仿真器把開(kāi)發(fā)板接到電腦上。

3)編繹下載。





程序已下載完成,可以運(yùn)行:

4).現(xiàn)象:每按下一次 S1,D1 的狀態(tài)會(huì)跟著變化。



全部資料51hei下載地址:
4、CC2530 按鍵控制LED開(kāi)關(guān).rar (486.34 KB, 下載次數(shù): 13)



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

使用道具 舉報(bào)

沙發(fā)
ID:547648 發(fā)表于 2019-5-26 16:45 | 只看該作者
請(qǐng)問(wèn):cc2530的s2鍵端口是什么?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表