91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-09
  • 語言: 其他
  • 標簽: STM32??USART??DMA??

資源簡介

STM32F1多串口源代碼,使用DMA中斷,可以實現(xiàn)多個串口之間的透傳,非常方便修改,只需在文件頭部define部分修改就可以。

資源截圖

代碼片段和文件信息

/**
??******************************************************************************
??*?@file????usart.c
??*?@author??kit7828
??*?@version?V1.0
??*?@date????2018-04-09
??*?@brief???多usart應用
??******************************************************************************
??*?@attention
??*
??*?平臺: STM32?103RCT6?最小系統(tǒng)板?
??*?用途: 多串口應用,均使用DMA通道傳輸,避免中斷影響串口數(shù)據(jù)
??*?說明: GA6,MP3,DEBUG以及GPS等
*?說明: 串口的核心功能是對接收內容的處理,發(fā)送比較簡單,只需處理緩存區(qū)就可
??*
??******************************************************************************
*
*???main.c中調用方法
* uart1_init(115200); //GA6
* uart2_init(115200); //DEBUG
* uart3_init(115200); //MP3
* uart4_init(115200); //TEST
*
* DMA_Configuration();
??*/
??
//#include?“sys.h“
#include?
#include?“usart.h“?????????
//#include?“l(fā)ed.h“?
//////////////////////////////////////////////////////////////////////////////////??????????

//////////////////////////////////////////////////////////////////////////////////???????

#define?USART1_TX_DMA_Channel DMA1_Channel4
#define?USART1_RX_DMA_Channel?DMA1_Channel5
#define?USART2_TX_DMA_Channel DMA1_Channel7
#define?USART2_RX_DMA_Channel?DMA1_Channel6
#define?USART3_TX_DMA_Channel DMA1_Channel2
#define?USART3_RX_DMA_Channel?DMA1_Channel3
#define?UART4_TX_DMA_Channel DMA2_Channel5
#define?UART4_RX_DMA_Channel? DMA2_Channel3

//////////////////////////////////////////////////////////////////////////////////?????
#define?BUFFSIZE 192

u8?USART1_SEND_DATA[BUFFSIZE];
u8?USART1_RECEIVE_DATA[BUFFSIZE];?

u8?USART2_SEND_DATA[BUFFSIZE];?
u8?USART2_RECEIVE_DATA[BUFFSIZE];

u8?USART3_SEND_DATA[BUFFSIZE];?
u8?USART3_RECEIVE_DATA[BUFFSIZE];

u8?UART4_SEND_DATA[BUFFSIZE];?
u8?UART4_RECEIVE_DATA[BUFFSIZE];

u8?USART1_TX_Finish=1;
u8?USART2_TX_Finish=1;
u8?USART3_TX_Finish=1;
u8?UART4_TX_Finish?=1;

//串口之間可以自由切換,只需更改如下define中的內容
#define DEBUG_UART USART2

#define?TEST_TX_Finish USART3_TX_Finish
#define?TEST_USART_SEND? USART3_SEND_DATA
#define?TEST_TX_DMA_Channel USART3_TX_DMA_Channel
#define?USART3_Recv TEST_Recv

#define?SOUND_TX_Finish UART4_TX_Finish
#define?SOUND_USART_SEND? UART4_SEND_DATA
#define?SOUND_TX_DMA_Channel UART4_TX_DMA_Channel
#define?UART4_Recv SOUND_Recv

#define?GPRS_TX_Finish USART1_TX_Finish
#define?GPRS_USART_SEND? USART1_SEND_DATA
#define?GPRS_TX_DMA_Channel USART1_TX_DMA_Channel
#define?USART1_Recv GPRS_Recv

#define?DEBUG_TX_Finish USART2_TX_Finish
#define?DEBUG_USART_SEND? USART2_SEND_DATA
#define?DEBUG_TX_DMA_Channel USART2_TX_DMA_Channel
#define?USART2_Recv DEBUG_Recv
//////////////////////////////////////////////////////////////////
//加入以下代碼支持printf函數(shù)而不需要選擇use?MicroLIB??????????
#if?1
#pragma?import(__use_no_semihosting)?????????????
//標準庫需要的支持函數(shù)?????????????????
struct?__FILE?
{?
int?handle;?

};?

FILE?__stdout;???????
//定義_sys_exit()以避免使用半主機模式????
void?_sys_exit(int?x)?
{?
x?=?x;?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????38105??2018-04-10?11:03??UART\usart.c

?????文件????????619??2018-04-10?09:41??UART\usart.h

?????目錄??????????0??2018-04-10?11:03??UART

-----------?---------??----------?-----??----

????????????????38724????????????????????3


評論

共有 條評論