才找到RTE

#include <string.h>
#include "RTE_Components.h"
#include  CMSIS_device_header
#include "cmsis_os2.h"
#include "stm32f10x.h"
 
#include "Board_LED.h"
#include "Driver_USART.h"
 
extern ARM_DRIVER_USART Driver_USART1;
 
/* Variable definitions ------------------------------------------------------*/
static uint8_t rxBuffer[1024] = {0};
static uint8_t txBuffer[1024] = {0};
 
/* Function declarations -----------------------------------------------------*/
static void USART1_Callback(uint32_t event);
/**
  * @brief  USART1 callback function.
  * @param  event: USART events notification mask.
  * @return None.
  */
static void USART1_Callback(uint32_t event)
{
  if(event & ARM_USART_EVENT_RX_TIMEOUT)
  {
    Driver_USART1.Control(ARM_USART_ABORT_RECEIVE, 1);
    
    uint32_t length = Driver_USART1.GetRxCount();
    
    memcpy(txBuffer, rxBuffer, length);
    
    Driver_USART1.Send(txBuffer, length);
    Driver_USART1.Receive(rxBuffer, sizeof(rxBuffer));
  }
}
 
void uart_init()
{
    
  Driver_USART1.Initialize(USART1_Callback);
  Driver_USART1.PowerControl(ARM_POWER_FULL);
  Driver_USART1.Control(ARM_USART_MODE_ASYNCHRONOUS |
                        ARM_USART_DATA_BITS_8 |
                        ARM_USART_PARITY_NONE |
                        ARM_USART_STOP_BITS_1 |
                        ARM_USART_FLOW_CONTROL_NONE, 115200);
  Driver_USART1.Control(ARM_USART_CONTROL_TX, 1);
  Driver_USART1.Control(ARM_USART_CONTROL_RX, 1);
  
  Driver_USART1.Receive(rxBuffer, sizeof(rxBuffer));
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值