Skip to main content

Board LGT8F328P LQFP32 MiniEVB giao tiếp led TM1637 dùng Arduino và cái kết

LGT8F328P được kỳ vọng thay thế 1-1 cho Atmega328P. Bài viết này hướng dẫn cách sử dụng LGT8F328P để giao tiếp với TM1637.

Trước tiên, truy cập vào link https://github.com/LGTMCU/Larduino_HSP và tải về thư viện của LGT cho Arduino như hình dưới

Thư viện cho LGT8F328P

Sau đó, giải nén file vừa tải về, copy toàn bộ thư mục LGT bên trong thư mục hardware vào thư mục hardware của Arduino IDE như hình dưới

Copy thư mục LGT vào Arduino

Cuối cùng tạo một sketch mới và viết code y hệt như ở bài https://minhcnguyen.blogspot.com/2021/02/arduino-dieu-khien-led-7-doan-tm1637.html

Kết nối chân như dưới đây, bên trái là TM1637, bên phải là board LGT8F328P
CLK <===> D2
DIO <===> D3
GND <===> GND
VCC <===> 5V

Để nạp code, cần phải chọn đúng board "LGT8F328P-LQFP32 MiniEVB" và chọn đúng cổng COM sau đó nhấn nút nạp code như bình thường

Chọn board LGT để nạp code

Kết quả như video dưới đây

Câu chuyện:

Mới đầu mình kết nối chân VCC của TM1367 vào chân 3.3V của LGT, hiện tượng là board chạy bình thường trong khoảng gần 10s, TM1637 vẫn lên bình thường, nhưng sau đó treo. Khi vừa sờ vào chíp LGT thì nóng phỏng tay, đúng nghĩa như sờ vào mỏ hàn luôn. Cái kết là chip đã ra đi, con đi ốt s4 cháy phù lên. Board này schematic chưa kiếm ra nên chưa kết luận được là do dùng 3.3V thì bị hay là do chip đến lúc bị hư. (Nếu là Arduino UNO thì thấy tài liệu ghi là đường 3.3V chỉ cho dòng tối đa 50mA).

Mình đã lấy board khác nạp code và kết nối TM1637 vào 5V (vì TM1637 có thể chạy được ở cả 3.3V lẫn 5V) thì thấy chạy ngon lành, sờ vào chíp mát mẻ.

Nếu bạn nào bị trường hợp này hoặc có giải thích nào thì để lại comment nha. Mình thấy lâu lâu có một số bạn xài board arduino nói rằng tự nhiên thấy chíp khá nóng thì để ý lại xem có xài đường 3.3V trên chíp không nhé.

Còn đây là hình ảnh của cái board đã die và ngón tay bị phỏng nè



Cập nhật: 07/Feb/2021 19:34

Mình đã thử lại với 1 board mới đang hoạt động và xác nhận là nếu dùng chân 3.3V quá dòng thì chip LGT sẽ rất nóng, có thể gây cháy nổ. Nhưng nguy hiểm nhất là nó không cháy nổ ngay mà nó phát nhiệt nóng như mỏ hàn trong một thời gian dài nguy cơ làm cháy những thứ xung quanh. Lo ngại là ngoài việc quá dòng như vậy thì còn có cơ chế nào khác dẫn đến kích hoạt chế độ nung nóng này không? Kết luận chíp này không an toàn tốt nhất nên tránh xa.

Comments

Popular posts from this blog

Arduino Nano nạp code không được

Tình trạng Khi bạn nạp code cho arduino nano, IDE sẽ hiển thị là Uploading... rất lâu sau đó báo lỗi: avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x5c avrdude: stk500_recv(): programmer is not responding avrdude: s...

STM32F103C8T6 lỗi không nạp được code

Tình trạng Sau khi nạp code lần đầu, STM32 ST-Link Utility sẽ không kết nối được nữa và hiện lên thông báo lỗi: Cannot connect to target! Please select "Connect Under Reset" mode from Target -> Settings menu and try again. If you are trying to connect to low frequency application, please select a lower SWD Frequency mode from Target -> Settings menu. Tình trạng này có thể xảy ra với tất cả các dòng F1 và cách khắc phục cũng tương tự nhau. Khắc phục 1. Trong STM32CubeMX cần phải chọn lại trong SYS > Debug là Serial Wire sau đó generate lại code. 2. Board arm kết nối ST-Link Utility không được, lúc đó hãy nhấn giữ nút Reset trên board rồi nhấn nút Connect trên ST-Link Utility, chờ khoảng 3-5 giây sau đó thả nút Reset. Có thể bạn sẽ phải làm vài lần như vậy mới có được 1 lần kết nối thành công. 3. Sau khi kết nối thành công, nạp code mới có config Debug là Serial Wire ở trên. Khi đó board sẽ kết nối bình thường cho các lần tiếp theo Mạch nạp ST-LINK có thể m...

Dùng mạch nạp USBasp để nạp code cho Arduino

Arduino có thể dễ dàng nạp code và chạy chương trình chỉ với thao tác đơn giản cắm board mạch vào máy tính chọn cổng COM và nhấn nút Upload. Để làm được như vậy, bên trong chip vi xử lý được nạp sẵn một đoạn mã lệnh gọi là boot loader. Boot loader luôn luôn được chạy lên đầu tiên, sau đó mới chuyển quyền điều khiển lại cho phần mã của người dùng nạp vào.   Như vậy để các Chip Arduino có thể làm việc được với Arduino IDE thông qua giao tiếp USB-COM thì trong vi điều khiển phải được nạp sẵn boot loader. Các board mạch Arduino bán sẵn trên thị trường như Arduino Uno, Arduino Nano, Arduino Mega 2560,... đều được nạp sẵn boot loader. Như vậy ưu điểm của boot loader là để người dùng dễ dàng tiếp cận, thử nghiệm, và làm ra được sản phẩm nhanh chóng, dễ dàng. Nhưng nhược điểm là boot loader luôn luôn cần một khoảng thời gian từ 1.6s đến 2s để khởi động. Nếu bạn không muốn mất 1.6 - 2s đầu tiên mà muốn chương trình chạy gần như ngay lập tức khi cấp nguồn hoặc reset thì dùng mạch nạp USBasp ...