經過除錯在stm32f101cbt6中實現通訊。注意還要配乙個ttl轉usb介面,才能進行通訊。實現字串回發
#include"stm32f10x_it.h"
#include "stm32f10x_conf.h"
void rcc_configuration(void);
//時鐘配置
void usart_configuration(void); //定義串列埠初始化函式
void nvic_configuration( void);
void uart1_putchar(u8 ch);
void uart1_putstring(u8* buf , u8 len);
void gpio1_configuration(void);
void gpio_configuration(void);
int usart_rx_buf[64]=0;
int usart_rx_sta=0;
void rcc_configuration(void)
//rcc_apb2periphclockcmd(rcc_apb2periph_gpioa, enable);
//rcc_apb1periphclockcmd(rcc_apb1periph_usart2 ,enable);
}int main(void)
}usart_rx_sta=0;
}for(i=0;i<1000000;i++);
gpio_resetbits(gpioa,gpio_pin_11);
gpio_resetbits(gpioa,gpio_pin_15);
for(i=0;i<1000000;i++);
}}
void gpio_configuration(void)
voidgpio1_configuration(void)
void usart_configuration(void)//串列埠初始化函式
void nvic_configuration(void)
在stm32f10x_it.c
void usart2_irqhandler(void); //放在標頭檔案裡面也可以
extern
intusart_rx_buf[64];//宣告全域性變數,此處不能夠賦值
extern
int usart_rx_sta;//
宣告全域性變數,此處不能夠賦值
void usart2_irqhandler(void)
}if(usart_getitstatus(usart2, usart_it_rxne) !=reset)
}
STM32串列埠中斷接收方式詳細比較
串列埠除錯,以前也調過,只是沒這麼深入的琢磨過,最近又在弄,感覺串列埠很基本,也很有學問,要是出現bug可能導致系統奔潰。現在貼出來,歡迎拍磚指正!本例程通過pc機的串列埠除錯助手將資料傳送至stm32,stm32通過sp3232晶元採用中斷接收方式完成,然後接收資料後將所接收的資料又傳送至pc機,...
STM32串列埠中斷接收方式詳細比較
本例程通過pc機的串列埠除錯助手將資料傳送至stm32,stm32通過sp3232晶元採用中斷接收方式完成,然後接收資料後將所接收的資料又傳送至pc機。例項一 c view plain copy print?void usart1 irqhandler u8 getdata 這是最基本的,將資料接收...
hal庫實現stm32串列埠中斷接收資料
stm32cubemx設定中斷和非同步通訊模式。先設定並開啟串列埠中斷接收 該函式功能為開啟串列埠接收中斷,並指定儲存接收資料的快取區,設定從串列埠接收的資料大小。這裡要特別注意,該函式只有從串列埠接收到size個資料後才會返回,不然會阻塞。hal uart receive it huart1,mu...