Tại sao các máy Atmel AVR rất phổ biến?


25

Một câu hỏi gần đây đã hỏi về những lợi thế / bất lợi của các loại MCU. Các AVR dường như thậm chí không đáng để đề cập đến câu trả lời. Tại sao sau đó có vẻ như một người ngoài cuộc rằng các AVR đang trải qua một cơn sốt phổ biến? Đây có phải là do Arduino, hoặc có điều gì khác làm cho AVR trở thành một vi điều khiển đặc biệt tốt không?


1
Người điều hành: Đây phải là một câu hỏi của Wiki cộng đồng.
Jason S

5
Và họ có phổ biến trong ngành công nghiệp như họ trong thế giới sở thích không?
endolith

1
Ngoài tất cả những điểm tốt trong các câu trả lời: "AVR là một trong những họ vi điều khiển đầu tiên sử dụng bộ nhớ flash trên chip để lưu trữ chương trình." (Wikipedia)
Sz.

Câu trả lời:


37

Gia đình AVR có rất nhiều thiết bị tốt, rẻ tiền, thân thiện với sở thích với các thiết bị ngoại vi đẹp, tiêu thụ điện năng thấp và hỗ trợ đa nền tảng tốt.

Vâng, Arduino là một phần lớn của nó. Nhưng tôi nghĩ rằng Arduino đã tồn tại theo cách mà nó đã làm - và với thành công mà nó có - một phần nhờ vào các tính năng đó.

  • Tốt: Họ làm việc tốt. Dễ dàng lập trình trong C cho hầu hết các chức năng cơ bản. Tài liệu đầy đủ.

  • Không tốn kém: Rất nhiều $ 3- $ 5 phần, có sẵn từ các nhà phân phối lớn với số lượng nhỏ.

  • Thân thiện với người chơi: Các bộ phận trong các gói thông qua lỗ - một sự tương phản lớn với nhiều gia đình chip hiện nay. Các thiết bị mới hơn (ví dụ: xmega) thì ít hơn.

  • Các thiết bị ngoại vi đẹp mắt: Bộ tạo dao động tích hợp, bộ nhớ flash, RAM trên bo mạch, cổng nối tiếp, ADC, EEPROM và các tính năng khác giúp bạn có thể chạy một MCU duy nhất trên một protoboard để làm những việc cơ bản, mà không gặp quá nhiều khó khăn.

  • Sự tiêu thụ ít điện năng. Những điểm chính của AVR ngày nay. Suckers có thể chạy bằng pin gần như mãi mãi nếu bạn biết bạn đang làm gì.

  • Hỗ trợ đa nền tảng tốt: AVR được thiết kế với mục đích hỗ trợ C - không phải là một suy nghĩ sau. Hỗ trợ GCC đến sớm và một cộng đồng nguồn mở lớn đã phát triển xung quanh đó. Đây vẫn là một trong những MCU tốt nhất mà bạn có thể phát triển từ bất kỳ nền tảng nào với các công cụ miễn phí. Đây là một vấn đề lớn đối với các gia đình khác, nhiều người trong số họ sử dụng trình biên dịch độc quyền hoặc có hỗ trợ gcc mờ nhạt. Ngay cả PIC cũng khá muộn trong trò chơi với trình biên dịch C miễn phí tốt.

Về lý do tại sao không có nhiều về nó trong các câu trả lời cho câu hỏi trước đó của bạn, tôi nghĩ rằng (1) bạn đang thấy sai lệch mẫu nhỏ và (2) nhiều câu trả lời được dành riêng để thảo luận về các giải pháp không phải là AVR-- bởi vì rất nhiều cuộc thảo luận trên trang web này là AVR / Arduino-centric. Hầu hết các họ vi điều khiển không có trong danh sách của bạn kể từ bài viết này - bao gồm một số gia đình tôi sử dụng thường xuyên và những gia đình khác phổ biến nhất trên thế giới.


