2、程序融合:“PIT_demo”和“UART_demo”;将“UART_demo”中的这些程序复制到“PIT_demo”中;
void UART_rx(int8 ch)
{
UART1_send_byte(ch);
RED_Toggle();
}
UART_set_rx_handler(UART_rx);
enable_UART1_int();
编译后运行程序一直进入下面的函数
void default_isr(void)
{
#define VECTORNUM (*(volatile uint8_t*)(0xE000ED04))
//printf("\n****default_isr entered on vector %d*****\r\n\n",VECTORNUM);
return;
}
楼主你好!
我建议你参考我们的官方代码:
FRDM-KEXX Driver Library Package
里面有关于UART中断的代码,路径为:FRDM-KEXX-Driver-Library-Package\ke_drv_lib\build\iar\ke02\UART_Interrupt_demo
你那边的两个问题:
1. 如果只是使能接收中断,没有使能发送中断,这时候也没有对UART发送任何的数据,但是一直进入中断的话,肯定是有问题的。
如果只使能接收中断,中断函数里面,你完全可以直接操作接收的代码,读取状态位,读取接收数据。
2. 代码一直进入hardfault
如果你PIT和UART中断都使能的话,要么就是你PIT中断和中断向量表没有连接,要么就是你UART的中断服务函数没有和中断向量表连接。
你看下你中断向量表,有没有定位到你的中断服务函数。
这里举个UART的例子:
#define VECTOR_028 UART0_Isr
#define VECTOR_029 UART1_Isr
#define VECTOR_030 UART2_Isr
希望能帮到你。
如果还有问题,欢迎继续交流!
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
dear,all
问题已经解决!
we@powerever.cn
Best Regards
张志文
北京威旺达电子科技有限责任公司
POWEREVER ELECTRONIC TECHNOLOGY CO.,LTD
地址:北京市朝阳区八里庄西里61号楼远洋商务1009
Add: Room 1005 Block C Ocean International Center,No.58
East Fourth Ring Road,ChaoYang District China
电话:010-85753890/85791220
手机:18501307473
QQ: 3328129303
微信:zzw849054862
传真:010-85753890/85791220-20
邮箱: zhangzhiwen@powerever.cn
网址:www.powerever.cn
zhangzhiwen@powerever.cn
发件人: kerryzhou
发送时间: 2019-01-08 17:12
收件人: 赵 锦萍
主题: Re: - Re: MKE02Z64VQH4调试问题
NXP Community
Re: MKE02Z64VQH4调试问题
reply from Kerry Zhou in Kinetis Microcontrollers - View the full discussion
楼主你好!
我建议你参考我们的官方代码:
FRDM-KEXX Driver Library Package
里面有关于UART中断的代码,路径为:FRDM-KEXX-Driver-Library-Package\ke_drv_lib\build\iar\ke02\UART_Interrupt_demo
你那边的两个问题:
1. 如果只是使能接收中断,没有使能发送中断,这时候也没有对UART发送任何的数据,但是一直进入中断的话,肯定是有问题的。
如果只使能接收中断,中断函数里面,你完全可以直接操作接收的代码,读取状态位,读取接收数据。
2. 代码一直进入hardfault
如果你PIT和UART中断都使能的话,要么就是你PIT中断和中断向量表没有连接,要么就是你UART的中断服务函数没有和中断向量表连接。
你看下你中断向量表,有没有定位到你的中断服务函数。
这里举个UART的例子:
#define VECTOR_028 UART0_Isr
#define VECTOR_029 UART1_Isr
#define VECTOR_030 UART2_Isr
希望能帮到你。
如果还有问题,欢迎继续交流!
Have a great day,
Kerry
感谢你的信息更新!
后续有问题,欢迎继续发帖交流!
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------