查看: 3008|回复: 3

[其他] XDG128 中断口导致死机

[复制链接]

该用户从未签到

17

主题

64

帖子

0

新手上路

Rank: 1

积分
155
最后登录
1970-1-1
发表于 2011-10-27 12:01:17 | 显示全部楼层 |阅读模式
 
请教 ,我用XDG128,移植了UCOS系统,我在PH口作为中断输入口 ,当PH口上有杂波输入时,系统就死机(单片机好像没有死机,好像进入了空闲任务的死循环),请教PH口上有杂波输入时怎么样处理才不死机
以下是UCOS系统中处理中断的程序,大家分析分析
 void interrupt 25 PH_INT(void){       //PH口中断,引脚PH0--PH3 输入 DisableInterrupts;               //关中断
//-------------------------------------------------------------------------------------
   asm
    {
      ldaa PPAGE;
      psha;
    }         // 保存PPAGE
 OSIntEnter();

<span style="font-size: large"><span style="font-size: medium">   if(OSIntNesting == 1){
 asm
   {
     ldx OSTCBCur;
     sts 0,x;
   }
 }  
//======================================================  
 //===================中间这里是中断服务程序大家不用管===== 
    PHcpu12_now_cnt8us=(TCNT>>1)|(out_TCNT
我知道答案 目前已有2人回答
回复

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2011-10-27 15:43:57 | 显示全部楼层

    RE:XDG128 中断口导致死机

    这个只能通过仿真来判断了,需要确认是不是由于这个任务引起的,很可能是由于和别的任务调度的时候发生错误,而进入空闲。还有就是任务调度的时间可能太短、优先级的问题。
    该会员没有填写今日想说内容.

    该用户从未签到

    17

    主题

    64

    帖子

    0

    新手上路

    Rank: 1

    积分
    155
    最后登录
    1970-1-1
     楼主| 发表于 2011-10-28 10:55:31 | 显示全部楼层

    RE:XDG128 中断口导致死机

    err=OSSemPost(ph_sem);                          
    我现在发现这个发信号的函数去掉就好了,可能是发信号量的时候在加上外面的杂波,导致进入空闲任务,
    但我的本意是进入口中断服务程序后,马上要让另一个任务处理数据,现在不能用发送信号量的话,有什么更好的方法呢?
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2011-10-28 15:24:12 | 显示全部楼层

    RE:XDG128 中断口导致死机

    OSIntExit();   // exit interrupt and task switch
    在这个后面执行
    err=OSSemPost(ph_sem);
    因为前面已经进入中断从而关闭任务,而导致的。
    该会员没有填写今日想说内容.
    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-27 12:28 , Processed in 0.089596 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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