你好,
我實際運用的需求是要在電路板上進入software BSL模式,我目前使用下面程式碼做開發驗證
int main(void)
{
uint16_t ite = 0;
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
initClockTo16MHz();
__bis_SR_register(GIE);
while (1)
{
__disable_interrupt(); // disable interrupts
for(ite = 0 ; ite < 1000 ; ite++);
((void ( * )())0x0C00)(); // jump to BSL
}
理論上開機後等一小段時間後就進入software BSL,這時使用外部uart送0x80的sync字元,都沒有回應,這時候我用hardware BSL invocation,再送一次0x80,就有正確的0x90回復了,也用過1 Mhz的clock設定,也是一樣的狀況,不知道為什麼進入不了software BSL模式。