Tôi nghĩ bạn cần cân nhắc các tùy chọn chi phí của mình tại đây.
ARM + linux là một tùy chọn nhưng bạn sẽ phải trả phí hoạt động rất cao cho một tập hợp các tính năng đơn giản (từ mô tả của bạn). Bạn không thể chỉ cần nhìn vào chi phí của chip ARM nhưng cũng phải xem xét RAM bên ngoài mà rất có thể sẽ được yêu cầu cũng như đèn flash để có đủ không gian có sẵn để chạy các ứng dụng hạt nhân +.
LƯU Ý: bạn có thể tránh các yêu cầu bên ngoài với hạt nhân rất nhỏ và các ứng dụng đơn giản kết hợp với một UC với nguồn lực nội bộ lớn.
Tùy chọn thứ hai là một vi điều khiển đơn giản hơn nhiều với hệ điều hành có trọng lượng nhẹ. Điều này sẽ cắt giảm chi phí phần cứng của bạn trên CPU và bạn có thể chạy một cái gì đó như thế này mà không có RAM bên ngoài hoặc flash (phụ thuộc vào RAM ứng dụng và yêu cầu không gian chương trình)
tùy chọn thứ ba: Tôi không thực sự thấy bất cứ điều gì trong yêu cầu của bạn yêu cầu bất kỳ hệ điều hành nào đều được sử dụng. Các hệ thống tệp cơ bản rất đơn giản, ví dụ, thậm chí có cả các trình điều khiển FAT ở đó cho 8 bit của PIC. Giao diện với thẻ SD chỉ yêu cầu một cổng SPI và mạch bên ngoài tối thiểu.
Bit ứng dụng có thể đơn giản hoặc phức tạp. Tôi đã xây dựng hệ thống xung quanh vi điều khiển PIC18 chạy một máy chủ web và cho phép cập nhật chương trình thông qua màn hình tải lên đơn giản, nó chỉ lưu chương trình mới vào EEPROM hoặc flash, khởi động lại vào bộ nạp khởi động và sao chép chương trình mới vào bộ nhớ chương trình nội bộ. Bạn có thể thiết kế một cách để làm điều này mà không cần khởi động lại thông qua một kiểu đa nhiệm hợp tác của kiến trúc. Bất kỳ cách nào bạn đi lập trình bằng văn bản các ứng dụng sẽ cần phải có kiến thức về kiến trúc và truy cập vào các thư viện/trình điều khiển bạn viết. Đặt cược tốt nhất của bạn để đơn giản hóa việc này là cung cấp API đơn giản nhất có thể và cố gắng tự động hóa quy trình xây dựng cho chúng.
Tùy chọn thứ ba sẽ là "rẻ nhất" về phần cứng vì sẽ có rất ít chi phí trong việc xử lý các ứng dụng của bạn cho phép bạn loại bỏ khả năng xử lý và bộ nhớ tối thiểu. Nó có thể sẽ yêu cầu một số kiến trúc lập trình/phần mềm nhiều hơn về phía bạn nhưng sẽ không yêu cầu gần như nghiên cứu bạn cần thực hiện để có được linux và chạy ngoài việc học viết các trình điều khiển thiết bị cần thiết theo mô hình linux.
Như thường lệ, bạn phải bao gồm chi phí phát triển phần mềm trong chi phí xây dựng của thiết bị. Nếu bạn có kế hoạch xây dựng 10.000+ trong số này, bạn có thể giảm chi phí phần cứng tốt hơn và đưa thêm sức mạnh vào việc thiết kế giải pháp phần mềm cho phép phần cứng đó đáp ứng được mục tiêu thiết kế. Nếu tòa nhà của bạn 10 người trong số họ, bạn nên chi thêm 15-20 đô la cho phần cứng nếu nó có thể cắt giảm chi phí phát triển phần mềm của bạn. Ví dụ một ARM với MMU với hỗ trợ hạt nhân Linux đầy đủ và trình điều khiển thiết bị có sẵn.
Tôi cảm thấy rằng bạn chọn điều tồi tệ nhất của cả hai thế giới tại thời điểm này, bạn phải trả thêm tiền để có được UC. Bạn có thể chạy Linux nhưng bằng cách làm như vậy, bạn cũng chọn một phần có khả năng phức tạp nhất linux và chạy trên, đặc biệt là không làm việc với Linux trên nền tảng nhúng trước đây.
Bạn có thể cung cấp thêm thông tin về ứng dụng không? Nếu bạn thực sự chỉ nói chuyện với một vài thiết bị nối tiếp và truyền thông tin xung quanh và ARM + linux có thể vượt quá cả chi phí và độ phức tạp, đặc biệt là nếu bạn chưa quen với chuỗi công cụ và cấu hình của hệ điều hành trên thiết bị đó. – Mark