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


Browsing this Thread:   1 Anonymous Users






Re: 請問執行中斷前怎麼儲存各暫存器的值?
#7
版主
版主


查看用戶資訊
給你一個 Home work 編譯成功後,看一下 view 下的 Disassemblty Listing 看一下組語就知道中斷存了哪些東西。

發表於: 2008/8/1 9:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問執行中斷前怎麼儲存各暫存器的值?
#6
版主
版主


查看用戶資訊
要不要做 TempData 的儲存主要是看你在中斷服務函數裡有沒有用到 + - * / 等一些數學計算的功能。如果只是很單純的中斷處理並沒有修改到別人目前所使用的變數的話連存都不用存。只要是看你在中斷裡要改變哪些東西。ㄧ般用C處理是可以不用太刻意去儲存,因為 C 會自動處理ㄧ些該儲存的暫存器。

發表於: 2008/8/1 9:41
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問執行中斷前怎麼儲存各暫存器的值?
#5
高級會員
高級會員


查看用戶資訊
請問在宣告的中斷程式後加上 nosave=section(".tmpdata") ,
是指將各個暫存器的值存在記憶體的某 section 中,等中斷程式
執行完再取出還原嗎?
還是將目前的暫存器的值另外儲存以供中斷程式執行時使用?

發表於: 2008/7/31 11:05
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問執行中斷前怎麼儲存各暫存器的值?
#4
高級會員
高級會員


查看用戶資訊
我想...我會用C....感覺比較簡單
我有參考了以上幾篇文章(超連結的),以下是我的中斷程式碼!!

#pragma code high_vector = 0x08

void high_interrupt (void)
{
_asm GOTO RS232_Send_Data _endasm
}

#pragma code

#pragma interrupt RS232_Send_Data

void RS232_Send_Data (void)
{
....
}

是否將 #pragma interrupt RS232_Send_Data 改成
#pragma interrupt RS232_Send_Data nosave=section(".tmpdata") 即可????

發表於: 2008/7/30 22:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問執行中斷前怎麼儲存各暫存器的值?
#3
版主
版主


查看用戶資訊

發表於: 2008/7/30 18:15
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問執行中斷前怎麼儲存各暫存器的值?
#2
版主
版主


查看用戶資訊
先講一下用 C 或組語? 各有不同的玩法。

發表於: 2008/7/30 17:02
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請問執行中斷前怎麼儲存各暫存器的值?
#1
高級會員
高級會員


查看用戶資訊
請問各位一個問題,今天我們老師跟我說,執行中斷前要先儲存
各個暫存器的值用以在執行完中斷程式後能再繼續正常的運算
執行其它的運算,所要儲存的暫存器,我們老師跟我說,如:什麼 w register,state register....等的 register 的值!!
等執行完中斷程式後再取出這些值回復原本在中斷前的狀態來
繼續運算!!

請問需要嗎?
我在W401 的課程投影片中並沒有看到這部份,請問有必要儲存
暫存器的值嗎? (在執行中斷程式之前)
如果需要的話要儲存哪些的 register 的值呢?

發表於: 2008/7/30 16: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... ]

教育訓練中心

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