不能upload program 到新的Atmega328P

大家好,最近在研究set up Atmega328p的fuse setting.
目標是把Atmega328P改做用internal oscillator 8MHz,
Fuse setting 如下:
Low Fuse: 0xE2
high Fuse: 0xDB
extended Fuse: 0xFD
改完Fuse setting 後,不能用arduino IDE upload Program 到Atmega328P.
想問下會有什麼原因導致這個問題?
Fuse Calculator: http://www.engbedded.com/fusecalc/

Hardward Setup
Programmer: Arduino Uno
按照Arduino Breadboard 接法
https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard

本帖最後由 Charcoal99 於 2016-12-27 17:40 編輯

回覆 1# snowmarco

Uno R3 原本的晶振是16MHz, 依家你若改咗佢做8MHz, 328P 同DFU (Device Firmware Update)
之間的通訊是靠 Serial port 的, 個Baud rate 依據晶振改變亦變咗, 所以通訊唔到。
你要將serial port BaudRate Generator 加番快一倍, 或者找個行8MHz o既Firmware 嚟行。

TOP

本帖最後由 KSC 於 2016-12-28 11:11 編輯

2016-12-28 11-03-32.jpg
2016-12-28 11:03

簡單來講你現有的操作有兩個問題
1)用錯16Mhz的boolloader落你target的mega328
2)uno用u16做usb轉ttl,只對應16Mhz的boolloader

找舊版本的arduino,用你的uno做programer,燒Pro Mini 3.3V 8Mhz的boolloader落你target的mega328,再改fuse做internal 8MHz。
之後用ftdi的usb轉ttl,board用Arduino pro mini 8MHz就可以用arduino ide落program落你target的mega328

TOP

相關文章