我写了一个关于USART的程序,实现USART口的自发自收,可是能够进发送完成中断但是接收不到。代码如下:#include "stm8l15x.h"#include "intrinsics.h"
void CLK_CONFIG(void);void UART_CONFIG(void);
void CLK_CONFIG(void){ CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1); while(!(CLK->ICKCR & 0x02)); CLK->PCKENR1=0x21; //开启USART1的时钟,TIM2的时钟}
void UART_CONFIG(void){ USART1->CR1=0x00; USART1->CR2=0x2C; USART1->BRR1=0x68; USART1->BRR2=0x03; USART1->CR3=0x20;}
void main(){
CLK_CONFIG(); UART_CONFIG(); __enable_interrupt(); USART_SendData8(USART1,0x5a); while(1) {}}中断服务程序为:INTERRUPT_HANDLER(USART1_RX_IRQHandler, 28){
temp=USART1->DR; USART_ClearITPendingBit (USART1,USART_IT_RXNE );//断点}请问一下这是为什么?
此帖出自
小平头技术问答
一周热门 更多>