ThanhNT Blog's

Computer, Networking, Embedded Systems, PCB Design

[DIY] Mạch nạp JLink ARM-OB v7

Giới thiệu qua về mạch nạp Jlink Nhắc tới mạch nạp Jlink thì chắc hầu hết anh em làm với vi điều khiển đều biết công dụng của nó là dùng để nạp chương trình cho vi điều khiển. Mạch nạp JLink được phát triển bởi hãng Segger, có rất nhiều phiên bản từ Lite, Education đến Professional. Jlink hỗ trợ rất nhiều các loại chip ARM, 8051, PIC… Và có một mạch gọi là Jlink ARM-OB được Segger điều chỉnh gọn nhẹ sử dụng nạp chương trình cho các MCU lõi Cortex M3, M4.

Fix lỗi ST-Link - No target connected với STM32CubeF1 v1.4

Lỗi No target connected ST-Link trên KeilC Lỗi “No target connected” là khi máy tính vẫn nhận mạch nạp ST-Link nhưng lại không nhận ra chip. Bài viết này cụ thể là đề cập đến dòng chip F1, có thể tham khảo với dòng chip khác với lỗi tương tự. Phần cứng sử dụng MCU STM32F103RCT6 Hỗ trợ nạp qua Bootloader, SWD (ST-Link v2) Tình trạng lỗi Chương trình biên dịch KeilC v5.

Lập trình STM32 - Cài đặt IDE và chương trình đầu tiên BlinkLed

Chương trình đầu tiên với STM32 Phần mềm Để bắt đầu vào làm việc với dòng STM32, ngoài công cụ hỗ trợ cấu hình là STM32CubeMX thì còn có phần mềm lập trình và biên dịch nữa. Các phần mềm hỗ trợ viết code và biên dịch nổi tiếng như Keil C, IAR, Cocos Code IDE… (Các bạn có thể dễ dàng tìm và tải về các phiên bản cũ mới của các phần mềm này trên Internet - Hiện tôi dùng Keil C ver 5).

Lập trình STM32 - Tạo Project mới với STM32CubeMX

Tạo Project với STM32CubeMX Như bài trước đã giới thiệu, STM32CubeMX là công cụ giúp khởi tạo phần cứng, ngoại vi, xung nhịp… cho vi điều khiển (MCU) STM32 một cách nhanh chóng. Sử dụng phần mềm này đã giúp mình có tốc độ tiếp cận với dòng vi điều khiển này phải nói là rất nhanh. Hầu như mình không cần phải nhớ bất cứ thanh ghi hay thiết lập từng bit, các API được hỗ trợ sẵn từ nhà sản xuất thực sự dễ dùng, và dễ tiếp cận.

STM32CubeMX - Công cụ hỗ trợ cấu hình MCU STM32

STM32CubeMX Khi bước đầu chuyển sang làm quen với dòng vi điều khiển ARM từ các dòng vi điều khiển truyền thống như AVR, PIC… chúng ta sẽ dễ cảm thấy bị choáng ngợp vì sự phức tạp và khổng lồ của nó. Nếu học ARM bằng tư duy của AVR hay PIC, nhớ từng register, từng công dụng của từng bit chắc chúng ta sẽ bỏ cuộc sớm. Thay vì phải nhớ từng bit buồn tẻ nhàm chán đó, các nhà sản xuất đã phát triển các thư viện/driver chuẩn cho các con chip của họ.