? ? ? ? ?本次設(shè)計(jì)用LED1,LED2,LED3 燈及按鍵S1 為外設(shè)。采用P10、P11、P14 口為輸出口,驅(qū)動(dòng)LED1/LED2/LED3,P01 口為輸入口,接受按鍵信號(hào)輸入(高電平為按鍵信號(hào))。
Q2530RF是丘捷技基于TI公司第二代2.4GHz IEEE 802.15.4 /
RF4CE/ZigBee的第二代片上系統(tǒng)解決方案CC2530 F256的全功能模塊,集射頻收發(fā)及MCU控制功能于一體。外圍原件包含一顆32MHz晶振和一顆32.768KHz晶振及其他一些阻容器件。射頻部分采用巴倫匹配和外置高增益SMA天線,接收靈敏度高,發(fā)送距離遠(yuǎn),空曠環(huán)境最大傳輸距離可達(dá)400米。模塊引出CC2530所有IO口,便于功能評(píng)估與二次開發(fā)。
2.多功能開發(fā)板Q2530EB
多功能擴(kuò)展板Q2530EB 可支持多種射頻主控模塊(例如Q2530RF等),配置有串口液晶顯示接口,USB供電接口,DC 5V電源接口,電池接口,RS232接口,DEBUG接口,五向按鍵及指示燈,紅外遙控信號(hào)接收/發(fā)射等模塊。
所有的外設(shè)均通過SPI總線/UART /DEBUG等接口與射頻模塊Q2530RF 相連,并完全受Q2530RF 控制和訪問。
多功能仿真擴(kuò)展板Q2530EB 采用三種電源供電方式:DC 5V供電、USB接口供電、電池供電,可在插座P5設(shè)置跳線選擇,PIN1-PIN2 為電池供電,PIN2-PIN3 為外接直流電源或者USB接口供電。電源開關(guān)為P4。
Q2530EB 板卡背面的電池盒可放置3節(jié)5號(hào)干電池,輸出電壓3.4~4.5V,板載電源電路將其調(diào)整到+3.3V 穩(wěn)定的直流電壓輸出供后級(jí)使用。當(dāng)電池電壓低于3.4V 時(shí),應(yīng)更換電池以保持模塊正常工作。
Q2530EB 帶有1個(gè)DC 5V的電源適配器接口P2和一個(gè)USB接口P1,輸入電壓經(jīng)過穩(wěn)壓器降壓為+3.3V輸出供后極使用。
Q2530EB 液晶顯示模塊提供串口控制方式,液晶顯示模塊放置于P12 的奇數(shù)腳側(cè),且1~16腳對(duì)應(yīng)于P12的1~31腳, 與TI 官方SmartRF05EB 不同,我司多功能仿真擴(kuò)展板Q2530EB 液晶顯示模塊為選配部件,選用128*64 的點(diǎn)陣圖形液晶顯示模塊,并提供該液晶模塊的驅(qū)動(dòng)源代碼。對(duì)不想在這個(gè)環(huán)節(jié)浪費(fèi)精力的項(xiàng)目開發(fā)者來說,我司已為您準(zhǔn)備好TI 公司Z-Stack/Basic RF 等幾個(gè)平臺(tái)下的液晶顯示驅(qū)動(dòng)文件,您只需將該文件將TI 官方資料中同名文件替換即可。
多功能仿真擴(kuò)展板Q2530EB配置的RS232接口可用于與其他外設(shè)進(jìn)行通訊。電路上采用U5進(jìn)行RS232電平轉(zhuǎn)換。通過RS232插座P10 與外設(shè)相連。
串口設(shè)有電源跳線P9,用于設(shè)置串口芯片啟動(dòng)和關(guān)閉。
串口帶有兩個(gè)收發(fā)指示燈D5、D6,分別用于表示串口是否收到或在發(fā)送數(shù)據(jù),D7為串口電源指示燈。
多功能仿真擴(kuò)展板Q2530EB 的主控部分為外接的射頻控制模塊。通過P14、P15 與Q2530RF 控制模塊連接。
多功能仿真擴(kuò)展板Q2530EB提供DEBUG接口P13與仿真器相連,并將相關(guān)信號(hào)(SPI總線,DEBUG信號(hào)等)通過插座P14、P15連接至射頻控制模塊Q2530RF,這些信號(hào)線也可通過P11進(jìn)行斷開。
多功能仿真擴(kuò)展板Q2530EB 提供一個(gè)五相按鍵(U3)、四個(gè)輕觸按鍵(S1/S2/S3/S4)、六顆LED(D1/D2/D3/D4/D8/D9)顯示。
U3可以檢測五個(gè)方向(中心、向上、向下、向左、向右)和一個(gè)按鍵動(dòng)作。這樣的話就需要有KEY_UP、KEY_DOWN、KEY_LEFT、KEY_RIGHT、KEY_PUSH 五個(gè)信號(hào)來描述方向按鍵動(dòng)作。如果用五個(gè)AD 口來采樣信號(hào),對(duì)某些射頻控制模塊來說是不現(xiàn)實(shí)的或者說不經(jīng)濟(jì)的。在與射頻控制模塊Q2530RF 配合時(shí),Q2530EB 提供兩個(gè)信號(hào)KEY_MOVE, KEY_LEVEL來描述按鍵動(dòng)作。當(dāng)按鍵朝任何方向移動(dòng)或被按下時(shí),KEY_MOVE 為高電平。
同時(shí),另一個(gè)信號(hào)KEY_LEVEL的值來表述按鍵方向。
四個(gè)輕觸按鍵(S1/S2/S3/S4)中S4 為系統(tǒng)復(fù)位鍵(RESET),S3 為RemoTI開發(fā)系統(tǒng)定義按鍵,S1、S2為Zigbee開發(fā)系統(tǒng)定義按鍵 。
六個(gè)LED(D1/D2/D3/D4/D8/D9)中D1/D2/D3/D4為Zigbee 開發(fā)系統(tǒng)定義LED,D8/D9為RemoTI開發(fā)系統(tǒng)定義LED顯示。
多功能擴(kuò)展開發(fā)板Q2530EB配置一個(gè)串口FLASH(U7)用于數(shù)據(jù)和參數(shù)的存儲(chǔ)。
紅外遙控信號(hào)的輸入由U8 及其他一些阻容件完成,IR 信號(hào)經(jīng)解調(diào)去載波后輸入射頻控制模塊Q2530RF。紅外遙控信號(hào)的輸出由射頻控制模塊Q2530RF 直接驅(qū)動(dòng)紅外發(fā)射二極管D10完成發(fā)射。
板上含有一個(gè)10k的電位器,方便用戶進(jìn)行模擬量A/D采樣的學(xué)習(xí)與實(shí)驗(yàn),電位器與2530的跳線連接默認(rèn)是斷開的,實(shí)驗(yàn)前應(yīng)將P16的25、26兩腳用跳線帽短接;由于電位器、液晶背光、備用LED三個(gè)信號(hào)復(fù)用了2530的同一個(gè)管腳,使用時(shí)還應(yīng)將P11的31、32腳和P16的27、28腳也斷開。
3.多功能電池板Q2530BB
Q2530BB 的射頻控制板接口定義同Q2530EB 板保持一致。
延續(xù)Q2530EB 的三種供電方式:DC5V、USB或電池供電??稍诓遄鵓5 設(shè)置跳線選擇,PIN1-PIN2 為電池供電,PIN2-PIN3 為外接直流電源或USB供電。電源開關(guān)為P4, 開關(guān)旁有”O(jiān)N”/”O(jiān)FF”字符指示。
Q2530BB提供DEBUG接口P10與仿真器相連,相關(guān)信號(hào)(SPI總線、DEBUG信號(hào)等)通過插座P8、P9連接至射頻控制模塊Q2530RF,也可通過P11進(jìn)行相關(guān)信號(hào)的連接與斷開選擇。
用戶可在PC上通過仿真器實(shí)現(xiàn)對(duì)射頻控制模塊Q2530RF的程序仿真調(diào)試和下載。
Q2530BB 同樣提供與仿真器配合實(shí)現(xiàn)協(xié)議分析儀Packet Sniffer的功能。
Q2530BB 提供1個(gè)輕觸按鍵S2和1個(gè)復(fù)位按鍵S1。同時(shí)提供兩個(gè)LED指示燈D1和D2。
Q2530BB 采用一個(gè)光敏電阻構(gòu)成光照度傳感器電路,一個(gè)溫敏電阻構(gòu)成的溫度傳感器電路,然后輸入IC 進(jìn)行AD 轉(zhuǎn)換。開發(fā)系統(tǒng)提供了zstack組網(wǎng)時(shí),對(duì)兩路外部傳感器電壓采樣的樣例程序。
下面是本次設(shè)計(jì)的流程圖:
設(shè)計(jì)相關(guān)寄存器:P1,P1DIR,P0SEL,P0INP,P0,P0DIR
程序功能:本設(shè)計(jì)程序?qū)崿F(xiàn)按鍵控制LED 燈:開機(jī)按鍵一次,LED3、LED2、LED1 依次點(diǎn)亮;再次按鍵,LED3、LED2、LED1 依次熄滅;如此循環(huán)。
本次實(shí)習(xí)的程序代碼如下所示:
//BY QIUJIE TECH.INC
#include 《ioCC2530.h》
#define uint unsigned int
#define uchar unsigned char
//定義控制燈的端口
#define RLED P1_0 //定義LED1為P10口控制
#define GLED P1_1 //定義LED2為P11口控制
#define YLED P1_4 //定義LED3為P14口控制
#define KEY1 P0_1 //定義按鍵為P01口控制
//函數(shù)聲明
void Delay(uint); //延時(shí)函數(shù)聲明
void InitIO(void); //初始化函數(shù)聲明
void InitKey(void); //初始化按鍵函數(shù)聲明
uchar KeyScan(void); //按鍵掃描函數(shù)聲明
uchar Keyvalue = 0 ; //定義變量記錄按鍵動(dòng)作
uint KeyTouchtimes = 0 ; //定義變量記錄按鍵次數(shù)
/****************************
//按鍵初始化
*****************************/
void InitKey(void)
{
P0SEL &= ~0X02;
P0DIR &= ~0X02; //按鍵在P01口,設(shè)置為輸入模式
P0INP |= 0x02; //上拉
}
/****************************
//初始化程序,將P10、P11、P14定義為輸出口,并將LED燈初始化為滅
*****************************/
void InitIO(void)
{
P1DIR |= 0x13; //P10、P11、P14定義為輸出
RLED = 0;
GLED = 0;
YLED = 0; //LED燈初始化為滅
}
/*****************************************
//按鍵動(dòng)作記錄函數(shù)
*****************************************/
uchar KeyScan(void)
{
if(KEY1 == 1) //高電平有效
{
Delay(100); //檢測到按鍵
if(KEY1 == 1)
{
while(KEY1); //直到松開按鍵
return(1);
}
}
return(0);
}
/***************************
//主函數(shù)
***************************/
void main(void)
{
InitIO(); //初始化LED燈控制IO口
InitKey(); //初始化按鍵控制IO口
while(1)
{
Keyvalue = KeyScan(); //讀取按鍵動(dòng)作
if(Keyvalue == 1) //按下按鍵設(shè)置為LED3,LED2,LED1倒序流水閃爍
{
GLED = !GLED;
Delay(20000);
YLED = !YLED;
Delay(20000);
RLED = !RLED;
Delay(20000);
}
}
}
以下是本次設(shè)計(jì)的原理圖
Q2530BB電池板原理圖
Q2530EB開發(fā)板原理圖
Q2530RF射頻板原理圖
評(píng)論
查看更多