物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件_第1頁
物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件_第2頁
物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件_第3頁
物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件_第4頁
物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件_第5頁
已閱讀5頁,還剩61頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

CC2530單片機開發(fā)中智訊(武漢)科技有限企業(yè)物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第1頁CC2530處理器介紹無線開發(fā)套件(培訓)IAR程序開發(fā)與調試CC2530慣用接口試驗CC2530外設驅動試驗CC2530綜合程序設計物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第2頁TICC2530處理器CC2530是基于2.4-GHzIEEE802.15.4、ZigBee、ZigBeePRO和ZigBeeRF4CE上一個片上系統(tǒng)處理方案。其特點是以極低總材料成本建立較為強大網絡節(jié)點。CC2530芯片集成增強型8051CPU,內置高性能RF收發(fā)器,系統(tǒng)內可編程閃存(32~256KB),8KBRAM,廣泛外設集等許多其它模塊強大功效。CC2530含有各種運行模式,使得它能滿足超低

功耗系統(tǒng)要求。同時CC2530運行模式之間

轉換時間很短,使其深入降低能源消耗。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第3頁CC2530無線收發(fā)器CC2530提供了一個IEEE802.15.4兼容無線收發(fā)器。RF內核控制模擬無線模塊。另外,它提供了MCU和無線設備之間一個接口,這使得能夠發(fā)出命令、讀取狀態(tài)、自動操作和確定無線設備事件次序。無線設備還包含一個數據包過濾和地址識別模塊。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第4頁CC2530芯片接口與資源DeviceTypeWirelessMCU

Frequency(MHz)24

Flash(KB)Upto256

RAM8KB

Security128-bitAES

PeripheralsSPI,UART

Timers1*16-bit,

2

*

8-bitGPIO21

ADC12-bit,8channel

RXCurrent(Lowest)(mA)20.5

SleepCurrent(uA)0.4

RXSensitivity(dBm)-97

DataRate(Max)(kbps)250

OperatingTemperatureRange(C)-40to125

PackageGroupVQFN

KeyApplications2.4-GHzIEEE802.15.4Systems

RF4CERemoteControlSystems

ZigBeeSystems(256-KBFlash)

Home/BuildingAutomation

LightingSystems

IndustrialControlandMonitoring

Low-PowerWirelessSensorNetworks

ConsumerElectronics

HealthCare

物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第5頁CC2530參考設計圖物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第6頁CC2530處理器介紹無線開發(fā)套件(培訓)IAR程序開發(fā)與調試CC2530慣用接口試驗CC2530外設驅動試驗CC2530綜合程序設計物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第7頁培訓設備(節(jié)點&傳感器)123ZigBee節(jié)點(1)ZigBee調試接口(1)ZigBee

USB串口(1)456ZigBee節(jié)點(2)ZigBee調試接口(2)ZigBee

USB串口(2)789ZigBee節(jié)點(3)ZigBee調試接口(3)ZigBee

