tailieunhanh - Triển khai hệ điều hành nhúng thời gian thực Freertos trên vi điều khiển ARM AT91SAM7S256

Bài báo này sẽ trình bày các bước xây dựng một ứng dụng với hệ điều hành FreeRTOS và triển khai nó trên chíp vi điều khiển ARM AT91SAM7S256 của hãng Atmel-một chíp thuộc họ vi điều khiển ARM7 được sử dụng rộng rãi trong các bo mạch dùng chủ yếu cho việc thực hành, thí nghiệm với ARM7 trong các trường đại học hoặc các trung tâm nghiên cứu về hệ nhúng. Chương trình ứng dụng là một chương trình đa tiến trình hoạt động song song để có thể tận dụng được khả năng xử lý của CPU. | Ngô Thị Vinh Tạp chí KHOA HỌC & CÔNG NGHỆ 113(13): 135 - 140 TRIỂN KHAI HỆ ĐIỀU HÀNH NHÚNG THỜI GIAN THỰC FreeRTOS TRÊN VI ĐIỀU KHIỂN ARM AT91SAM7S256 Ngô Thị Vinh* Trường ĐH Công nghệ thông tin và Truyền thông – ĐH Thái Nguyên TÓM TẮT FreeRTOS là một hệ điều hành nhúng thời gian thực có nhiều ưu điểm nổi bật để phù hợp cho các hệ thống thời gian thực nhỏ với các kiến trúc khác nhau như ARM, AVR, APSx, AFSx, LPC2000, STM32, PIC18, .Với các nền phần cứng khác nhau người lập trình cần phải cung cấp các tham số đầu vào phù hợp với từng dòng vi điều khiển để ứng dụng hoạt động đúng theo cấu hình của mạch thiết kế. Bài báo này sẽ trình bày các bước xây dựng một ứng dụng với hệ điều hành FreeRTOS và triển khai nó trên chíp vi điều khiển ARM AT91SAM7S256 của hãng Atmel-một chíp thuộc họ vi điều khiển ARM7 được sử dụng rộng rãi trong các bo mạch dùng chủ yếu cho việc thực hành, thí nghiệm với ARM7 trong các trường đại học hoặc các trung tâm nghiên cứu về hệ nhúng. Chương trình ứng dụng là một chương trình đa tiến trình hoạt động song song để có thể tận dụng được khả năng xử lý của CPU. Từ khóa: FreeRTOS, ARM, hệ điều hành nhúng, AT91SAM7S256, quản lý tài nguyên, tiến trình. GIỚI THIỆU* FreeRTOS là một hệ điều hành nhúng thời gian thực mã nguồn mở[1] ra đời từ năm 2003, đến nay nó được phát triển rất mạnh mẽ và nhận được nhiều sự ủng hộ của các lập trình cho các hệ nhúng. FreeRTOS có tính khả chuyển, có thể sử dụng miễn phí hoặc dùng cho mục đích thương mại[1]. Nó có nhiều ưu điểm nổi bật so với các hệ điều hành nhúng thời gian thực khác như có kích thức rất nhỏ gọn nên rất phù hợp với các hệ nhúng thời gian thực nhỏ; được viết bằng ngôn ngữ C nên có độ phù hợp cao với các nền phần cứng khác nhau. Ngoài ra, FreeRTOS còn hỗ trợ các cơ chế như cho phép tạo cả task và coroutie với số lượng task là không giới hạn phụ thuộc vào tài nguyên của phần cứng của chip[1]; hỗ trợ cơ chế truyền thông đồng bộ giữa các task hoặc giữa task và ngắt bằng cách sử dụng hàng đợi hoặc .