查看: 1986|回复: 8

[求助] 多中断一起用发生的奇怪问题

[复制链接]

该用户从未签到

2

主题

24

帖子

0

注册会员

Rank: 2

积分
58
最后登录
2017-6-27
发表于 2016-1-21 09:07:27 | 显示全部楼层 |阅读模式
        做了一个较大的程序,芯片为 lpc2138 程序使用定时器0中断,定时器1中断,串口中断,分别执行相应的程序段,在定时器中断程序1总执行代码很长,三个中断单独调试的时候。程序执行都很正常,定时器0和定时器1联合调试也很好,
       加入串口中断后,奇怪的问题来了!!!!
       串口接收横埠稳定,又是可以接收1个字符,优势可以接收几十个字符。
       会出现以下几种情况
       1、主控接收不数据   处于全停状态,程序不继续执行    (主程序控制小灯亮、灭,,,串口发送一个字符后不再接收数据,不再回显,小灯不闪烁)
       2、主控可以连续接收数据,但是主程序不在继续执行,(主程序控制小灯亮、灭,,,串口接收可用,发送数据可以回显到PC,但是小灯不闪烁了)
       3、主控芯片可执行一段时间,后回到情况1或2.(主程序控制小灯亮、灭,串口发送数据回显,小灯亮、灭也正常。但接收几个字符后出现情况1或出              现情况2的现象)




    定时器0 和 定时器1 主要用于产生PWM 波,不同频率的PWM波一共10个,完成各种PWM的复位。
    都是采用 IRQ中断方式。


    请高手赐教如何协调程序功能。


    谢谢


   
我知道答案 目前已有8人回答
回复

使用道具 举报

  • TA的每日心情
    开心
    2017-2-9 14:16
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    25

    主题

    1785

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2250
    最后登录
    2024-6-11
    发表于 2016-1-21 09:46:36 | 显示全部楼层
    不要在中断中作过多的事情。。。。
    nxpic.org.png
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    124

    主题

    3600

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5781
    最后登录
    1970-1-1
    发表于 2016-1-21 10:11:15 | 显示全部楼层
    你还可以在中断函数中,设置对应的操作,比如改变引脚电平,相似loutput出信号,这样你可以通过示波器或者逻辑分析仪将信号抓取出来后,来推断demo的执行状况
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    24

    帖子

    0

    注册会员

    Rank: 2

    积分
    58
    最后登录
    2017-6-27
     楼主| 发表于 2016-1-21 10:19:25 | 显示全部楼层
    本帖最后由 nt051301 于 2016-1-21 10:21 编辑
    JackieLaura 发表于 2016-1-21 09:46
    不要在中断中作过多的事情。。。。

    我加大定时器中断时间效果也不明显,可以说没效果

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    24

    帖子

    0

    注册会员

    Rank: 2

    积分
    58
    最后登录
    2017-6-27
     楼主| 发表于 2016-1-21 10:20:53 | 显示全部楼层
    本帖最后由 nt051301 于 2016-1-21 10:24 编辑
    FSL_TICS_ZP 发表于 2016-1-21 10:11
    你还可以在中断函数中,设置对应的操作,比如改变引脚电平,相似loutput出信号,这样你可以通过示波器或者 ...

    串口中断里关闭了定时器中断0 和1 ,完成时后再打开的,也是没用,死机的时候,是因为定时器中断和串口中断都停止了,如果是定时器中断停止了,就只好发送接收,不运行程序了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    24

    帖子

    0

    注册会员

    Rank: 2

    积分
    58
    最后登录
    2017-6-27
     楼主| 发表于 2016-1-21 10:26:56 | 显示全部楼层
    为什么,中断关闭和使能的时候会失效,不稳定?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-2-9 14:16
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    25

    主题

    1785

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2250
    最后登录
    2024-6-11
    发表于 2016-1-21 11:13:58 | 显示全部楼层
    程序要达到什么效果,说清楚了才好给你分析。。。
    nxpic.org.png
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    124

    主题

    3600

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5781
    最后登录
    1970-1-1
    发表于 2016-1-21 14:17:08 | 显示全部楼层
    nt051301 发表于 2016-1-21 10:20
    串口中断里关闭了定时器中断0 和1 ,完成时后再打开的,也是没用,死机的时候,是因为定时器中断和串口中 ...

    楼主画张程序流程图吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    24

    帖子

    0

    注册会员

    Rank: 2

    积分
    58
    最后登录
    2017-6-27
     楼主| 发表于 2016-3-10 09:10:04 | 显示全部楼层
    问题已经找到,真的是很奇怪。
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-23 12:33 , Processed in 0.103876 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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