USB串口(3)1011通信數據燈網絡狀態(tài)燈12溫濕度13光強度14絲桿電機(窗簾)1516風扇RGB彩燈17RFID18空氣質量20燃氣19LED燈17蜂鳴器(報警器)21按鍵溫濕度光強度絲桿電機按鍵節(jié)點一RFIDRGB彩燈風扇按鍵節(jié)點二LED燈空氣質量燃氣蜂鳴器按鍵節(jié)點三物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第8頁培訓設備(節(jié)點一)物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第9頁培訓設備(節(jié)點二)物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第10頁培訓設備(節(jié)點三)物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第11頁傳感器資源分布節(jié)點一功效說明P0_0EN_M絲桿電機P0_6DIRP0_7STEPP0_2TEMP_DATA溫濕度P0_3TEMP_SCLP0_4HUMI_SDA光強度P0_5HUMI_DIRP1_0LED6數據燈P1_1LED5網絡燈P2_0K5按鍵節(jié)點二功效說明P0_0RGB_R0RGB彩燈0P0_1RGB_G0P0_2RGB_B0P0_3RGB_R1RGB彩燈1P0_4RGB_G1P0_5RGB_B1P0_6FAN_AD風扇P0_7FAN_SWP1_0LED8數據燈P1_1LED7網絡燈P1_4RFID_TXRFIDP1_5RFID_RXP2_0K3按鍵節(jié)點三功效說明P0_0LED1LED燈P0_1LED2P0_2LED3P0_3LED4P0_4AIR_ADC空氣質量監(jiān)測P0_5ADC_VOLT_BAT電池電壓監(jiān)測P0_6GAS_ADC燃氣電壓監(jiān)測P0_7BUZZER蜂鳴器P1_0LED10數據燈P1_1LED9網絡燈P2_0K2按鍵物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第12頁CC2530處理器介紹無線開發(fā)套件(培訓)IAR程序開發(fā)與調試CC2530慣用接口試驗CC2530外設驅動試驗CC2530綜合程序設計物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第13頁IAR集成開發(fā)環(huán)境IARSystems是全球領先嵌入式系統(tǒng)開發(fā)工具和服務供給商,其IAREmbeddedWorkbenchIDE開發(fā)環(huán)境適合用于大量8位、16位以及32位微處理器和微控制器;TI官方CC2530DEMO和ZStack默認是使用IAREmbeddedWorkbenchIDE(簡稱IAR)工程。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第14頁IAR項目工程示例物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第15頁IAR軟件開發(fā)幾個步驟使用IARIDE進行軟件開發(fā)遵照以下步驟:創(chuàng)建工程添加源碼工程配置編譯工程調試程序鏡像下載物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第16頁創(chuàng)建工程打開IAR,創(chuàng)建新工程:點擊File->New->Workspace;創(chuàng)建一個新項目:點擊Project->CreateNewProject,Toolchain選擇8051。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第17頁添加源碼右鍵單擊新建工程項目,選擇:Add->AddFiles…,添加編寫好源碼文件。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第18頁工程配置選擇設備信息:GeneralOptions->Target,Device選擇CC2530F256。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第19頁工程配置鏈接設置:Linker->ExtraOptions,勾選上Usecommandlineoptions,添加命令:-Ointel-extended,(CODE)=.hex物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第20頁工程配置調試選項:Debugger->Setup,Driver選擇TexasInstruments。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第21頁編譯工程編譯工程:點擊Project->RebuildAll或者Make編譯工程。Buildingconfiguration:led_test-DebugUpdatingbuildtree...main.cLinking

