Memory Protection Unit (MPU) là một mô-đun ngoại vi của nhiều dòng vi xử lý ARM Cortex-M. MPU có nhiệm vụ thiết lập đặc tính cho các tùng nhớ khác nhau. Ở lõi ARM-Cortex M7 thì MPU hỗ trợ cài đặt thuộc tính cho tối đa 8 hoặc 16 phân vùng khác nhau tùy thuộc vào dòng chip. Đối với vi điều khiển STM32F746NGH6U thì tối đa là 8 vùng nhớ và có thể cài đặt thông qua công cụ cấu hình CubeMX. Khi các quy tắc của MPU bị vi phạm, MemManage Exception sẽ được kích hoạt.Continue Reading

Cùng tìm hiểu cache, buffer là gì? Vai trò của cache, buffer? Vấn đề không đồng nhất dữ liệu Cache Coherency và hướng giải quyết trong truyền tải dữ liệu với vi điều khiển STM32 được thiết kế sử dụng vi xử lý Arm Cortex M7? Các nội dung trong bài viết được xem xét dựa trên thực tế trong quá trình thực hiện đề tài của nhóm nghiên cứu. Continue Reading

Bài viết này cung cấp các thông tin về external loader và quá trình thực hiện, kiểm tra giao tiếp với bộ nhớ Flash ngoài qua thao tác đọc bộ nhớ. Để hiểu nội dung này hiệu quả hơn, các bạn nên đọc qua các nội dung đã được chia sẻ trước tại website hoặc fanpage TAPIT: IC nhớ FLASH,SDRAM và mô hình bộ nhớ của vi điều khiển khi sử dụng bộ nhớ ngoài; Sử dụng Linker Script trong khai báo, cấu hình sử dụng bộ nhớ ngoài -VĐK STM32; Mở rộng bộ nhớ STM32 với QSPI Flash MT25QL128: Ghép nối phần cứng, cấu hình ngoại vi; Các chế độ hoạt động của QSPI Flash và thư viện quadspi.Continue Reading

Bộ nhớ QSPI Flash mở rộng có thể được giao tiếp một cách gián tiếp thông qua các HAL API hoặc vi xử lý có thể xem QSPI Flash là một phần của bộ nhớ và truy cập sử dụng trực tiếp được bộ nhớ này tương tự bộ nhớ Flash tích hợp. Bài viết này sẽ cung cấp thông tin về các chế độ hoạt động của QSPI Flash và hướng dẫn hiệu chỉnh thư viện quadspi để có được những hàm khởi tạo chế độ hoạt động phù hợp và các hàm đọc ghi giúp làm việc với vùng nhớ mới này. Continue Reading

Meta description preview:Nằm trong chuỗi bài viết hướng dẫn mở rộng bộ nhớ vi điều khiển STM32. Bài viết này sẽ cung cấp các thông tin tổng quan về giao tiếp QSPI, các thông số của QSPI Flash MT25QL128 cũng như hướng dẫn cấu hình ngoại vi QSPI của vi điều khiển STM32 trên giao diện CubeMX.Continue Reading

Để mở rộng bộ nhớ RAM cho nhu cầu lưu trữ các dữ liệu của vi điều khiển, người thiết kế dự án cần sử dụng IC nhớ SDRAM để ghép nối với vi điều khiển và thực hiện các cấu hình, khai báo cần thiết để sử dụng bộContinue Reading

Linker là một chương trình (giống như compiler, assembler,…) có tác dụng liên kết các file object (file *.o) và static library (*.a) thành một file binary duy nhất và có thể thực thi được. Linker Script là một file chứa các mã giúp cho Linker biết được vùng nào của các file đầu vào (object file, library file) phải được liên kết như thế nào để tạo file binary thực thi. Ví dụ,khi khai báo một vùng nhớ trong linker Script đại diện cho một vùng nhớ trên bộ nhớ; Tại mã chương trình ứng dụng, nếu một biến được khai báo với thuộc tính vùng đó thì Linker sẽ biết được cần phải sắp xếp biến vào vùng nhớ nào trong file đầu ra (.bin/.elf). Continue Reading

Một chương trình nạp cho vi điều khiển cơ bản gồm phần code (chứa trong .text) và data (dữ liệu có thể được khai báo giá trị trước hoặc không). Bên cạnh đó, tổ chức bộ nhớ cho chương trình vi điều khiển còn có các phân vùng gồm heap (chứa các biến được cấp phát vùng nhớ) và stack (chứa các biến lưu trữ trạng thái một số thanh ghi khi vào hàm và các biến cục bộ) phục vụ cho quá trình hoạt động của vi điều khiển. Để mở rộng bộ nhớ, người dùng sẽ cần sử dụng thêm bộ nhớ ngoài cho vi điều khiển STM32. Bài viết này sẽ cung cấp các thông tin giúp mọi người hiểu cơ bản về các IC nhớ Flash, SDRAM và Mô hình bộ nhớ của vi điều khiển khi có sử dụng thêm bộ nhớ ngoài. Continue Reading

Trong quá trình thiết bị hoạt động, nếu dung lượng Stack không đủ để sử dụng, có thể sẽ dẫn đến việc tràn dữ liệu vào không gian bộ nhớ khác. Dẫn đến việc chương trình báo lỗi hay hoạt động bất thường. Ngoài ra, đối với các hệ thống có yêu cầu bảo mật, tình trạng tràn bộ nhớ Stack cũng có thể dẫn đến các lỗ hổng bảo mật.Continue Reading

Internet of Things là một chủ đề rất nổi bật hiện nay có tầm quan trọng đối với kỹ thuật, xã hội và kinh tế. Các sản phẩm tiêu dùng, hàng hóa, phương tiện, thiết bị công nghiệp, thậm chí cả những vật dụng hằng ngày đều đang dần đượcContinue Reading