• slider image 514
  • slider image 516
  • slider image 517
  • slider image 518
  • slider image 519
:::


Browsing this Thread:   1 Anonymous Users






Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#7
版主
版主


查看用戶資訊
Yes.

發表於: 2007/12/5 14:26
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#6
新會員
新會員


查看用戶資訊
好的!!非常謝謝大家給我的指引,我馬上去爬資料,如果解決再跟大家分享一下!!!感恩,
請教一下work401 講義是這個網頁的講義嗎?
http://www.microchip.com.tw/modules/w ... nglefile.php?cid=4&lid=26

發表於: 2007/12/4 16:07
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#5
版主
版主


查看用戶資訊
用寫的很複雜,你可以到右邊檔案下載找一下 W401 C18 Workshop 教材,第五章有高、低優先權的設定與說明。

發表於: 2007/12/4 15:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#4
中級會員
中級會員


查看用戶資訊
他的意思應該是,你有去將你的中斷源給他對應的優先中斷順序嗎?
PIC它可以將中斷指定為高優先還是低優先的中斷,
就是利用IPR來做選擇的切換,你可以參考旁邊的一些資料有寫
我記得沒錯的話 ...
以上有錯請高手在指教

發表於: 2007/12/4 11:02
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#3
新會員
新會員


查看用戶資訊
不好意思,我是新手~請問能再詳細一點的提示一下嗎?謝謝您

發表於: 2007/12/3 20:15
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問有人寫過高/低優先權混合使用的例子嗎???
#2
資深會員
資深會員


查看用戶資訊
有先把各中斷的高低優先位元設好了嗎? IPR1 IPR2

發表於: 2007/12/3 18:30
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請問有人寫過高/低優先權混合使用的例子嗎???
#1
新會員
新會員


查看用戶資訊
大家好,請問有人有接觸過pic18系列的高/低優先權的經驗嗎,目前小弟在做一個小的主題,會同時用到高低的問題,有爬了一點版上的文章,大部分討論到單一中斷的問題,但是還沒找到真正解決的方法,請問大家知道哪邊有屬於這一方面的例子嗎,或是請大大幫我看一下我一部分的code

#define Time_Unit 65000//設定時間長短
#define Time_Counter 500
:://=======================高中斷的部分
#pragma code High_Interrupt_Vector=0x08 //高中斷向量位址為0x18
void High_INT_VEC (void) // 設定高中斷向量
{
_asm
goto High_INT_SER 插入組語讓程式跳至中斷向量主程式
_endasm
}
#pragma code

#pragma interrupt High_INT_SER
void High_INT_SER (void) //中斷向量主程式
{
if ( PIR1bits.TMR1IF == 1 ) //致能timer
{
PIR1bits.TMR1IF = 0; //timer計時器
WriteTimer1( Time_Unit ); //設定timer的快慢
I_Timer_Counter++; //以下小段是讓timer計數到某一數字,I_Run變成GO去做動作
if ( I_Timer_Counter == Time_Counter )
{
I_Run = GO; //timer到了就轉換
I_Timer_Counter = 0;
}
}

} //=========================中斷結束


//========================低優先權中斷開始利用PortB
//程式碼跟高優先權部分幾乎一樣,只是中斷向量位址改成0x18,
#pragma code Low_Interrupt_Vector=0x18
void Low_INT_VEC (void)
{
_asm
goto Low_INT_SER
_endasm
}
#pragma code

#pragma interrupt Low_INT_SER
void Low_INT_SER (void)
{
}
//====================================


上面包含了兩個中斷的設定,第二個中斷為了debug我沒再加東西,可以成功編譯執行

!!!!!!但是我把高優先中的計數程式換到低優先中,程式可以執行,但是卻停在初始狀態,代表沒有計數!!!!
請問一下是我低優先的部分設定錯誤了嗎????

發表於: 2007/12/3 17:36
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

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... ]

教育訓練中心

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