Totalnumberoferrors:0Totalnumberofwarnings:0物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第22頁第一次使用要安裝驅動(win7以上版本會自動安裝):驅動位置,C:\ProgramFiles(x86)\TexasInstruments\SmartRFTools\Drivers\Cebal)調試程序無線節(jié)點板接上5V電源適配器,按下電源開關上電,此時節(jié)點板電源指示燈D2會點亮;將仿真器連接電腦和無線節(jié)點JTAG調試口,按下CC2530仿真器上復位按鍵,點擊Project->DownloadandDebug將程序下載到CC2530節(jié)點板,下載成功后IARIDE進入到調試狀態(tài),程序指針會運行到main函數處;接下來就能夠進行程序單步、斷點等調試方法了。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第23頁工具欄慣用按鈕工具欄基本按鈕:在調試狀態(tài)下,程序重新編譯、下載并進入運行狀態(tài)在光標處設置斷點/取消斷點程序編譯、下載并進入運行狀態(tài)編譯工程全部文件編譯選定單個文件調試狀態(tài)按鈕:Reset:程序復位,運行到main函數StopDebugging退出調試狀態(tài)Go:程序全速運行Runtocursor:程序運行到光標處NextStatement:程序運行到下一條語句StepOut:程序運行跳出子函數StepInto:程序運行進入子函數StepOver:程序逐行運行暫停運行物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第24頁調試慣用窗口存放器窗口:View->Register物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第25頁調試慣用窗口變量觀察窗口:View->Watch物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第26頁調試慣用窗口設置斷點:在程序行單擊出現紅色圓圈,則設置成功物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第27頁鏡像下載前面步驟編譯后會生產hex格式鏡像文件;打開SmartRFProgrammer,“program”菜單項選擇擇“ProgramCCxxxxSoCorMSP430”,此時“System-on-Chip”選項卡能夠看到已經識別了仿真器為SmartRF04EB和節(jié)點芯片類型為CC2530,假如沒有看到仿真器,則按一下仿真器復位按鈕。在Flashimage選項選擇要固化hex格式鏡像;點擊“Performactions”按鈕開始下載鏡像文件,成功后,會提醒“Erase,programandverifyOK”物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第28頁操作視頻物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第29頁CC2530處理器介紹無線開發(fā)套件(培訓)IAR程序開發(fā)與調試CC2530慣用接口試驗CC2530外設驅動試驗CC2530綜合程序設計物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第30頁CC2530:I/OCC2530有21個數字輸入/輸出引腳,能夠配置為通用數字I/O或外設I/O信號,配置為連接到ADC、定時器或USART外設。這些I/O口用途能夠經過一系列存放器配置,由用戶軟件加以實現。I/O端口具備以下主要特征:21個數字I/O引腳能夠配置為通用I/O或外部設備I/O輸入口具備上拉或下拉能力含有外部中止能力。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第31頁CC2530:I/O用作通用I/O時,引腳能夠組成3個8位端口,端口0、端口1和端口2,表示為P0、P1和P2。其中,P0和P1是完全8位端口,而P2僅有5位可用。全部端口均能夠經過SFR存放器P0、P1和P2位尋址和字節(jié)尋址。每個端口引腳都能夠單獨設置為通用I/O或外部設備I/O。除了兩個高驅動輸出口P1.0和P1.1各具備20mA輸出驅動能力之外,全部輸出均具備4mA驅動能力。通用I/O慣用存放器:存放器PxSEL,其中x為端口標號0~2,用來設置每個端口引腳為通用I/O或者是外部設備I/O信號,默認為通用I/O。存放器PxDIR,其中x為端口標號0~2,用來設置每個端口引腳為輸入或輸出,默認為輸入。端口存放器P0、P1和P2,表示端口邏輯值。端口存放器能夠對獨立位進行讀寫操作,比如:P0_0=1存放器PxINP,其中x為端口標號0~2,能夠設置端口上拉、下拉或三態(tài)操作模式(存放器P2INPbit5~7設置三組端口上下拉模式),默認上拉。。引腳P1.0和P1.1沒有上拉/下拉功效。物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第32頁CC2530:I/OP0_0P0_1P0_2P0_3物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第33頁CC2530:I/OI/O接口試驗:開始時鐘初始化LED初始化LED狀態(tài)取反延時P0SEL&=~(0x0F);P0DIR|=0x0F;P0|=0xF;P0^=0xF;While(1)P0_0P0_1P0_2P0_3物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第34頁CC2530:中止CC2530通用I/O引腳設置為輸入后,能夠用于產生中止。中止能夠設置在外部信號上升或下降沿觸發(fā)。P0、P1或P2端口都有中止使能位。為了使能任一中止功效,應該采取以下步驟:去除中止標志。設置PxIEN存放器中對應各中止使能位為1設置存放器IENx中對應中止使能位為1設置IEN0中EA位為1使能全局中止在該中止對應向量地址上,運行該中止服務程序物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第35頁CC2530:中止P2_0物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第36頁CC2530:中止中止試驗:開始時鐘初始化按鍵初始化LED狀態(tài)取反延時P2SEL&=~(0x01);P2DIR&=~(0x01);P2INP&=~(0x01);//上拉P2IEN|=0x01;//開P2_0中止PICTL|=0x08;//下降沿觸發(fā)IEN2|=0x02;//開P2端口中止EA=1;

