这里写代码片
void UART_Initializes(void)
{
UART1_Init((uint32_t)115200, UART1_WORDLENGTH_8D, UART1_STOPBITS_1, UART1_PARITY_NO, UART1_SYNCMODE_CLOCK_DISABLE, UART1_MODE_TXRX_ENABLE);
UART1_Cmd(ENABLE);
UART1_ITConfig(UART1_IT_RXNE_OR, ENABLE)
enableInterrupts();
}
void UART1_SendData8(uint8_t Data)
{
/* Transmit Data */
UART1->DR = Data;
}
void UART1_SendByte(uint8_t Data)
{
while((UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET));
UART1_SendData8(Data);
while((UART1_GetFlagStatus(UART1_FLAG_TC)==RESET));
}
uint8_t UART1_ReceiveData8(void)
{
return ((uint8_t)UART1->DR);
}
#if defined (STM8S208) || defined(STM8S207) || defined(STM8S007) || defined(STM8S103) || \
defined(STM8S003) || defined (STM8AF62Ax) || defined (STM8AF52Ax) || defined (STM8S903)
/**
* @brief UART1 TX Interrupt routine.
* @param None
* @retval None
*/
INTERRUPT_HANDLER(UART1_TX_IRQHandler, 17)
{
/* In order to detect unexpected events during development,
it is recommended to set a breakpoint on the following instruction.
*/
}
/**
* @brief UART1 RX Interrupt routine.
* @param None
* @retval None
*/
INTERRUPT_HANDLER(UART1_RX_IRQHandler, 18)
{
uint8_t temp;
temp = UART1_ReceiveData8(); //读取接收到的数据(该操作会自动清除中断接收标志)
UART1_SendData8(7); //发送接收到的数据
}
#endif
tm8 uart1
猜你喜欢
转载自blog.csdn.net/xiyancsdn/article/details/82252915
今日推荐
周排行