Tập hợp tối thiểu của các bộ phận cho một tuần hoàn với vi điều khiển AVR này là gì?


10

Arduino Uno của tôi có một vi điều khiển ATMEGA328P-PU, và một loạt các thứ khác trên bảng. Tôi muốn lập trình chip mà không cần phần mềm Arduino và chỉ tối thiểu các thành phần khác. Cuối cùng tôi muốn tạo ra mọi thứ mà không phải trả tiền cho Arduino, và tôi muốn tìm hiểu về các phần khác trên bảng và thêm chúng trở lại khi cần thiết. Tôi cảm thấy thoải mái với C và gcc, vì vậy tôi có thể tìm ra phần mềm. Nhưng, nếu có bất cứ điều gì, ngoài hai sản phẩm dưới đây, tôi có cần phải có trong bảng mạch với vi điều khiển không?

Vi điều khiển lập trình Atmel


Bạn có thể tự trả lời câu hỏi này bằng cách tìm và đọc bảng dữ liệu ATMEGA328P-PU.
Phil Frost

7
Có lẽ khi tôi biết nhiều hơn. Bảng dữ liệu gồm 550 trang, tôi là người mới bắt đầu và đọc lướt không tiết lộ gì với tôi. Tôi tự học rất nhiều, nhưng tôi đánh giá cao các trang web như thế này nơi tôi có thể nhận được một số câu trả lời từ con người bây giờ và sau đó. :)
Rob N

6
@PhilFrost Đó là lời khuyên tồi tệ nhất bạn có thể đưa ra cho người mới bắt đầu.
capcom

1
@PhilFrost Mặc dù tôi đồng ý với bạn rằng tìm kiếm thông tin có lẽ là kỹ năng thiết yếu nhất mà người mới bắt đầu có thể có, đặc biệt là với rất nhiều thông tin có sẵn nhờ internet, lần đầu tiên mở một bảng dữ liệu có thể hơi đáng sợ. Một khi ai đó có nhiều kinh nghiệm hơn trả lời câu hỏi của họ và cho họ biết nơi nào trong bảng dữ liệu họ tìm thấy câu trả lời, người mới bắt đầu có thể tự phân tích lại và bắt đầu tự tin. Ngoài ra, liên kết bạn đưa ra không phải là biểu dữ liệu. Bạn bảo anh ta đọc "Bảng dữ liệu ATMEGA328P-PU", không tiến hành tìm kiếm Google để tìm câu trả lời.
capcom

1
OK, tôi sẽ diễn lại. Rob, bạn nên biết rằng bất kỳ nhà sản xuất thiết bị không tầm thường nào cũng sẽ xuất bản tài liệu để trả lời chính xác câu hỏi này. Các nhà sản xuất có một mối quan tâm rõ ràng trong việc giúp bạn dễ dàng sử dụng sản phẩm của họ. Lướt qua bảng dữ liệu là cách để bắt đầu. Đối với những thứ phức tạp như vi điều khiển, có thể có một ghi chú ứng dụng riêng. "ứng dụng điển hình" là những từ kỳ diệu bạn cần sử dụng trong thuật ngữ tìm kiếm của mình. Không phải là xấu khi yêu cầu giúp đỡ, nhưng thật tốt khi biết cách câu cá.
Phil Frost

Câu trả lời:


13

Tất cả những gì bạn cần ngoài lập trình viên và chip là một vài nắp tách rời và một số cách kết nối các tín hiệu lập trình với bảng mạch.

Vì thế:

  • 1 nắp điện phân cực lớn (ví dụ> 100uF) Bạn có thể làm mà không cần điều này nếu nguồn của bạn đẹp và yên tĩnh (ví dụ: pin)
  • 1 gốm 100nF trên các chân nguồn của micro
  • 1 điện trở 10kΩ để kết nối từ chân reset đến Vcc để giữ micro không thiết lập lại.
  • Một số dây nhảy để kết nối các nút trên bảng mạch của bạn (bạn có thể mua dây nhảy sẵn sàng, nhưng tôi sử dụng cuộn 22AWG và tự cắt - rẻ hơn nhiều nếu bạn làm điều này nhiều)
  • Một tiêu đề để cắm cáp lập trình của bạn vào. Theo hướng dẫn sử dụng, có vẻ như bạn cần một tiêu đề cao gấp 2 pin 2,53mm.