//開總中止While(1)P2_0LED初始化//中止服務程序EA=0;//關總中止if(P2IFG&0x01){//判斷中止標志位LED1=~LED1;//LED1狀態(tài)反轉}P2IFG&=~(0x01);//清P2_0中止標志位IRCON2&=~(0x01);//清端口2中止標志位EA=1;//開總中止物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第37頁CC2530:定時器CC2530定時器1是一個獨立16位定時器,支持經典定時/計數功效,比如輸入捕捉,輸出比較和PWM功效。定時器有五個獨立捕捉/比較通道。定時器1功效以下:五個捕捉/比較通道上升沿、下降沿或任何邊緣輸入捕捉設置、去除或切換輸出比較自由運行、模模式或正計數/倒計數操作可被1,8,32或128整除時鐘分頻器在每個捕捉/比較和最終計數上生成中止請求DMA觸發(fā)功效物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第38頁CC2530:定時器物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第39頁CC2530:定時器定時器試驗:開始時鐘初始化定時器初始化LED2狀態(tài)取反延時T1CTL|=0x0E;//128分頻,模模式T1CC0L=62500%256;//裝入定時器初值T1CC0H=62500/256;T1CCTL0|=0x04;//設置通道0為比較模式IEN1|=0x02;//定時器1中止使能EA=1;//開總中止While(1)LED初始化//定時器中止服務程序EA=0;//關總中止if(T1STAT&0x01){//判斷中止標志位LED1=~LED1;//LED1狀態(tài)反轉}T1STAT&=~(0x01);//清定時器中止標志位EA=1;//開總中止系統(tǒng)在不配置工作頻率時默認為2分頻(CLKCONCMD.TICKSPD=001),即16M=32M/2,則定時器為1/(16M/128)*62500=0.5s物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第40頁CC2530:ADCCC2530ADC支持14位模擬數字轉換,含有多達12位ENOB(有效位)。它包含一個模擬多路轉換器,含有多達8個各自可配置通道,以及一個參考電壓發(fā)生器。轉換結果經過DMA寫入存放器。還含有若干運行模式。ADC主要特征以下:可選抽取率,這也設置了分辨率(7到12位)8個獨立輸入通道,可接收單端或差分信號參考電壓可選為內部單端、外部單端、外部差分或AVDD5產生中止請求轉換結束時DMA觸發(fā)溫度傳感器輸入電池測量功效物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第41頁CC2530:ADCP0_4物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第42頁CC2530:ADCADC試驗:空氣質量數據采集開始時鐘初始化ADCIO初始化LED狀態(tài)取反延時P0SEL|=0x10;P0DIR&=~(0x10);APCFG|=0x10;//P0_4配置為模擬IOWhile(1)LED初始化P0_4獲取ADC數字量ADCCON3|=0xB4;//選擇AVDD5引腳電壓,12位精度,通道4ADCCON1|=0x70;//開啟AD轉化while(!(ADCCON1&0x80));//等候ADC轉換完成get_ADCL=ADCL;//獲取低位ADC數據get_ADCH=ADCH;//獲取高位ADC數據temp=(((u16)get_ADCH<<8)|get_ADCL);//獲取ADC數字量數據if(temp&0x8000){//假如符號位為1temp=~temp;//AD值取反

symbol=0;//符號位至零

}elsesymbol=1;//不然符號位至一

value=(temp>>3);//獲取有效12位數字量(ADCL存放器第3位到ADCH存放器第6位)if(symbol)returnvalue;//假如為正則直接返回參數

