Tại sao nạp chương trình cho arduino thông báo lỗi năm 2024

Trị con ATMEGA328P, đem con ở kit còn ok ráp sang kit lỗi, vì em viết là xài Xbee nên em sẽ có ít nhất 2 kit Arduino, nên không có gì khó khăn cả. Nếu ok thì con ATMEGA328P cũ bị lỗi làm bước [1], no ok làm bước [2].

Show

[1] Upload lại bootloader cho ATMEGA328P theo hướng dẫn Arduino - ArduinoISP . Sau khi nạp lại bootloader vẫn vậy ===> thay con ATMEGA328P khác ( giá chợ 75k vnđ ), và upload lại bootloader cho nó.

[2] Cái này rất ít bị. Upload lại firmwares cho con ATmega16U2, con chip hình vuông nhỏ xíu

* Flip-tool: “Flip” writing-tool cho ATmega16U2. Downloading FLIP

* usbserial :“usbserial” file make ATmega16u2 thành usbserial-converter Arduino. Có trong “Arduino IDE” tại [xxx]\arduino-1.0.5\hardware\arduino\firmwares\atmegaxxu2\arduin o-usbserial\Arduino-usbserial-atmega16u2-Uno-Rev3.hex

TRANG CHỦ (HTTPS:WWW.LINHKIENTOT) BÀI VIẾT (HTTPS:WWW.LINHKIENTOT/INDEX.PHP?ROUTE=EXTENSION/SIMPLE_BLOG/ARTICLE) CÁC LỖI THƯỜNG GẶP KHI LẬP TRÌNH ARDUINO? LỖI CÀI ARDUINO (HTTPS:WWW.LINHKIENTOT/INDEX.PHP? ROUTE=EXTENSION/SIMPLE_BLOG/ARTICLE/VIEW&SIMPLE_BLOG_ARTICLE_ID=3)

ăng nhập (linhkientot/index.php?route=account/login )   (linhkientot/index.php?route=account/account)

(linhkientot)

CÁC LỖI THƯỜNG GẶP KHI LẬP TRÌNH ARDUINO? LỖI CÀI ARDUINO

ược ăng bởi: admin (linhkientot/index.php? route=extension/simple_blog/author&simple_blog_author_id=1) Ngày tạo: 20 Sep

0

Các lỗi thường gặp khi lÁp trình Arduino? Lỗi

cài Arduino

B¿n có thể xem một số lỗi hay xuÃt hiện khi đang sử dụng m¿ch Arduino t¿i bài viết Các lỗi thường gặp khi làm việc với Arduino (linhkientot/cac-loi-thuong-gap-khi- lap-trinh-arduino). Nếu v¿n không tìm thÃy lỗi mình gặp phÁi, hãy tìm kiếm chúng trong danh sách Các lỗi thường gặpvới Arduino hoặc các bài viết có liên quan.

1. Tại sao tôi lại không upload được chương trình

lên mạch Arduino của mình?

Chương trình của b¿n phÁi trÁi qua rÃt nhiều ph¿n để được "vÁn chuyển" và "thi hành" trên một m¿ch Arduino! Và vì thế, nào một trong những ph¿n Ãy có vÃn đề thì b¿n sẽ không thể nào upload được chương trình lên Arduino. Những ph¿n đó bao gồm:

  1. Chương trình Arduino IDE.
  2. Driver cho m¿ch Arduino.

