Nhiệm vụ của chương trình Bootloader là kiểm tra các điều kiện để lựa chọn thực thi một trong các chương trình: FOTA, Factory Firmware hoặc Current Firmware mỗi khi CPU reset. Vị trí của chương trình Bootloader thường được bắt đầu tại địa chỉ đầu tiên của bộ nhớ Flash, đây là địa chỉ mặc định sẽ được CPU thực thi sau khi reset. Với dòng vi điều khiển STM32 thì vị trí bắt đầu của bộ nhớ Flash là 0x0800 0000.Continue Reading

Có bao giờ bạn thắc mắc làm thế nào mà có thể tự động cập nhật chương trình cho một thiết bị nhúng, thiết bị IoT mà không cần tốn công cắm dây để nạp chương trình như thông thường chưa? Bài viết này trong chuỗi hướng dẫn cập nhật chương trình từ xa trên vi điều khiển STM32 sẽ giới thiệu tổng quan về tính năng Firmware Over The Air (hay còn gọi là FOTA), đồng thời sẽ hướng dẫn cách tổ chức lưu trữ chương trình trên vi điều khiển STM32F103RCT6 lõi ARM Cortex M3 để có thể áp dụng FOTA. Nếu bạn sử dụng một vi điều khiển lõi ARM khác thì cũng có thể tham khảo được chuỗi bài viết này để áp dụng FOTA. Continue Reading

Bài viết này giúp các bạn nắm được những nội dung cơ bản về chức năng, tổ chức và bản đồ không gian nhớ (Memory Map) của Vi xử lý ARM Cortex – M. Một vi xử lý được sử dụng phổ biến nhất hiện nay trong hệ thống nhúng. Continue Reading

Trong hệ thống nhúng, hiểu được các khái niệm Processor Core (lõi vi xử lý), Processor (CPU/Vi xử lý) và Microcontroller (MCU/Vi điều khiển) thật sự rất quan trọng, những từ này được sử dụng rất nhiều và sẽ dẫn đến không ít nhầm lẫn nếu chúng ta sử dụng không đúng.Continue Reading

Bộ giao tiếp USART được dùng để trao đổi dữ liệu giữa MCU với các thiết bị bên ngoài dựa trên định dạng dữ liệu nối tiếp bất đồng bộ NRZ tiêu chuẩn công nghiệp. Bộ USART có hai chế độ truyền là truyền dữ liệu đồng bộ (Synchronous) và truyền dữ liệu không đồng bộ (Asynchronous)Continue Reading