以下是我的程序,不知道为什么就是发不出来啊!!
请老师指点一下,看一看是哪里的问题。。。
@near @interrupt void USART_TX_IRQHandler (void) { static INT8U TxCnt = SetZero; /* Write one byte to the transmit data register */ USART_SendData8(TxBuf[TxCnt++]); if (TxCnt == TxLen) { /* Disable the USART Transmit interrupt */ USART_ITConfig(USART_IT_TXE, DISABLE); TxCnt = ClrZero; } return; }
void UartInit(void) { // Initial RST stat USART_DeInit(); USART_Cmd(ENABLE); // 9600,1,0 RX TX Interrupt Enable USART_Init((u32)9600, USART_WORDLENGTH_8D, USART_STOPBITS_1, USART_PARITY_NO, USART_SYNCMODE_CLOCK_DISABLE, USART_MODE_TXRX_ENABLE); // Enable the USART Receive interrupt: this interrupt is generated when the USART receive data register is not empty USART_ITConfig(USART_IT_RXNE_OR, ENABLE); }
void SendNumChar(u8 *SendBufAddr, u8 Num) { memcpy(TxBuf, SendBufAddr, Num); TxLen = Num; USART_ITConfig(USART_IT_TXE, ENABLE); }
|