主要是串口的配置要对。允许中断没有,定时器时钟是不是开错了 等等一些容易手一抖就写错了还不容易察觉的错误。
实在找不到原因的时候就打开串口的寄存器,把每个寄存器的值检查一遍,看看是不是你想配置的结果。
这个具体看你的代码怎么写的,是不是你接受中断时关闭中断了,没有开启等等,或者中断优先级太低,轮寻不到。
建议找个完整示例参考一下
先试试轮询的方式,看看串口的配置与硬件是不是正确。
如果串口正确,那么是你的中断配置问题。