串列埠三的配置和串列埠三的接收中斷
#include "usart3.h"
#include "sys.h"
#include "main.h"
u32 usart3_send_data_time = 0;
void init_usart3(u32 bound)
u8 usart3_rend_data_length = 0; //串列埠接收資料長度
u8 suart3_send_data_buf[10] = ; //串列埠接受資料儲存
u16 second_ultrasonic_data = 0;
u8 sum = 0;
u16 usart_rx_sta = 0;
u8 ch3cho1 = 0;
u8 ch3cho2 = 0;
void usart3_irqhandler(void)
if((0 == usart3_rend_data_length ) && (res != 0x81)) //判斷幀頭
// if(6 == usart3_rend_data_length)//判斷校驗和
//
if(res != sum)
goto end;
}// }
if(usart3_rend_data_length < 6) //接收資料
// printf("\r\n");
usart3_rend_data_length = 0;
usart_rx_sta = 1;
}
} end:;
}}
標頭檔案
#ifndef __usart3_h
#define __usart3_h
#include "sys.h"
#include "../ultrasonic receiver/ultrasonic receiver.h"
extern u8 sum ;
extern u16 usart_rx_sta; //½σκυχ΄μ¬±κόη
extern u8 suart3_send_data_buf[10];
void init_usart3(u32 bound);
#endif
串列埠傳送模板
#include "main.h"
#include "usart3.h"
int main(void)
; while(1)
if(usart_rx_sta == 1)//調整大小端 列印資料檢視
}}
第一篇部落格,記錄成長。 python 串列埠接收
最簡單的接收然後列印 如下 1 2 3 4 5 6 7 8 9 10 importserial ser serial.serial com4 115200 data while1 whileser.inwaiting 0 data ser.read 1 ifdata printdata data 掃...
乙個簡單的串列埠接收(帶協議)
乙個簡單的串列埠接收 帶協議 資料頭資訊 5個 資料長度資訊 1個 資料 1024個 資料校驗 1個 資料尾一.串列埠資料接收buf typedef struct uartcommadtype uartcommadtype 二.串列埠接收的狀態,如果在時間限制內未完成接收,則認為接收錯誤 uint1...
串列埠資料接收處理
串列埠接收函式只需要管理資料的接收就行了,不必管理相應資料接收的是什麼,還有順序對不對,真正尋找資料的地方是在資料處理的地方。void usart2 irqhandler void 資料處理端,函式來自於onenet麒麟板程式 if dataptr null num atoi const char ...