elsereturn-value;//不然添加負號物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第43頁CC2530:ADC經過調試窗口能夠查看到ADC轉換數值改變物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第44頁CC2530:串口通信CC2530有兩個串口,分別是USART0和USART1,它們能夠分別運行于異步UART模式或者同時SPI模式。USART模式操作詳細以下特點:8位或者9位負載數據奇校驗、偶校驗或者無奇偶校驗配置起始位和停頓位電平配置LSB(最低有效位)或MSB(最高有效位)首先傳輸獨立接收中止獨立收發(fā)DMA觸發(fā)奇偶校驗和幀校驗犯錯狀態(tài)物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第45頁CC2530:串口通信-存放器PERCFG:外設控制存放器P2DIR:端口2方向和端口0外設優(yōu)先級控制IEN0:中止使能0存放器IRCON2:中止標志控制存放器UxCSR:USARTx控制和狀態(tài)存放器UxUCR:USARTx串口控制存放器UxGCR:USARTx通用控制存放器UxBUF:USARTx接收/發(fā)送數據緩沖存放器UxBAUD:USARTx波特率控制存放器物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第46頁CC2530:串口通信串口通信試驗:開始時鐘初始化串口初始化若收到串口數據則發(fā)送出去去除發(fā)送標志位P1SEL|=0xC0;//初始化UART1端口PERCFG|=0x02;//選擇UART1為可選位置二

U1CSR=0x80;//設置為UART模式U1UCR|=0x00;//無奇偶校驗,停頓位為1位

U1GCR=0x0A;U1BAUD=0x3B;//波特率設置為38400

UTX1IF=0;//發(fā)送標志位清零URX1IF=0;//接收標志位清零IEN0|=0x08;//使能串口1接收中止U1CSR|=0x40;//接收器使能EA=1;//開總中止While(1)EA=0; //關總中止rxd_temp=U1DBUF;//獲取接收數據rxd_buffer[recevbytes++]=rxd_temp;//獲取接收緩存if(rxd_temp=='\n'){//假如接收到回車信號

send_flag=1;//發(fā)送標志位置一

rxd_buffer[recevbytes++]='\0';//向緩存寫入結束符

recevbytes=0;//去除計數位}URX1IF=0;//發(fā)送完成后將標志位清零EA=1; //開總中止物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第47頁CC2530處理器介紹無線開發(fā)套件(培訓)IAR程序開發(fā)與調試CC2530慣用接口試驗CC2530外設驅動試驗CC2530綜合程序設計物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第48頁RGB彩色LEDRGB彩色LED燈珠,經過調整紅綠藍三色LED來改變顏色P0_0P0_1P0_2P0_3P0_4P0_5#defineRGB0_RP0_0//宏定義RGB控制引腳P0_0為RGB0_R#defineRGB0_GP0_1//宏定義RGB控制引腳P0_1為RGB0_G#defineRGB0_BP0_2//宏定義RGB控制引腳P0_2為RGB0_B#defineNO0//宏定義RGB燈開狀態(tài)控制為NO#defineOFF1//宏定義RGB燈關狀態(tài)控制為OFF#defineRGB0(r,g,b)RGB0_R=r;RGB0_G=g;RGB0_B=b//宏定義RGB組合控制#defineRGB0_REDRGB0(NO,OFF,OFF)//宏定義RGB為紅色控制組合#defineRGB0_GREENRGB0(OFF,NO,OFF)//宏定義RGB為綠色控制組合#defineRGB0_BULERGB0(OFF,OFF,NO)//宏定義RGB為藍色控制組合#defineRGB0_YELLOWRGB0(NO,NO,OFF)//宏定義RGB為黃色控制組合#defineRGB0_CYANRGB0(OFF,NO,NO)//宏定義RGB為青色控制組合#defineRGB0_PURPLERGB0(NO,OFF,NO)//宏定義RGB為紫色控制組合#defineRGB0_WHITERGB0(NO,NO,NO)//宏定義RGB為白色控制組合#defineRGB0_BLACKRGB0(OFF,OFF,OFF)//宏定義RGB為黑色控制組合物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第49頁風扇風扇經過I/O控制開關(低電平轉動,高電平停頓)經過按鍵K3觸發(fā)控制風扇開關P0_7while(1){if(!KEY2){//假如按鍵被按下

delay_ms(10);//延時消抖

while(!KEY2);//等候按鍵彈起

delay_ms(10);//延時消抖

