Càng rẻ, càng nhỏ và càng ít thành phần bên ngoài thì càng tốt.
AVR sẽ được ưu tiên, nhưng bất cứ điều gì với SDK miễn phí đều tốt.
Càng rẻ, càng nhỏ và càng ít thành phần bên ngoài thì càng tốt.
AVR sẽ được ưu tiên, nhưng bất cứ điều gì với SDK miễn phí đều tốt.
Câu trả lời:
Cách tốt nhất để tìm những bộ vi điều khiển đó là tại một địa điểm như digikey. Dưới đây là danh sách tất cả các vi điều khiển của họ.
Sử dụng các bộ lọc để chọn Atmel làm nhà sản xuất.
Sau đó lọc để rời khỏi họ AVR của họ trong danh sách.
Và cuối cùng, lọc theo kết nối. Chọn tất cả các mục trong danh sách có "USB" hoặc "USB OTG". Nhấn giữ CTRL
để chọn nhiều mục trong danh sách.
Ngoài đỉnh đầu của tôi, một trong những đơn giản nhất sẽ là ATmega88U2. Các U2 sẽ cho bạn biết đó là một ATmega88 thường xuyên với một bộ điều khiển USB tích hợp.
Dự án V-USB cung cấp phần mềm cần thiết cho thiết bị USB tốc độ thấp bitbang và có sẵn theo GPLv2 hoặc giấy phép thương mại. Đối với phần cứng bên ngoài, tinh thể 12 MHz được khuyến nghị, nhưng nó cũng hoạt động với bộ tạo dao động RC. Nó cũng cần một bộ chia điện áp để thiết lập tốc độ chậm và tùy thuộc vào điện áp hoạt động của vi điều khiển, nó có thể cần một vài điốt zener để giới hạn điện áp ở D + và D-.
Với phần mềm, USB hoạt động trên các bộ vi điều khiển nhỏ như ATtiny45 chẳng hạn. Hai bộ vi điều khiển phổ biến khác để sử dụng với thư viện là ATtiny2313 và ATmega8.
Một thư viện khác dựa trên V-USB là USBtiny . Đó là GLP2 + và sẽ dễ làm việc hơn một chút. Cả hai có thể được thực hiện để làm việc với trình điều khiển libusb trên GNU / Linux và Windows.
Nếu bạn sẵn sàng đi theo con đường PIC: PIC16F1455 chỉ có 14 chân và có thể làm USB mà không cần pha lê. Nó có bộ tạo dao động 48 MHz được hiệu chỉnh bên trong và phục hồi xung nhịp từ các dòng USB để đảm bảo nó vẫn đồng bộ.
Các PIC18F14K50 là một chip đơn giản thoải mái với USB được xây dựng trong, IDE miễn phí và trình biên dịch, ví dụ tốt và chi phí thấp. Tôi thành công dạy một lớp trung học để xây dựng và lập trình nó sử dụng bộ công cụ tuyệt vời này https://www.tindie.com/airs/TAUTIC/pic18f14k50-usb-development-kit/ nó là một thiết kế nguồn mở để bạn có thể nhận được các thành phần và xây dựng cho ít. Nhưng bạn sẽ cần cài đặt bộ tải khởi động để lập trình USB được cài đặt trên PIC, vì vậy bạn sẽ cần một lập trình viên nếu bạn không mua chip được lập trình sẵn, như sản phẩm của Tanom.com.
Một lựa chọn khác cho bạn là EZ430-F2013 hoặc tương tự. Đó không phải là AVR, mà là TI MSP430. Nó nhỏ và rẻ, chỉ cần thiết bị có kích thước khóa USB. Có một vài lựa chọn để lập trình, và cho đến nay, tốt nhất là CodeComposer Studio v5 của TI . Nó có sẵn cho Windows và Linux và có hai cách sử dụng miễn phí, bao gồm tùy chọn giới hạn kích thước mã (16 kB) dành riêng cho MSP430. Và công cụ Grace của CCS đã khiến việc phát triển cho MSP trở thành niềm vui khi tôi sử dụng nó.
Hãy xem dự án LUFA , đây là một chồng phần mềm hỗ trợ nhiều bộ vi điều khiển AVR (cả cấp thấp và cấp cao ), với các khả năng khác nhau tùy thuộc vào từng loại. Một điểm cộng là nó sử dụng giấy phép MIT thân thiện với thương mại. Bảng tương thích là một danh sách tốt các thiết bị có hỗ trợ USB trong họ AVR.
Atmel SAM D dựa trên ARM Cortex-M0 + tương đối mới cũng bao gồm máy chủ nhúng USB (họ D21) và khả năng của thiết bị USB (gia đình D11 và D21), với mức giá rất cạnh tranh.
Rất nhiều thông tin có sẵn tại trang web của họ:
http://www.atmel.com/products/microcontrollers/arm/sam-d.aspx
Từ chối trách nhiệm đầy đủ: Tôi không liên kết với Atmel bằng bất kỳ phương tiện nào.
Atmel XMEGA dựa trên AVR và nếu bạn có thể vượt qua thực tế là chúng chỉ có sẵn trên bề mặt gắn kết, chúng là thành phần không bên ngoài cho USB và chạy lên đến 32 MHz.
At90usb162 là tốt. Nó có một usb phần cứng trong đó và chạy ở mức 16Mhz (tinh thể ngoài) và nó có giá khoảng 4 $
Ngày nay, bộ xử lý 8 bit có ít lợi ích hơn 32 bit, so sánh hiệu năng và giá cả PIC / AVR và NXP / STM (ARM Cortex). Trong dự án cuối cùng của tôi, tôi đã sử dụng LPC1343 (NXP) với ứng dụng USB - Virtual COM. Hầu hết các nhà sản xuất hiện đang cung cấp IDE miễn phí và mã ví dụ.