Không bắt buộc

  • Một nút để kết nối dòng thiết lập lại của bạn với mặt đất nếu bạn muốn thiết lập lại vật lý chip (Tôi không sử dụng AVR, nhưng tôi chắc chắn 99,9% lập trình viên có thể làm điều này từ IDE)
  • Một tinh thể để sử dụng thay cho bộ dao động nội bộ
  • Tụ điện 2 * 22pF cho tinh thể (đặt từ hai bên xuống đất)
  • Các thành phần thụ động, đèn LED, cảm biến, vv để làm một cái gì đó hữu ích với mã bạn viết ;-)

Ngoài tiêu đề (là 10 chân với một số chân không được sử dụng - bạn có thể sử dụng nhãn làm hướng dẫn cho các kết nối của mình, các tên giống nhau) sơ đồ này là về cách đơn giản nhất tôi có thể tìm thấy với Google nhanh chóng:

Sơ đồ đơn giản AVR

Thật thú vị, tôi vừa viết một blog về việc thực hiện khá nhiều điều tương tự với một vi điều khiển PIC (có thể đáng xem, hai cái này rất giống nhau)


3
Nếu chúng ta đang nói chuyện tối thiểu tuyệt đối, bạn không cần điện trở pullup trên đường đặt lại - AVR có pullup bên trong. Và nếu chúng tôi đang nói chuyện được khuyến khích, bạn cũng nên bao gồm một nắp trên dòng đặt lại - xem ghi chú ứng dụng này: atmel.com/images/doc2521.pdf . Ngoài ra, tiêu đề ISP pin 2x3 mà bạn đề cập là phổ biến hơn nhiều so với 2x5 được hiển thị trong sơ đồ.
Nick Johnson

Cảm ơn! Nếu nắp 100nF dành cho các chân nguồn, thì nắp> 100F dùng để làm gì?
Rob N

1
@RobN tụ điện mạnh mẽ là để lọc / làm mịn nguồn cung cấp năng lượng
Abbeyatcu

@NickJohnson - cảm ơn vì những điểm tốt hơn - hãy thoải mái chỉnh sửa câu trả lời của tôi nếu bạn muốn (như đã đề cập tôi chưa sử dụng một AVR, lựa chọn nhỏ của tôi là PIC - hoặc thực sự là một ARM như STM32F10xxx ngày nay thường xuyên hơn)
Oli Glaser

1
Nếu bạn sử dụng khung Arduino, bạn cũng cần một tụ điện 100nF giữa tín hiệu DTR từ bộ chuyển đổi nối tiếp sang USB và đường dây đặt lại, nếu không, bạn sẽ buộc phải hàn bằng tay một bộ điều hợp bộ chuyển đổi trên bảng mạch với tụ điện 0402 vì điều đó là gói duy nhất bạn có sẵn 100nF và không ai có thể làm điều ngớ ngẩn như vậy.
Simon Richter

4

Tôi chỉ đăng bài này như một câu trả lời để che giấu các URL xấu xí. Bạn chắc chắn nên xem qua Atmel Appnote AVR042: Cân nhắc thiết kế phần cứng AVR .


+1 cho một tài liệu tham khảo tuyệt vời, tôi đã tìm kiếm một cái gì đó giống như thế này để bổ sung cho lời khuyên thiết lập vi mô nhỏ "chung". @RobN - bạn nên đọc kỹ tài liệu này.
Oli Glaser

0

Tôi cũng tìm thấy liên kết hữu ích này từ dân Arduino: https://www.arduino.cc/en/Main/Standalone Nó giải thích cách đi từ một con chip bạn vừa lấy từ DigiKey (hoặc bất cứ nơi nào) để tải bộ tải khởi động và thành phần hỗ trợ tối thiểu trần.

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.