if(KEY2){//假如按鍵確實彈起

FANNER=~FANNER;//風扇狀態(tài)取反

}}}物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第50頁可燃氣體MQ-2煙霧傳感器所使用氣敏材料是在清潔空氣中電導率較低二氧化錫(SnO2)。當煙霧傳感器所處環(huán)境中存在可燃氣體時,煙霧傳感器電導率隨空氣中可燃氣體濃度增加而增大。使用簡單電路即可將電導率改變轉換為與該煙霧傳感器氣體濃度相對應輸出信號。MQ-2需要加電預熱20s以上,經過ADC采樣電路獲取電壓模擬量數值P0_6物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第51頁可燃氣體P0_6物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第52頁溫濕度HTU21D是一款高精度溫濕度傳感器,與SHT21兼容,數字輸出,I2C接口,測量范圍:濕度RH0~100%,溫度-40~+105℃P0_2P0_3物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第53頁溫濕度P0_2P0_3//獲取溫濕度數據dhtu21d_init();//初始化傳感器TempHumi_instructure.temperature=HTU21DWork(TEMP_ADDR);//獲取溫度值dhtu21d_init();//初始化傳感器TempHumi_instructure.humidity=HTU21DWork(HUMI_ADDR);//獲取溫度值//dhtu21庫函數voiddhtu21d_io_init(void) //htu21d管腳初始化voiddhtu21d_init(void) //htu21d初始化floatHTU21DWork(u8order) //htu21d測量溫濕度//IIC庫函數voidhtu21d_I2C_Init(void) //I2C初始化函數voidhtu21d_I2C_Start() //I2C起始信號voidhtu21d_I2C_Stop() //I2C停頓信號voidhtu21d_I2C_SendACK(intack) //I2C發(fā)送應答inthtu21d_I2C_RecvACK() //I2C接收應答u8I2CWriteByte(u8WriteData) //I2C寫一個字節(jié)數據,返回ACK狀態(tài)u8I2CReadByte(u8AckValue)//I2C讀一個字節(jié)數據,返回讀取數據物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第54頁光強度BH1750是一款高精度光強度傳感器,數字輸出,I2C接口,測量范圍:1-65535luxP0_5P0_4物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第55頁光強度//獲取光強度數據u8*p=buf;//定義u8指針,指針指向緩存數組首地址Init_BH1750();//初始化BH1750ISendByte(0x46,0x01);//poweronISendByte(0x46,0X20);//H-resolutionmodeDelay_ms(180);//延時180msIRcvStrExt(0x46,p,2);//連續(xù)讀出數據,存放在BUF中u16x=buf[0]<<8|buf[1];//合并數據returnx/1.2;//返回有效光強信息//BH1750庫函數voidInit_BH1750(void);//初始化BH1750floatget_light(void); //獲取光強度值//IIC庫函數voidStart_I2c(void);//起始信號voidStop_I2c(void);//停頓信號voidBH1750_SendACK(void);//應答ACKvoidBH1750_SendNCK(void);//應答NCKu8RcvByte(void);//IIC讀數據voidSendByte(u8c);//IIC寫數據u8ISendByte(u8sla,u8c);//執(zhí)行BH1750進行一次數據寫入u8IRcvStrExt(u8sla,u8*s,u8no);//執(zhí)行BH1750讀取連續(xù)數據P0_5P0_4物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第56頁絲桿電機絲桿電機慣用于小型3D打印機等器件,采取二相四線步進電機A3967是一款微步進驅動器,它設計操作雙極步進電機含有全步進,1/2,1/4,和1/8模式,輸出驅動能力30V和±750毫安。相關控制引腳:A+A-B+B-為輸出口接步進電機Enable低電平給電機供電,不然斷開供電DIR控制電機旋轉方向STEP脈沖控制電機轉動M+電機供電正極GND地P0_6P0_7P0_0物聯網系列專業(yè)課程之CC2530單片機開發(fā)培訓課件第57頁voidgo_step(u8dir,u32steps){inti;//定義循環(huán)計數參數

if(dir)PIN_DIR=1;//假如方向為左定義方向為1elsePIN_DIR=0;//不然定義方向為0delay_us(50);//延時50usPIN_EN=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論