• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
  • slider image 488
  • slider image 491
:::

論壇索引


Board index » All Posts (benian)




請問關於 在一個中斷過程中防止觸發另一中斷的問題
#1
新會員
新會員


小弟用的是pic18f452 的. 最近小弟卡在一個問題上

就是在外部中斷被觸發時,如果同時rs232 也被觸發的話,就會當掉,我有設外部中斷為高中斷優先權,rs232 中斷為低中斷優先,(#priority ext,rda)但是在設定前和設定後好像沒有明顯分別.還是會當掉

另外我曾天真的在外部中斷副程式裡把rs232 中斷disable 掉,等到中斷結束後回到主程式再把它enable 回來,結果還是如果在外部中斷過程中有rs232 中斷觸發訊號的話,就會當掉,
而且是當在enable 那一行(enable 在主程式裡不在外部中斷裡)

我想請教的是在外部中斷副程式執行時,有沒有辦法設定rs232 中斷絕對不被觸發??即使有rs232中斷訊號產生

小弟跟學長討論過還是沒有找到解決的方法, 以下附上2個中斷的程式 ,希望各位大大可以指點一下 謝謝

#int_RDA //rs232 中斷
RDA_isr()
{
// disable_interrupts(INT_EXT);
gets(command);
printf("\n\r RS232 Interupt3 \n\r");
gearL=((int16)command[1]-48)*1000;
gearR=((int16)command[6]-48)*1000;

FBS=(int16)command[10]-48;


cpu_16.bound_max=gearL;
cpu_17.bound_max=gearR;

}


#int_EXT //外部中斷
EXT_isr()
{
printf("\n\r111\n\r");
// disable_interrupts(INT_RDA);
output_bit(PIN_D0,0);//16 pin
output_bit(PIN_D1,0);//17 pin
output_bit(PIN_D2,1);//18 pin
output_bit(PIN_D3,1);//19 pin
delay_ms (2000);
output_bit(PIN_D0,0);//16 pin
output_bit(PIN_D1,0);//17 pin
output_bit(PIN_D2,0);//18 pin
output_bit(PIN_D3,1);//19 pin
delay_ms(1500);
output_bit(PIN_D0,1);//16 pin
output_bit(PIN_D1,1);//17 pin
output_bit(PIN_D2,0);//18 pin
output_bit(PIN_D3,0);//19 pin
cpu_16.bound_max=5000;
cpu_17.bound_max=5000;
counter=0;

FBS=0;
printf("\n\r222\n\r");
}


以下是小弟程式的header 檔

#include <18F452.h>
#device adc=8
#use delay(clock=30000000)
#fuses NOWDT,WDT128,HS, BROWNOUT, BORV20, STVREN, LVP
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
#priority ext,rda


希望各位大大能指點小弟一下迷津 謝謝m(_ _)m

發表於: 2006/8/12 0:26
頂部






:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------