2
Tôi đồng ý rằng sự sẵn có của một công cụ C có thể là một yếu tố trong thành công sở thích của AVR. Vài năm trước, khi tôi bắt đầu học hỏi về micros từ nền tảng phần mềm, các tùy chọn là BASIC Stamp, rất phù hợp cho người mới bắt đầu nhưng môi trường phát triển không thực sự thỏa mãn với lập trình viên. Có PIC, mà tôi tin rằng chỉ có một trình biên dịch có sẵn miễn phí tại thời điểm đó, điều đó không sao nhưng tôi không cảm thấy như ASM. Sau đó, có AVR có avr-gcc, tôi có thể lập trình như một lập trình viên, các AVR rất linh hoạt và dễ dàng kết nối với các dự án và các lập trình viên rất rẻ và dễ xây dựng.
Suboptimus

28

Tôi bắt đầu sử dụng PIC nhưng sau đó chuyển sang dùng AVR. Tôi đã chuyển đổi vì có GCC cho các AVR. Điều này mang lại cho tôi một môi trường mà tôi đã quen, miễn phí và để tôi biên dịch mã trên Linux / OSX, không chỉ Windows.

Mặc dù có rất nhiều trình biên dịch C cho PIC ngày nay, một số thậm chí cho Linux - tất cả chúng đều có những đặc điểm riêng mà tôi không muốn tìm hiểu.


9
1 gcc FTW! Chúng tôi đã cố gắng sử dụng một vài trình biên dịch Microchip C, và cách giải thích của họ về C-spec đã khiến cho những lời mời phát ra từ một khối đồng nghiệp. Anh ước mình có gcc.
J. Polfer

1
Bây giờ tôi đã bắt đầu thích trình biên dịch Microchip C18 mà tôi đã sử dụng nó. Học cách sử dụng #pragma và các vectơ ngắt có lẽ là phần khó nhất. Các thư viện C họ cung cấp có thể tiết kiệm rất nhiều thời gian phát triển.
mjh2007

2
Tôi không thích trình biên dịch PIC18 / PIC16, nhưng tôi thích trình biên dịch 24F và dsPIC30F / 33F, dựa trên GCC.
Thomas O

9

Từ những gì tôi đã thấy, các AVR đã trải qua một cơn sốt phổ biến chỉ trong các thị trường thích hợp như các công cụ sở thích và các ứng dụng tạo mẫu nhanh. AVR đã thực hiện một công việc tuyệt vời là nhận hỗ trợ công cụ đa nền tảng trên Linux, MAC và PC.

Mọi người tôi đã nói chuyện đang sử dụng vi điều khiển trong các ứng dụng OEM đều sử dụng PIC, một loại biến thể ARM hoặc MSP430 (chỉ dành cho các ứng dụng năng lượng thấp). Tôi chưa bắt gặp bất cứ ai sử dụng một AVR.


2
Tôi đã đi qua một vài chuyên nghiệp. Tôi nghi ngờ rằng thị trường sở thích nói chung là một giọt trong xô của họ.
Windell Oskay

1
Tôi đồng ý với điều đó. Tôi không tin rằng một bộ vi điều khiển (hoặc có lẽ hầu hết các công ty bán dẫn) sẽ tồn tại lâu nếu thị trường chính của họ có sở thích. Sẽ không có đủ âm lượng. Thị trường sở thích có thể là một sự sụt giảm trong xô Atmel nhưng nó có vẻ giống như một thùng nhỏ;) Có lẽ nên có một câu hỏi tiếp theo - Những công ty và loại ứng dụng OEM nào sử dụng vi điều khiển Atmel?
jluciani

Tôi sử dụng AVR32 trong các sản phẩm chuyên nghiệp. Nó đánh bật các thiết bị ARM cortex-M3 (trong ứng dụng của tôi). Tôi đã xem xét AVR8 nhưng họ chưa bao giờ thực hiện được. MSP430 đánh bại họ một cách hợp lý.
uɐɪ

4
@Ian Những loại sản phẩm?
jluciani