số m¿ch khác thì sử dụng bộ driver FTDI để xây dựng phương thức kết nối đến vi điều khiển d¿ng FTDI trên m¿ch (nằm cứng lên luôn, không tháo rời được). Cách tốt nhÃt để kiểm tra xem rằng b¿n đã cài đặt driver cho bÁn m¿ch của mình hay chưa là kiểm tra mục Tools > Serial Port. Nếu trong danh sách hiện ra có cổng Serial của m¿ch Arduino b¿n đang sử dụng thì b¿n đã cài, nếu chưa thì hãy vào đây (linhkientot/huong-dan-cai-dat-driver-va-arduino-ide.html). Một lưu ý nhỏ, chẳng h¿n b¿n sử dụng một m¿ch Arduino Uno có cổng Serial tên là COM3, giờ gắn một cái Arduino Uno thứ hai vào thì cổng COM3 không phÁi là cổng Serial để kết nối tới m¿ch Arduino Uno thứ hai này, để khắc phục, b¿n hãy cài đặt driver l¿i. Nếu b¿n gặp lỗi "The system cannot find the file specified" khi cài đặt driver cho Arduino Mega 2560 trên Windows XP, xin hãy thử cách này (forums.techguy/1680041-post1.html). Trên Linux, m¿ch Arduino Uno và Arduino Mega 2560 được chọn mặc định là /dev/ttyACM0. Nhưng Linux l¿i không hỗ trợ thư viện RXTX chuÁn mà những m¿ch này sử dụng để giao tiếp với vi điều khiển. Vì vÁy trong bÁn tÁi về dành cho Linux, Arduino đã thêm vào một thư viện RXTX một patch để tự động tìm kiếm những Serial port có d¿ng /dev/ttyACM* khác. Ngoài ra, còn có một gói dành cho Ubuntu (launchpad/ubuntu/+source/rxtx/2-3) (phiên bÁn 11) đã bao gồm patch đÃy. Đôi khi, nếu b¿n v¿n sử dụng gói RXTX từ bÁn distribution của b¿n, thì b¿n nên đổi /dev/ttyACM0 thành /dev/ttyUSB0 (đây chỉ là một ví dụ, b¿n hãy chọn cái nào hiện ra trong Arduino IDE).

3. Sự cho phép truy cập đến cổng Serial

Trên Windows, nếu b¿n thÃy chương trình Arduino IDE khởi động chÁm, hoặc khi vào Tools > Serial Port thÃy nó lâu hiện ra, b¿n nên tắt các cổng Bluetooth serial hoặc bÃt cứ cổng Serial qua m¿ng nào hết. Vì khi khởi động chương trình Arduino IDE hoặc tìm các cổng Serial hợp lệ, Arduino IDE sẽ quét TÂT CÀ các cổng Serial có thể quét, nếu trong các cổng Ãy có những cổng Bluetooth Serial hoặc Serial qua m¿ng, và chúng bị lỗi hoặc delay thì chương trình sẽ tốn nhiều thời gian để quét xong chúng => chương trình khởi động chÁm. Hãy đÁm bÁo rằng, b¿n không đang ch¿y các chương trình cũng có d¿ng quét tÃt cÁ các cổng Serial, ví dụ như USB Cellular Wifi Dongle software (từ Sprint hoặc Verizon), các ph¿n mềm quét các thiết bị c¿m tay, Bluetooth-USB drivers (ví dụ BlueSoleil), virtual daemon tools, ... B¿n hãy đÁm rằng, không có ph¿n mềm nào cài tường lửa để truy cÁp đến cổng Serial đó, ví dụ như ZoneAlarm B¿n phÁi tắt các chương trình như Processing, PD, vvvv, ..ếu như các chương trình này đang đọc dữ liệu qua cổng Serial mà b¿n đang chọn. Trên Linux, b¿n c¿n t¿m chời ch¿y Arduino dưới quyền root để xem thử nó có giúp ích gì cho việc upload chương trình hay không.

4. Các kết nối vật lý tới mạch Arduino

Điều đ¿u tiên mà b¿n bắt buộc phÁi làm, đó là kiểm tra xem thử m¿ch Arduino đã được gắn điện (đèn màu xanh sáng). M¿ch Arduino Uno và Arduino Mega 2560 hay gặp vÃn đề trong việc kết nối thông qua USB hub trên máy MAC. Nếu b¿n kiểm tra không thÃy cổng Serial mà mình hay sử dụng

