本帖最后由 原来的你 于 2019-2-24 20:58 编辑 8 d3 M- T0 l( Y9 h/ U; r: [ 本节我们讲究stm8s001的串口中断收发,代码如下:、 void UART1_Config(void) { UART1_Init((uint32_t)115200, UART1_WORDLENGTH_8D,UART1_STOPBITS_1, UART1_PARITY_NO, UART1_SYNCMODE_CLOCK_DISABLE, UART1_MODE_TXRX_ENABLE); /* 使能接收中断 */ UART1_ITConfig(UART1_IT_RXNE_OR, ENABLE); /* 使能发送中断 */ UART1_ITConfig(UART1_IT_TXE, ENABLE); /* 使能 UART1 */ UART1_Cmd(ENABLE); } INTERRUPT_HANDLER(UART1_TX_IRQHandler, 17){, x" |. y7 l A' [: ~! g/ ^ UART1_SendData8(TxBuffer[TxCount++]); if (TxCounter == TX_BUFFER_SIZE) {' j' Q1 n/ f$ q }0 b2 W% `0 A! F {- Y5 \2 I. s4 I- W$ X uint8_t temp;* t+ [( k+ B4 G+ V: _* K /* 从接收数据寄存器读取一个字节并发送回去 */: n' y/ p! O( e' { temp = UART1_ReceiveData8();& x# m, z0 x, Q% Y$ f. F# E UART1_SendData8(temp); }& d9 M4 ~& x9 b# B; m9 F8 M6 R; ] " u. [, X2 c' e0 _7 o; ~# r : Z v2 L" a$ x# x% I+ \: w8 ? % Y, _$ g3 s& {* z |
stm8s105,发送字符串,却只能收到第一个字符,后边的就收不到了。 |