导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→ucos中斷問題

* 42795: ucos中斷問題

   a872156 
a872156发表的帖子 

 ucos中斷問題
我從ucos的網站下載到johnxliu的port,後來在電腦上RUN的時候出現了問題(編譯都過了,只是模擬的螢幕不會出現如example跑出亂數的畫面),後來johnxliu寄給我一份新的版本,我RUN起來以後也都沒問題了,我用johnxliu的port也都可以去跑以些自己寫的TASK,但是後來當我寫到中斷的時候卻發生了問題。
我用timer1去跑時間中斷,但是我是用mode
2自動載入的方式,所以很快的就會再發生中斷,我在中斷函示中依書本的指示在進入和離開的時候加上兩個函示OSIntEnter();OSIntExit();
但是很快的程序就崩潰了,我指細的去研究後發現問題出在OSIntExit();裡面有這幾行,
#pragma ASM
 CLR EA
    MOV SP, SaveSP
#pragma ENDASM
其中MOV SP,
SaveSP的SaveSP是0所以去跟改的SP上的堆疊結果程序就崩潰了,後來我仿照johnxliuISRTICK的的程式去撰寫加上了
if(OSIntNesting==1)
 {
#pragma ASM
  PUSH IE
  CLR  EA
  MOV  SaveSP, SP
#pragma ENDASM
        OSTCBCur->  OSTCBStkPtr=C_XBP;


if(OSIntNesting==0)
 {
  EA=0;
        C_XBP=OSTCBCur->  OSTCBStkPtr;
#pragma ASM
  MOV  SP, SaveSP
  MOV  SaveSP, #0
  POP  IE
#pragma ENDASM
 }
仍然不能動作,程式依然不能正常工作,所以想請問您是不是我還少加上了什麼東西,或是什麼沒有去修改到呢?
以下是我的中斷程序
void pwm_int(void) interrupt 3
{
OSIntEnter();
TR1=0;
if(SaveSP)
  return;
  
if(OSIntNesting==1)
 {
#pragma ASM
  PUSH IE
  CLR  EA
  MOV  SaveSP, SP
#pragma ENDASM
        OSTCBCur->  OSTCBStkPtr=C_XBP; /* OSTCBCur->  OSTCBStkPtr is free now, so it can be used to story the value of SP */
   }
if(P1_0)
 TH1=50;
else
 TH1=255-50;
P1_0=!P1_0;

TR1=1;
OSIntExit();

if(OSIntNesting==0)
 {
  EA=0;
        C_XBP=OSTCBCur->  OSTCBStkPtr;
#pragma ASM
  MOV  SP, SaveSP
  MOV  SaveSP, #0
  POP  IE
#pragma ENDASM

 }
}

謝謝大家百忙抽控回答一下,謝謝!


发表时间:2003年9月25日23:36:10

  
回复该帖

本主题共有 4 帖,分页:>>>>>该主题的所有内容[4]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  42819.[详细]你好,请往里进
摘要:你好:     前些日子我用PIC做了一个项目,自己编写了一个任务核,但都是用汇编写的,移植费劲。现打算学习C,直接使用UCOSII,看了书,发现安装UCOSII时怎么需要BROND&nbs......(243字)
- [xuxx760716][1082次] 2003年9月26日

  42845.[详细]我是用KEIL C
摘要:您好! 我是在做8051的題目,而我用的編譯器是keil C我也不知道要怎麼安裝brond C要怎麼使用,不好意思,如果您知道了,可否也E-MAIL一份給我,大家一起討論,謝謝您!不好意思沒辦法解決你的問題。&......(207字)
- [a872156][869次] 2003年9月27日

  42843.[详细]我也想知道如何装BROND C编译器,谢谢联系MAIL:miroxuxu@163.com..
摘要:我也想知道如何装BROND C编译器,谢谢 联系MAIL:miroxuxu@163.com......(63字)
- [pioneerlee][1025次] 2003年9月27日

[上一篇帖子]:联系:wang00000001@hotmail.com
[下一篇帖子]:用usb口的电源会伤害usb口吗?当 方针器带负载时?