trong Tools > Serial Port thì xin hãy gỡ kết nối USB với USB hub sau đó gắn trực tiếp vào máy MAC sau đó khởi động l¿i Arduino IDE. Ngắt kết nối của hai cổng digital 0 và 1 trong quá trình upload từ máy tính vào m¿ch Arduino, sau đó b¿n có thể dùng chúng một cách bình thường. Hãy thử upload chương trình mà không có bÃt cứ thiết bị, dây diện nào được nối tới Arduino (và dĩ nhiên là phÁi lo¿i trừ dây USB smiley) Thay đổi dây USB vì đôi lúc do nó quá dài hoặc không có cục lọc nhiễu nên bạn không thể upload được.

5. Auto-reset

Auto-reset là một chức năng tự động của một số m¿ch của Arduino, chức năng này hỗ trợ việc tự động reset để lÁp trình vi điều khiển nằm trên m¿ch. Tuy nhiên, một số m¿ch l¿i không có chức năng này (để tiết kiệm diện tích và thể tích lắp đặt nên buộc phÁi đánh đổi một chức năng không quá quan trọng khi sÁn xuÃt một sÁn phÁm). Những m¿ch nào không có cổng USB (hoặc mini USB) và cực kì nhỏ thường không hỗ trợ chức năng Auto-reset Nếu b¿n có một m¿ch không có chức năng Auto-reset thì b¿n c¿n reset m¿ch bằng tay trước khi bắt đ¿u quá trình upload. (Arduino Diecimila, Duemilanove, và Nano cũng như là LilyPad, Pro, và Pro Mini đều hỗ trợ chức năng này với 6 chân lÁp trình) Tuy nhiên, hãy chú ý rằ[VP 1] Device is not responding correctlyng, một số m¿ch Arduino Diecimila bị lỗi trong qua trình cài bootloader và bắt buộc b¿n phÁi nhÃn nút reset bằng tay. Còn nếu b¿n gặp lỗi này: [VP 1] Device is not responding correctly. Hãy thử reset l¿i board, upload l¿i.

6. Bootloader đối với con chip được gắn trên Arduino

Hãy chắc chắn rằng bootloader đã được cài đặt. Để kiểm tra, b¿n hãy nhÃn nút reset và xem thử đèn số 13 (đèn LED được kết nối trực tiếp với chân số 13) có nhÃp nháy hay không? Nếu không thì m¿ch của b¿n chưa được cài bootloader.

2. Tại sao trên máy MAC của tôi lại xuất hiện lỗi:

"Build folder disappeared or could not be written"?

B¿n đã copy file Arduino ra khỏi file image (và dán vào thư mục Applications ) chưa? Nếu không, b¿n sẽ không thể upload được chương trình của mình đâu.

3. Tại sao chương trình Arduino IDE của tôi lại

không hoạt động khi tôi cập nhập chương trình

Java?

