为äºæ¢å¤Arduinoçåè½ï¼å¿
é¡»å¾éæ°ç»ATMega328Påçæºéç§åbootloaderï¼å
¶å®Arduinoå°±æ¯å¨AVRåçæºä¸é¢ç½®äºä¸ä¸ªbootloaderç¨åºï¼è¿æ ·åé
åArduinoå¼åç¯å¢å°±æ¯æè°çArduinoäºï¼ä½Arduinoè¿ä¸ªè¯æ¬èº«åªçç»å®æ¹ä½¿ç¨ï¼ãå½ç¶å¨æ·å®ä¸ä¹è½ä¹°å°å·²ç»ç§å好çAVRåçæºï¼åªæ¯èªå·±æä¸å·²ç»æäºAVRåçæºï¼å°±æ²¡å¿
è¦å»è±é£å¤æé±äºã
äºæ¯é©¬ä¸æå¼ä¸è½çç¾åº¦ï¼è¾å
¥å
³é®åâArduino bootloaderâæç¶ï¼ä¸å¤§å ä¹±ä¸å
«ç³ç¸å
³çé®é¢å°±åºæ¥äºï¼ç»è¿ä¸è½®ççéï¼åç°è®¸å¤è¯´çä¹å¹¶ä¸æ¯å¾æ¸
æ°ï¼ä¸è¿è®©ææç½äºä¸ªå¤§æ¦ï¼ä¸ä¸ªæ®éçAVRåçæºç¡®å®è½ç§åbootloaderä¹åä½ä¸ºArduino使ç¨ãé£ä¹é®é¢æ¥äºï¼å¦ä½æbootloaderç§å½å°AVRåçæºä¸å»äºï¼è¿çç¡®æ¯ä¸ªé®é¢ï¼åæ£å¯¹äºä¸æAVRå¼åçææ¥è¯´æ¯ä¸ªé®é¢ãä¸è¿è¿å¥½ä¹åå¨æ·å®ä¸ä¹°äºä¸ä¸ªUSBASPä¸è½½å¨ï¼è·ä¹åæ¦é¤bootloaderä¸æ ·ï¼ä¹è¦ç¨å°progisp软件ï¼å 为æ¤æ¶çATMega328Påªæ¯ä¸ä¸ªæ®éçAVRåçæºï¼ç¨Arduinoå¼å软件æ¯ç§åä¸è¿å»çï¼ã
æ¢ç¶è¦ç§å½bootloaderï¼é£ä¹ä»ä¹æ¯bootloaderå¢ï¼æ£å¦ä½ ææ³ï¼bootloaderå½ç¶æ¯ä¸ä¸ªç¨åºï¼æ¢ç¶è¦ç§å½å°åçæºä¸å»ï¼åºè¯¥æ¯ä¸ä¸ª.HEXä¹ç±»çæ件ãä½æ¯ï¼bootloaderæ件ä»åªæ¥å¢ï¼ç»§ç»ç¾åº¦ãããæ¾å°äºï¼å¨Arduino软件å®è£
ç®å½ä¸çhardware\arduinoä¸ãæ¤æ件夹ä¸çâboards.txtâæ件å¾éè¦ï¼æ¯å¾éè¦ï¼å
¶ä»çæ许é½å¯ä»¥å¨ç¾åº¦ä¸æ¾å°ï¼ä½å 为è¿ä¸ªæ件æè
¾äºæ大å个æä¸ï¼ç¾åº¦ä¸ä¹æ²¡ææç¡®ç说æãæå¼æ件ï¼æ¾å°èªå·±å¯¹åºçArduinoçæ¬ï¼å 为æçæ¯âArduino Unoâï¼äºæ¯éå®âuno.name=Arduino Unoâåºåç说æï¼å 为çä¸å»å¾ä¹±ï¼ä¸å®è¦ä»ç»å»çãæ¾å°âuno.bootloader.low_fuses=0xff"æç¼ç¨çä¸ä½ä½ä¸ºFFï¼âuno.bootloader.high_fuses=0xdeâæç¼ç¨çä¸é«ä½ä¸ºDEï¼âuno.bootloader.extended_fuses=0x05âææ©å±ä½ä¸º05ãè¿ä¸ä¸ªå¼é常éè¦ï¼æ¯å³å®ä½ ç§å½bootloaderæåçå
³é®ãè³äºè¿ä¸ä¸ªå¼å
·ä½æ¯ä»ä¹ææï¼æä¹ä¸æ¯å¾ä¸æ¸
æ¥ï¼ä½AVRåçæºçç§å½æ¶éè¦è®¾ç½®çä¸ä½ï¼èä¸ä¸è½ä¹±è®¾ç½®ï¼è¿ä¹æ¯AVRè·51åçæºçä¸åä¹å¤ã
ç¨progisp软件æè¿ä¸ä¸ªçä¸ä½çå¼åå
¥å°AVRåçæºä¸ï¼ç¶å继ç»æµè§âboards.txtâæ件å¾ä¸çï¼æ¾å°âuno.bootloader.path=optibootâè¿å°±æ¯è¯´è¦ç§å½çbootloaderæ件å¨bootloaders\optionæ件夹ä¸ï¼âuno.bootloader.file=optiboot_atmega328.hexâæ件åå°±æ¯optiboot_atmega328.hexï¼è¿å°±æ¯æ¥ä¸æ¥éè¦ç§å½å°AVRåçæºä¸çç¨åºãç¨progisp软件è°å
¥æ¤æ件ï¼ç¶åç´æ¥åå
¥å°AVRåçæºä¸å°±è¡äºï¼ä¸ä¸ªæ¯æArduinoçAVRå°±å好äºããã
å
¶å®è¿ä¸ªé®é¢æ¬èº«ä¸é¾ï¼ä½å¯¹äºæ²¡æ¥è§¦è¿AVRç人æ¥è¯´ï¼è¿æ¯è¦è±è®¸å¤æ¶é´çï¼ä¸é´ä¹ä¼åå¨è®¸è®¸å¤å¤åç§åæ ·çé®é¢ãè³äºprogispç使ç¨æ¹æ³å¾ç®åï¼ç¾åº¦ä¸çæç¨ä¹å¾å¤ï¼è¿ææä¸å¿
é¡»æä¸åå¯ä»¥ç§å½AVRåçæºçä¸è½½å¨ãæå½æ¶å°±æ¯å¿½ç¥äºé£ä¸ä¸ªçä¸ä½çå¼ï¼æ以ååå¤å¤ä¹æ²¡ææåï¼ç¾åº¦ä¸é¢ä¹æ²¡æ对âboards.txtâæ件å详ç»ç解éã没设置çä¸ä½ç¨åºæ¯å¯ä»¥æ£å¸¸çç§å½è¿å»ï¼ä½Arduinoæ¯ä¸è½ç¨çï¼æ以å¿
é¡»è¦æç
§å®ç½ç»åºç说ææä½ãæå½æ¶å¤§å¤æ°æ¶é´ä¸»è¦è±å¨ä¸¤ä¸ªé®é¢ä¸ï¼ä¸ä¸ªæ¯.HEXæ件å
·ä½ä½ç½®ï¼å 为Arduinoæä¸åççæ¬ï¼æ以.HEXæ件ä¹ä¸åï¼è¿æä¸ä¸ªå°±æ¯çä¸ä½ä¸ã
温馨提示:答案为网友推荐,仅供参考