Re: 請問 18F65J50 可以使用 bootLoader燒code 嗎?
|
||||
---|---|---|---|---|
高級會員
|
真的非常感謝您, 不知道 Microchip 有沒有 18F65J50 的 demoboard 呢? 類似像 APP013 可以練習Bootloader
發表於: 2008/5/9 9:29
|
|||
|
Re: 使用APP013 練習板 練習Bootloader
|
||||
---|---|---|---|---|
高級會員
|
不好意思~因為之後去忙別的事情了...這邊就忘了看! 最近才又回來做了~我發現 我的F/W 是1.0 耶
Microchip USB Bootloader Version 1.0 請問哪邊下載的到新的F/W 呢? (但是為什麼直接使用_factory_hex 資料夾裏的 picdemfsusb.hex 這個檔案 就可以成功的燒錄呢!?) (我也是用18f4550)
發表於: 2008/5/5 10:25
|
|||
|
請問一下 sleep mode~
|
||||
---|---|---|---|---|
高級會員
|
我在24FJ64GA006.h 裡面有看到
#define Sleep() {__asm__ volatile ("pwrsav #0");} 是不是代表我在code 裡面執行 Sleep(); 就能進入睡眠模式呢? 睡眠模式,是否就會讓程式整個停住呢? 而一直到有中斷喚醒他之後 才會繼續執行!?
發表於: 2008/4/16 15:05
|
|||
|
Re: 關於記憶體搬移...有什麼情況會這樣呢!?
|
||||
---|---|---|---|---|
高級會員
|
抱歉~這幾天都在忙別的事情...
您說的Disable 我了解~ 我是選擇disable 沒錯... 至於您說把Release 改成debug. 試了一下,Debug 會把記憶體位址往後推,會閃過0x828 跟 0x829...所以.... 想請問 0x828 跟 0x829 這記憶體位址是否不能使用?
發表於: 2008/4/14 15:48
|
|||
|
Re: 關於記憶體搬移...有什麼情況會這樣呢!?
|
||||
---|---|---|---|---|
高級會員
|
您說的最佳化,剛剛去看了一下,並沒有勾選阿...
sourceAddr.v(3)=0; 這行執行的結果, 不是應該把 sourceAddr.v(3) 放 0嗎? 所以我用watch 看 v(2) 跟 v(3) 都沒辦法被修改. 目前我是改gld, Ram 從834 位址 開始使用 避掉這個問題..
發表於: 2008/4/10 9:15
|
|||
|
關於記憶體搬移...有什麼情況會這樣呢!?
|
||||
---|---|---|---|---|
高級會員
|
明明已經把 buffer[2] buffer[3] buffer[4] 丟到
sourceAddr.v[0] ,sourceAddr.v[1] ,sourceAddr.v[2] sourceAddr.v[3] 放 0 為什麼 我用Watch 看 只有 sourceAddr.v[0] ,sourceAddr.v[1] 有被更改,而 v[2] 跟v[3] 沒有辦法被更改...code 是Pic24 的bootLoader
發表於: 2008/4/8 10:09
|
|||
|
Re: 關於 P24F 的BootLoader
|
||||
---|---|---|---|---|
高級會員
|
這幾天看了很久 還是看不懂這邊修改這樣是什麼意思~
是把T1 的中斷跳到0xF00 T2的中斷跳到0x1004 是這個意思嗎!?
發表於: 2008/3/31 10:20
|
|||
|
Re: TBLRDH 跟 TBLRDL 讀到的是PM 的資料嗎?
|
||||
---|---|---|---|---|
高級會員
|
恩~可是我讀出來變得怪怪的~
我在這段 //Setup user reset vector //USER_PROG_RESET is 0x100 sourceAddr.Val = USER_PROG_RESET; userReset.Val = ReadLatch(sourceAddr.word.HW, sourceAddr.word.LW); //Prevent bootloader lockout - if no user reset vector, reset to BL start if(userReset.Val == 0xFFFFFF) {userReset.Val = BOOT_ADDR_LOW;} userResetRead = 0; 我自己看 Program Memory 100的位址應該是 0xFFFFFF 沒錯滑鼠移過去也是顯示0x00FFFFFF 但是他讀出來 卻是 0xFFFF0000 傳出前 傳出後 除了這個問題外 為什麼直接看RAM 會看不到資料呢? 看到都是R
發表於: 2008/3/28 17:50
|
|||
|
TBLRDH 跟 TBLRDL 讀到的是PM 的資料嗎?
|
||||
---|---|---|---|---|
高級會員
|
抱歉 因為看datasheet 有點看不太懂
在24F BootLoader code 其中的Memory.c 檔 有個Function是 DWORD ReadLatch(WORD page, WORD addrLo) { DWORD_VAL temp; TBLPAG = page; temp.word.LW = __builtin_tblrdl(addrLo); temp.word.HW = __builtin_tblrdh(addrLo); return temp.Val; } Program Memory 的位址是24bit Program Memory 的資料也是24bit (兩個位址) TBLPAG 是放高8 bit 傳進來的 addrLo是放後面的16bit 而 __builtin_tblrdl 是去讀取指定位址的低16bit __builtin_tblrdh 是去讀取指定位址的高8bit 上面敘述是這樣沒錯嗎? 因為真的不太確定...
發表於: 2008/3/28 10:10
|
|||
|