Ban phát triển nào có hỗ trợ RTOS tốt?


7

Tôi đang tìm kiếm một ban phát triển chi phí tương đối thấp (<$ 50 sẽ là lý tưởng) với sự hỗ trợ thực sự cho RTOS. Sẽ không có vấn đề gì nếu RTOS được nhà sản xuất hỗ trợ hoặc một dự án riêng biệt, nhưng tôi muốn một cái gì đó được hỗ trợ vững chắc (nghĩa là thực sự hoạt động cho nhiều người). Tôi đã dành thời gian để sửa các cổng RTOS bị hỏng và tôi không phải lo lắng về điều đó.

Yêu cầu khác của tôi là ban phát triển phải có hỗ trợ cho môi trường phát triển Linux.

Chúng tôi đang tìm kiếm thứ gì đó có thông số kỹ thuật gần như tương đương với Atmega 2560. (Và trên thực tế, Arduino Mega 2560 chạy BeRTOS chắc chắn là một lựa chọn.)

Để cung cấp thêm một chút nền tảng cho câu hỏi, năm ngoái chúng tôi đã xây dựng một quad quad từ đầu (tức là tất cả phần cứng, tất cả mã, v.v. Không có gì mượn từ Arducopter hoặc bất cứ thứ gì tương tự). Một ngân sách nhỏ (400 đô la) đã khiến chúng tôi mắc kẹt với Arduino Pro (một bo mạch dựa trên Atmega 328). Vào thời điểm chúng tôi có vật thể bay, chúng tôi đã vượt qua giới hạn bộ nhớ (do kích thước mã) và làm mọi thứ có thể để tối ưu hóa để các vòng lặp PID của chúng tôi chạy đủ nhanh.

Mục tiêu mới là làm lại hệ thống điều khiển dựa trên vi mô và RTOS ít hạn chế hơn.

Vì vậy, để tóm tắt, câu hỏi là, bảng phát triển nào phù hợp với các tiêu chí này:

  • Xấp xỉ <$ 50
  • Hỗ trợ RTOS
  • Tương thích với môi trường phát triển Linux

Cảm ơn!


Bạn đã thấy cái này chưa? freertos.org
Chris Laplante

Yup và tôi đã thực hiện một số công việc với BeRTOS (một RTOS mã nguồn mở rất giống nhau). Tôi đã hy vọng tôi có thể tìm ra những gì mọi người thích / đã và đang sử dụng.
Tin học

2
Có vẻ như bạn có thể muốn quyết định RTOS nào được quan tâm và xem xét những gì họ hỗ trợ. Ngoài ra, bạn có thể muốn đặt giới hạn khối lượng trên bộ điều khiển.
Chris Stratton

1
"Tương thích với môi trường phát triển Linux" có nghĩa gì hơn "Có trình biên dịch chéo chạy trên Linux" không?
Vô điều kiệnReinstateMonica

1
Trên thực tế có, nó có nghĩa là "có một trình biên dịch chéo và một công cụ nhấp nháy chạy trên linux"
Chris Stratton

Câu trả lời:


2

Tôi đã gặt hái được nhiều thành công với FreeRTOS , kết hợp điều này với một nhà phát triển ARM Cortex như một từ Olimex (có sẵn từ Farnell) - xem Trang này để biết danh sách các thiết bị được hỗ trợ. Một Cortex M3 sẽ chạy ở 75 MHz và cung cấp hơn 80MIPS. Mã ARM không hiệu quả và một số thiết bị ARM Cortex bao gồm các hàm toán học điểm cố định.

Nếu bạn muốn càu nhàu hơn nữa, hãy thử Beagleboard hoặc RasberryPI.

Cũng như FreeRTOS, phần sau sẽ chạy Linux với Linux được biên dịch với tùy chọn cấu hình config_preeem_rt.


1

Tôi hiện đang sử dụng loạt các bảng LPCXpresso (nỗ lực tham gia từ NXP, Nghệ sĩ nhúng và Mã đỏ). Hỗ trợ tuyệt vời từ cả cộng đồng ( http://lpcware.com/ ), NXP, nhà sản xuất bảng ( http://embeddedartists.com/ ), và tất nhiên là Richard Barry và FreeRTOS.

Với 20 EUR bạn có được bảng MCU (khoảng cách 100 triệu để phát triển nhanh) và bạn có thể sử dụng bảng cơ sở của bên thứ ba hoặc bên thứ ba của họ để phát triển (bảng cơ bản là bó kết nối và thiết bị ngoại vi đẹp). Bảng cơ sở đắt hơn, nhưng có giá trị. Chúng có thể kết hợp với mbed (www.mbed.org) để tạo mẫu nhanh THỰC SỰ, nhưng tôi thích ở với một số bảng MCU 'bình thường' ít tốn kém hơn: LPCXpresso 11C24 cho Cortex M0 và LPCXpresso 1343 hoặc 1769 cho M3.

Môi trường phát triển miễn phí lên tới 128 K (thực tế chỉ dừng gỡ lỗi ở đó), dựa trên Eclipse, cũng hoạt động trong Linux ...

FreeRTOS cũng miễn phí cho việc triển khai thương mại nếu được sử dụng với chip NXP (sẽ rất hữu ích nếu bạn sử dụng chúng như tôi vẫn làm).

Cuối cùng, hãy kiểm tra cổng được tạo chính xác cho bảng tôi có, nó chạy ra khỏi hộp và chuyển sang một biến thể LPC khác ít nhiều chỉ đơn giản là đối phó với tệp đồng biến FreeRTOS và điều chỉnh kích thước ngăn xếp. Vẻ đẹp này cũng có một cái gì đó giống như một hệ sinh thái được xây dựng trên FreeRTOS, loại bỏ nó và tôi có thể xác nhận nó chỉ hoạt động:

http://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_IO/Demo_Appluggest/LPCXpresso_LPC1769/NXP_LPC1769_Demo_Descrip.shtml


1

STM32F0Discovery sẽ phù hợp nhất.

Hãy xem ngăn xếp công nghệ mới (mùa hè 2014): https://github.com/dobromyslov/stm32f0-cmsis-cube-hal-freertos-template

Các tính năng chính là:

Ngoài ra còn có một công cụ đồ họa tuyệt vời STM32CubeMX có sẵn cho các cấu hình nhanh ST MCU khác nhau: http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF259242?icmp=stm32cubemx_pron_prc

Và một plugin tương tự cho Eclipse từ STM: http://www.st.com/web/en/catalog/tools/PF257931

Mọi người nói rằng plugin hoạt động một phần trong Linux trong Wine: https://my.st.com/public/STe2ecomities/mcu/Lists/STM32Java/flat.aspx?RootFolder=%2Fpublic%2FSTe2ecomities%2Fmcu%2FLists%2FSTM 20as% 20Eclipse% 20plugin% 20on% 20Linux% 2064% 20machine & FolderCTID = 0x01200200770978C69A1141439FE559EB459D758000F9A0E3A95BA69146A17C2E80

Nhưng tôi thích phiên bản STM32CubeMX đầy đủ và chạy nó trong Windows trên VirtualBox.

Tôi thích hệ sinh thái tiện lợi này và rất khuyến khích sử dụng nó trong bất kỳ dự án hiện đại mới nào.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.