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


Browsing this Thread:   1 Anonymous Users




(1) 2 »


Re: MCU會異常RESET
#11
中級會員
中級會員


查看用戶資訊
感謝各位大大的回應,但小弟並沒有用到bootloader…只是在
一開始執行以下的程式就會reset了,感覺它應該是不定期的在
那段程式會reset。

修改或更換i.lkr的方式試過了,但依然會reset,我想應該不是
這個file的問題,問題還是沒解決…唉~
奇怪為什麼只要我拿掉某段程式,reset的機率就大大"降低了"
注意只是降低而已,reset的情況還在,但所拿掉的這段程式
是很久很久之前就完成且確認是正常的一個查表輸出的程式
應該不至於造成reset才對啊!


#pragma romdata ledloadat

rom uchar LEDld1[36] = {0b00000000,0b00000000,0b00000000,
0b00000000,0b00010000,0b00000000,
0b00000000,0b00111000,0b00000000,
0b00000000,0b01111100,0b00000000,
0b00000000,0b11111110,0b00000000,
0b00000010,0b11111110,0b10000000,
0b00000110,0b11111110,0b11000000,
0b00001110,0b11111110,0b11100000,
0b00011110,0b11111110,0b11110000,
0b00111110,0b11111110,0b11111000,
0b01111110,0b11111110,0b11111100,
0b11111110,0b11111110,0b11111110};

#pragma romdata


if (LSD_MODE == LoadMD)
{
if (LED_SQN0 == 0)
{
LED_out0.reg = LEDld1[led_ct1];
LED_out1.reg = LEDld1[led_ct1+1];
LED_out2.reg = LEDld1[led_ct1+2];
led_ct1 = led_ct1 + 3;
if (led_ct1 > 35)
{
led_ct1 = led_ct1 - 3;
if (flag_LED_demo == 0)
{
if ((flag_TOC_ok == 1) && (flag_skip_ok == 1))
{ LED_SQN0 = 1; }
}
else
{ LED_SQN0 = 1; }
}
}
else if (LED_SQN0 == 1)
{
if (flag_LED_demo == 1)
{ LED_SQN0 = 0; led_ct1 = 0; }
else
{ flag_BPM_300 = 0; }
}
else
{ LED_SQN0 = 0; }
}
else
{
if (LED_SQN0 == 0)
{
led_ct1 = led_ct1 - 3;
LED_out0.reg = LEDld1[led_ct1];
LED_out1.reg = LEDld1[led_ct1+1];
LED_out2.reg = LEDld1[led_ct1+2];
if (led_ct1 == 0) LED_SQN0 = 1;
}
else if (LED_SQN0 == 1)
{
if (flag_LED_demo == 1)
{ LED_SQN0 = 0; led_ct1 = 63; }
else
{ flag_BPM_300 = 0; }
}
else
{ LED_SQN0 = 0; }
}

發表於: 2005/11/29 17:49
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#10
高級會員
高級會員


查看用戶資訊
我以18f4620來Demo,
這是我要寫Bootloader的程式碼之ㄧ,
我並不會當在 goto 0x2A 部分,
(而且我沒有用---i.lkr,我還是用 .lkr而已跑Debug mode)
然後我的bootloader程式碼會從0x5B00開始堆起!
但我不確定這是不是你要的答案??
若沒幫到你,別罵我,我盡力了...

#define PROG_START 0x5B00 // 自訂

extern void _startup(void); // 與c018i.o有關,call這就可以由0x00開始執行

// ----------------------------------------
#pragma code _RESET_VECTOR=0x5B00
void _RESET_VECTOR(void)
{
_asm
goto 0x2A // Main Program Start
_endasm
}
#pragma code
// ----------------------------------------

void ProgStart(void)
{
_asm
goto PROG_START // 會再映射到0x2A,因為0x5B00~0x5B04的內容為goto 0x2A
_endasm
}

void main()
{
......
可以call function .
ProgStart();
這樣程式就會被reset了!
......
}

---------------------------------------
在.lkr部分,改成
CODEPAGE NAME=vectors START=0x0 END=0x29 PROTECTED
CODEPAGE NAME=boot START=0x5B00 END=0x6FFF
這樣程式碼會從0x5B00開始堆起!
CODEPAGE NAME=idlocs START=0x200000 END=0x200007 PROTECTED
---------------------------------------

發表於: 2005/11/28 19:42
Morgan Chuang
s909201@gmail.com
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#9
中級會員
中級會員


查看用戶資訊
謝謝版主,我試看看!

發表於: 2005/11/28 13:26
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#8
版主
版主


查看用戶資訊
升級到C18的V3.0版就有了。

發表於: 2005/11/25 10:23
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#7
中級會員
中級會員


查看用戶資訊
18f8722的.lkr並沒有i.lkr的阿!我試著參考8720i.lkr的設定
方式,但compiler卻回應debug ram的區段有重疊?真是…

發表於: 2005/11/24 18:49
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#6
中級會員
中級會員


查看用戶資訊
18f8722的.lkr並沒有i.lkr的阿!我試著參考8720i.lkr的設定
方式,但compiler卻回應debug ram的區段有重疊?真是…

發表於: 2005/11/24 18:48
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#5
版主
版主


查看用戶資訊
我的 LRKR 檔是在 C:\mcc18\lkr 的目錄裡。

發表於: 2005/11/24 16:31
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#4
中級會員
中級會員


查看用戶資訊
忘記請教版主,xxxI.LKR要去那兒取得?

發表於: 2005/11/24 13:56
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#3
中級會員
中級會員


查看用戶資訊
請問版主LKR若不在mcc18下而是在其它資料夾中(程式資料夾中)是否有關係,小弟是直接copy mcc18資料夾中的lkr檔來使用的。

發表於: 2005/11/24 13:55
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: MCU會異常RESET
#2
版主
版主


查看用戶資訊
.LKR檔是否為MCC18路徑下,針對ICD2偵錯時使用的 xxxI.LKR板本?

發表於: 2005/11/22 21:01
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... ]

教育訓練中心

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