注册 登录
查看: 470|回复: 13

KL uart中断怎么只进去一次问题?

[复制链接]
发表于 2014-3-21 16:50:28 | 显示全部楼层 |阅读模式
为什么我的中断只能进去一次,第二次进不去了 void uart0_handler(void)  这个中断怎么清中断?????
来自PC客户端 来自PC客户端
回复

使用道具 举报

发表于 2014-3-21 16:52:51 | 显示全部楼层
不需要清中断啊,你是怎么写的,中断函数
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-21 16:54:39 | 显示全部楼层
丁玉 发表于 2014-3-21 16:52
不需要清中断啊,你是怎么写的,中断函数

void uart0_handler(void)
{
    char ch1;
    //char ch2;
   
   //uart_rx_irq_dis (UART0);
   
   
    UARTn_e uratn = UART0;

    if(UART_S1_REG(UARTN[uratn]) & UART_S1_RDRF_MASK)   //接收数据寄存器满
    {
                                    //用户需要处理接收数据
        uart_getchar(uratn, &ch1);                    //无限等待接受1个字节
        //uart_getchar(uratn, &ch2);
        speed_P=ch1;                   //发送字符串
      //  speed_I=ch2;
    }
  //  uart_rx_irq_en (UART0);
}
是这样写的,怎么治愈进去一次  第二次进不去了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-21 16:56:30 | 显示全部楼层
丁玉 发表于 2014-3-21 16:52
不需要清中断啊,你是怎么写的,中断函数

大神求救啊
回复 支持 反对

使用道具 举报

发表于 2014-3-21 17:41:53 | 显示全部楼层
KL26 发表于 2014-3-21 16:54
void uart0_handler(void)
{
    char ch1;

你用我们的例程看看有没有问题,没看出问题来
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-21 18:00:20 | 显示全部楼层
山外メ雲ジ 发表于 2014-3-21 17:41
你用我们的例程看看有没有问题,没看出问题来

你那个用串口可以多次进去,但是用蓝牙 就只能就去一次了,为什么啊
回复 支持 反对

使用道具 举报

发表于 2014-3-21 18:22:30 | 显示全部楼层
KL26 发表于 2014-3-21 18:00
你那个用串口可以多次进去,但是用蓝牙 就只能就去一次了,为什么啊

那就不是软件的问题,而是硬件的问题了,你用示波器检查一下波形有什么不同,看看情况。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-21 18:34:10 | 显示全部楼层
山外メ雲ジ 发表于 2014-3-21 18:22
那就不是软件的问题,而是硬件的问题了,你用示波器检查一下波形有什么不同,看看情况。

为甚例程中uart中断  没有清标志位?????
回复 支持 反对

使用道具 举报

发表于 2014-3-21 18:57:45 | 显示全部楼层
KL26 发表于 2014-3-21 18:34
为甚例程中uart中断  没有清标志位?????

KL26 的串口中断,本来就没有中断标志位
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-21 19:00:27 | 显示全部楼层
山外メ雲ジ 发表于 2014-3-21 18:57
KL26 的串口中断,本来就没有中断标志位

额 我程序总是运行完之后 就买不进去了  复位之后又可以就去一次了 ,我觉得好像有一个变量没有被清理而不能进去  硬件我测了  是好的
回复 支持 反对

使用道具 举报

发表于 2014-3-21 20:17:55 | 显示全部楼层
KL26 发表于 2014-3-21 19:00
额 我程序总是运行完之后 就买不进去了  复位之后又可以就去一次了 ,我觉得好像有一个变量没有被清 ...

直接采集了 缓冲区的数据,那么就会清了中断标志位。
回复 支持 反对

使用道具 举报

发表于 2014-3-21 20:19:03 | 显示全部楼层
KL26 发表于 2014-3-21 19:00
额 我程序总是运行完之后 就买不进去了  复位之后又可以就去一次了 ,我觉得好像有一个变量没有被清 ...

直接采集了 缓冲区的数据,那么就会清了中断标志位。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-22 12:47:42 | 显示全部楼层
韦嘉淑 发表于 2014-3-21 20:19
直接采集了 缓冲区的数据,那么就会清了中断标志位。

不懂啊!  亲 你能说明吧点么?就是我应该怎么解决这个问题呢?
回复 支持 反对

使用道具 举报

发表于 2015-1-29 19:55:15 | 显示全部楼层
KL26 发表于 2014-3-22 12:47
不懂啊!  亲 你能说明吧点么?就是我应该怎么解决这个问题呢?

你好,我们也遇到了这样的问题,请问你们是怎么解决的啊,求帮助
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部