ThanhNT Blog's

Computer, Networking, Embedded Systems, PCB Design

[Linux] Truyền file qua giao tiếp Serial

ZMODEM - Giao thức truyền file qua kết nối Serial Trên một board Embedded Linux (đã bị bỏ cổng Ethernet), để có thể truyền file vào board thì người ta có thể truyền file qua giao tiếp Serial (Cổng giao tiếp này có mặt trên hầu như tất cả các sản phẩm nhúng - mục đích để giao tiếp hoặc debug hệ thống). Bạn cũng có thể custom phương pháp này để sử dụng cho các bo mạch nhúng khác.

[Review] Code C theo chuẩn - Embedded C Coding Standard (Michael Barr)

Embedded C Coding Standard Bài viết này sẽ note ra vài điều mà tôi có được sau khi đọc cuốn ebook như trên tiêu đề - Code C nhúng theo chuẩn (Embedded C Coding Standard - Michael Barr). Code theo chuẩn Tại sao phải code theo chuẩn? Từ trước đến giờ code vẫn chạy ngon, có vấn đề gì đâu? Trong quá trình học lập trình cơ bản và giờ là lập trình nhúng, khi tham khảo và phát triển mã nguồn thì tôi thường hay gặp chung 1 vấn đề, đó là các mã nguồn được viết không theo 1 chuẩn nào cả.

[Hệ thống] Tràn bộ nhớ Stack

Bộ nhớ Stack Stack là gì Stack là vùng nhớ dành cho các biến local, địa chỉ của bộ đếm chương trình. Trong ứng dụng nhúng với tài nguyên giới hạn, phần mềm nếu thiết kế không tốt có thể dẫn đến tràn stack , từ đó gây ra những lỗi với hiện tượng khó xác đinh lúc runtime. Để tránh việc này, các nhà lập trình được khuyến cáo không khai báo một mảng local quá lớn và không dùng đệ quy trong các ứng dụng nhúng.

RTOS - Lắp thêm cánh cho vi điều khiển

Vi điều khiển (MCU) chính là trung tâm của hệ thống nhúng và sức mạnh của hệ thống này sẽ được tiêm thêm liều “doping” với một hệ điều hành thời gian thực RTOS (Real Time Operating System). Vậy RTOS là gì? RTOS là một hệ điều hành đa nhiệm trong đó các tác vụ được thực thi một cách song song đối với người dùng. Ở đây ta không đi sâu vào kiến trúc bên trong của Kernel, cách thức chuyển tác vụ,… mà tập trung vào giới thiệu cách thức triển khai một RTOS trên một platform của vi điều khiển.

Một số khái niệm khi làm việc với RTOS

Chú ý khi làm việc với RTOS Mutex Mutex là gì Trên một hệ điều hành thường có nhiều chương trình (hay tác vụ - task) chạy đồng thời. Mutex giúp ngăn chặn việc hai task cùng truy cập vào 1 tài nguyên (memory, register gọi chung là critical section) của hệ thống trong cùng một thời điểm. Ví dụ, ta có 1 cái FIFO, task 1 đang read FIFO, task 2 lại write FIFO, nếu task 1 chưa lấy xong phần dữ liệu cần thiết mà task 2 lại write đè vào đúng vị trí task 1 đang read, nó sẽ làm sai lệch dữ liệu mà task 1 đang đọc.

5 Lý Do Bạn Nên Chọn Embedded Software

Có nên chọn Embedded Software Bài viết được blog lại từ itviecblog Dưới đây là bài phỏng vấn Timo Krokowski, Tổng Giám Đốc của HELLA Việt Nam, ông đã chia sẻ 5 lý do vì sao developer Việt Nam nên học Embedded Software. HELLA là công ty hàng đầu trong lĩnh vực embedded software của ngành công nghiệp tự động của Đức. Embedded software là gì? Embedded software là software được viết cho một mục đích cụ thể dựa vào một phần của hardware.

Hệ thống nhúng là gì?

Hệ thống nhúng 1. Khái niệm về hệ thống nhúng Hệ thống nhúng là một hệ thống được tích hợp cả phần cứng và phần mềm phục vụ cho các bài toán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hóa điều khiển, quan trắc và truyền thông. Hệ thống này đòi hỏi độ ổn định và tự động hóa cao. Do sử dụng cho các nhiệm vụ chuyên biệt và được sản xuất với số lượng lớn nên chúng được thiết kế một cách tối ưu nhằm giảm thiểu kích thước cũng như giá thành sản xuất.