... đó chính xác là những gì đã xÁy ra với b¿n đúng không? Hãy kiểm tra một cách CÀN THÀN những dÃu nháy đơn, nháy kép, dÃu g¿ch chéo ngược , comments,... Ví dụ: Nếu b¿n viết như thế này: '"' thì sẽ lỗi (hãy thay cặp dÃu nháy đơn bên ngoài thành cặp dÃu nháy kép như thế này """)

5. Tại sao tôi không khởi động mạch-đã nạp chương

trình của tôi khi mà tôi đang kết nối nó với nguồn

ngoài? (đối với Arduino Diecimila và những mạch

trước đó)

Bởi vì chân RX chưa được kết nối. Bootloader của m¿ch có vẻ đang nhÁn một lượng lớn thông tin rác ở chân RX, và hiển nhiên nó sẽ không bao giờ hoàn thành và ch¿y chương trình mà b¿n đã upload lên m¿ch. Để khắc phục b¿n chỉ c¿n nối tắt chân TX và RX hoặc là nối RX qua một điện trở 10 kOhm rồi nối xuống cực âm.

6. Tại sao chương trình Arduino IDE của tôi lại bị

treo khi tôi đang upload chương trình? (trên

Windows)?

Đó là do sự sung đột của chương trình Arduino IDE với một tiến trình của chương trình Logitech ('LVPrcSrv'). Hãy bÁt Task Manager và End process nó!

7. Điều gì đã xảy ra với mạch của tôi khi nó không

chịu khởi động lên? (đèn màu xanh đã sáng rồi)?

Nếu b¿n đang sử dụng bÁn m¿ch Arduino Diecimila hoặc những bÁn m¿ch cũ hơn có cổng USB (Ví dụ như NG) thì b¿n c¿n chắc chắn rằng cái jumper (miếng nhựa nhỏ dùng để nối tắt 2 chân header sát nhau) đã được gắn vào đúng chân. Nếu b¿n đang cÃp nguồn cho m¿ch bằng nguồn điện ngoài (được cắm vào chân nguồn) thì b¿n c¿n gắn cái jumper này vào 2 cổng g¿n chỗ gắn cổng nguồn nhÃt. Còn nếu b¿n đang cÃp nguồn cho m¿ch bằng cổng USB thì b¿n c¿n gắn cái jumper này vào 2 cổng g¿n chỗ gắn cổng USB nhÃt. Xem Ánh t¿i đây (k1.arduino/img/2014/05/26/0/501_1231-1401068969-0-- guild-7-1-arduino-jumper). B¿n kích vào đường d¿n trên để xem Ánh.

8. Tại sao mạch Arduino Diecimila của tôi lại phải

tốn đến 6-8 giây để khởi động chương trình mà tôi

đã nạp vào?

Trong quá trình sÁn xuÃt hàng lo¿t m¿ch Arduino Diecimila, có một số m¿ch bị lỗi khi cài bootloader. Nhưng không c¿n phÁi lo lắng về việc này. B¿n có thể kiểm tra m¿ch đã được cài bootloader hay chưa nhờ vào việc kiểm tra đèn LED số 13 có nhÃp nháy khi b¿n nhÃt nút reset hay không. Nếu nó nhÃp nháy 3 l¿n là đã có NG bootloader, và b¿n c¿n phÁi nhÃn nút reset vài l¿n trước khi upload chương trình để chương trình khi n¿p vào không bị hiện tượng như câu hỏi và b¿n đang đọc. Để cài bootloader cho Arduino Diecimila b¿n c¿n tham khÁo đường d¿n này (arduino/bai-viet/81-lap-trinh-va-cai-dat- bootloader).

9. Tôi cần làm gì nếu file arduino bị lỗi khi khởi

động?

Nếu b¿n gặp một lỗi khi khởi động chương trình arduino, ví dụ là như thế này chẳng h¿n: Arduino has encountered a problem and needs to close. Lúc này b¿n c¿n ch¿y file run , và hãy nghe tôi, b¿n c¿n kiên nh¿n đợi một tí để chương trình Arduino khởi động!

10. Tại sao Arduino lại không chạy được trên các

phiên bản cũ của MAC?

Nếu b¿n gặp một thông báo lỗi như thế này

Lúc này b¿n c¿n cÁp nhÁp l¿i hệ điều hành của mình lên phiên bÁn Max OS X 10. hoặc mới hơn. Vì phiên bÁn cũ của Max OS X có một số xung đột với thư viện của Arduino.

11. Tôi cần phải làm gì khi gặp lỗi

UnsatisfiedLinkError error (about native library

librxtxSerial) khi khởi động Arduino?

Link (dyld) error: dyld: /Applications/arduino-0004/Arduino 04/Contents/MacOS/Arduino Undefined symbols /Applications/arduino-0004/librxtxSerial undefined reference to _printf$LDBL128 ex

Nếu b¿n đã cài cygwin trên máy của b¿n, thì khi biên dịch chương trình để upload lên m¿ch Arduino, b¿n sẽ nhÁn được lỗi sau: 6 [main]? (3512) C:\Dev\arduino-0006 ools\avr\bin\avr-gcc: *** fatal error - C:\Dev\arduino-0006 ools\avr\bin\avr-gcc: *** system shared memory version mismatch detected - 0x75BE0084/0x75BE009C. This problem is probably due to using incompatible versions of the cygwin DLL. Search for cygwin1 using the Windows Start->Find/Search facility and delete all but the most recent version. The most recent version should reside in x:\cygwin\bin, where 'x' is the drive on which you have installed the cygwin distribution. Rebooting is also suggested if you are unable to find another cygwin DLL. Nếu như vÁy, b¿n c¿n đÁm rằng b¿n không ch¿y chương trình cygwin khi b¿n đang ch¿y Arduino. Còn nếu nó không khÁ dụng, b¿n hãy xóa file cygwin1 trong thư mục Arduino và thay thế nó bằng file cygwin1 trong thư mục mà b¿n đã cài cygwin (ví dụ như là: c:\cygwin\bin)

14. Chương trình Arduino IDE và bảng chọn Tools

của tôi tốn nhiều thời gian để khởi động, vậy bây giờ

làm như thế nào?

Nếu b¿n thÃy chương trình Arduino IDE của mình tốn nhiều thời gian để khởi động và xem có vẻ như bị treo khi kích chọn bÁn chọn Tools thì có vẻ như là, Arduino IDE đã gặp một xung đột với một số thiết bị của b¿n. Với ph¿n mềm Arduino IDE, khi khởi động, hoặc là khi kích chọn bÁng chọn Tools thì chúng cố gắng lÃy danh sách của tÃt cÁ cổng COM trên máy tính của b¿n. Và có thể, một hoặc một số cổng COM được t¿o ra bởi một hoặc một số thiết bị của b¿n đã gây chÁm tiến trình này. Vì vÁy hãy vào Device Manager và thử tắt một số cổng COM xem mọi thứ có tiến triển hay không. B¿n nên tắt các cổng COM do các thiết bị Bluetooth hoặc thiết bị m¿ng t¿o ra.

15. Tại sao bảng chọn Tools > Serial port lại không

có lựa chọn nào cả?

Nếu b¿n đang có một m¿ch Arduino có cổng USB thì điều đ¿u tiên b¿n c¿n làm là cài driver (arduino/bai-viet/68-cai-dat-driver-va-arduino-ide

install-driver) cho nó. Còn nếu b¿n sử dụng một m¿ch USB-to-Serial để t¿o cổng COM giao tiếp với những m¿ch Arduino không có USB thì b¿n c¿n driver cho m¿ch USB-to-Serial đó. Hãy chắc chắn rằng b¿n đã kết nối Arduino vào máy tính. Những cổng Serial trong danh sách Tools > Serial port sẽ tự động làm mới khi b¿n gắn hoặc gỡ một hoặc nhiều m¿ch Arduino ra khỏi máy tính. Hãy chắc chắn rằng không có một ph¿n mềm cũng đang quét và tìm các cổng Serial, ví dụ như các chương trình quét các thiết bị c¿m tay, Bluetooth-USB drivers,...

16. Đã xảy ra lỗi gì khi mà tôi nhận được thông báo

"gnu.io" trong quá trình upload

code hoặc khi tôi sử dụng Serial Monitor (trên máy

MAC)?

Error inside Serial.<init>() gnu.io: Unknown Application at gnu.io&

linhkientot ược phát triển bởi một tập thể trách nhiệm và kỷ luật. Với mong muốn cung cấp những sản phẩm tốt về giá, tốt về chất lượng tới khách hàng.