我已經看了十幾種不同的方式來重置我的arduino,從連接引腳到重置引腳和陪審團索引怪異的代碼位。 他們都沒有工作。重置Arduino通過代碼
代碼的一個位,每個人都好像是用是
void software_Reset() // Restarts program from beginning but does not reset the peripherals and registers
{
asm volatile (" jmp 0");
}
一下我國的Arduino與
C:\Users\Leonardo\AppData\Local\Temp\ccGUYdTQ.s:2259: Error: bad instruction `jmp 0'
響應,然後它不能上傳的代碼。我不知道該怎麼辦。我的完整代碼可以在這裏找到http://pastebin.com/CA2Ms2hB但它是巨大的,我不知道它是否會有所幫助。
如果有人能幫我理解爲什麼software_Reset();我真的很感激,我在這裏結束了我的繩索。
(此外,如果有其他方法重置Arduino的我會很樂意嘗試一下)
如今'arduino'不會自動成爲UNO或至少是一個atmega 8位控制器。對於那些「jmp 0」確實比濫用看門狗更糟糕,但這兩種方法都應該工作的人來說,這是值得商榷的 – datafiddler
「jmp」之前可能有一些不可打印的字符嗎?我知道在arduino上下蹲,但是(我聽說過)有些彙編器對哪些列指令需要啓動很煩惱。 –
[如何在C中爲AVR-Studio編寫自定義重置()函數?] http://stackoverflow.com/questions/32802221/how-to-write-a-custom-reset-function-in-c-for-avr-studio) –