4
@jluciani Modem dữ liệu vệ tinh rất nhỏ, công suất thấp. Các chế độ năng lượng thấp của MSP và AVR32 là tuyệt vời với khả năng lưu trữ dữ liệu RAM. Các chế độ năng lượng thấp của ARM (ngoại trừ các bộ phận vi năng lượng mới) không cho phép hoạt động ở trạng thái năng lượng thấp và thường không giữ nội dung RAM.
uɐɪ

7

PIC của Microchip là số một trong doanh số MCU 8 bit và AVR là thứ năm. Điều đó có thể giải thích tại sao AVR không được nhắc đến thường xuyên như các thiết bị khác.


Trước khi tôi vào vi điều khiển và thiết bị điện tử, tôi đã nghe nói về "PIC" và tôi chưa từng nghe về "AVR" (mặc dù tôi đã nghe nói về Arduino).
sân thượng

'PIC' dường như đã trở thành một thuật ngữ chung cho MCU theo một số cách, như 'Hoover' cho máy hút bụi.
Leon Heller

Và tôi nghĩ rằng "PIC" là một "bốn chữ cái" !!!
uɐɪ

3
(từ chung chung) Không có nó.
Marionit

12
cần dẫn nguồn
joeforker

6

Arduino không liên quan hoặc bạn sẽ hỏi tại sao Arduino lại phổ biến như vậy và tại sao không phải là AVR. AVR đã "phổ biến" trong một thời gian hoàn toàn bất kể Arduino. Arduino là một sản phẩm của những điều tương tự làm cho AVR hấp dẫn. Đó là một sản phẩm khác, một devkit khác. AVR không phổ biến trong các đơn vị được phân phối trong đó 8051 trong thiết bị và PIC trong thẻ thông minh hoặc không có số lượng lớn hoặc trong thị trường điện thoại di động và PC nơi mà AVR thậm chí không cạnh tranh.

Thay vì phổ biến , bạn có thể nói rằng AVR là hấp dẫn . Và nó là. Những điểm chính đã xuất hiện: Nó có sẵn và không tốn kém, đòi hỏi rất ít linh kiện hoặc tính năng bảng (đồng hồ, xe buýt ...), dễ dàng là ISP và trên hết, có hỗ trợ phần mềm tốt. Bạn nhận được một trình biên dịch thực, phần mềm lập trình và thiết kế phần cứng, tài liệu, mẫu, thư viện, tất cả đều miễn phí như trong tự do. Bạn không phải chiến đấu với các nhà cung cấp và tự hỏi liệu kích thước mã của bạn có bị giới hạn hay nghe rằng trình biên dịch của bạn đã bị ngừng hoặc sẽ không chạy trên bất kỳ hệ điều hành nào trong thập kỷ này. Nếu không phải trước đó, thì một khi bạn đã bị cắn đủ lần, bạn sẽ đánh giá cao các công cụ và tài liệu mở trong đó không ai ra lệnh những gì bạn có thể và không thể làm hoặc biết.


-5

Có hai nhà sản xuất chính của μC và tình huống khó xử vĩnh cửu Pic-Atmel. Tôi không thể giới thiệu cho bất cứ ai lựa chọn, nhưng tôi có thể giải thích lý do khiến tôi đi đến Atmel. Một số trong những lý do đó thậm chí còn chưa được biết đến với chính tôi - có thể tôi thích âm thanh của nó hơn - nhưng tôi cảm thấy bị thu hút hơn bởi gia đình này bởi vì nó dường như gần gũi hơn với bộ vi xử lý Z80 cũ và tôi đã sử dụng cho một số dự án đẹp khi tôi trẻ hơn.

Tôi có thể nói gì, nếu bạn quyết định đi theo một hướng, chỉ cần bám lấy nó và vẫn trung thành với gia đình đó, theo nguyên tắc rằng tốt hơn là nên biết một điều hoàn toàn hơn hai điều giữa chừng.


4
Bạn đã bao giờ nghe nói về ST hoặc NXP chưa? Làm thế nào về Texas Cụ? Giải phóng? Ngoài ra, PIC là một họ vi điều khiển được sản xuất bởi một công ty tên là Microchip. Pic không phải là nhà sản xuất.
Joe Baker
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.