|
stm32單片機(jī)驅(qū)動(dòng)lora模塊sx1278技術(shù)資料
開(kāi)發(fā)環(huán)境 keil5
子設(shè)備讀取Ds18b20數(shù)據(jù),通過(guò)iic顯示到OLED 屏幕上,同時(shí)用spi協(xié)議發(fā)送給lora,再傳給網(wǎng)關(guān)。
網(wǎng)關(guān)接收到數(shù)據(jù)在OLED 屏幕上顯示。
單片機(jī)源碼:
- #include "stdio.h"
- #include "DELAY/Delay.h"
- #include "UART/uart.h"
- #include "ADC/ADC.h"
- #include "LED/LED.h"
- #include "IIC/IIC.h"
- #include "OLED/OLED.h"
- #include "SPIx/SPIx.h"
- #include "SX1278/SX1278.h"
- #define ALARM 22
- int main(void)
- {
- u8 i = 0;
- int temper = 0;
- unsigned char rx[20];
- /*初始化各外設(shè)*/
- initSysTick();
- initADC();
- initUART(); //波特率9600
- initLED();
- initIIC();
- initOLED();
- initSPIx(SPI2);
- initSX1278();
- formatScreen(0x00);
- for(i=0;i<=128;i+=2)
- {
- showImage(0,0,i,8,LORA_LOGO);
- }
- formatScreen(0x00);
- while (1)
- {
- receivePackets(&rx[0]);
- temper = (int)(rx[11]-'0')*10 + (int)(rx[12]-'0');
- printf("%s\n",rx);
- printf("%d\n", temper);
- showString(0,1,rx,FONT_16_EN);
- if(temper < ALARM)
- {
- showString(35,4,"NORMAL",FONT_16_EN);
- }else{
- showString(35,4,"ALARM!",FONT_16_EN);
- }
- toggleLED();
- Delay_ms(500);
- }
- }
復(fù)制代碼 全部資料51hei下載地址:
Child_device.7z
(202.7 KB, 下載次數(shù): 280)
2019-3-11 01:58 上傳
點(diǎn)擊文件名下載附件
子設(shè)備代碼
Gateway.7z
(199.16 KB, 下載次數(shù): 214)
2019-3-11 01:58 上傳
點(diǎn)擊文件名下載附件
網(wǎng)關(guān)代碼
|
評(píng)分
-
查看全部評(píng)分
|