Làm thế nào để tôi lập kế hoạch cho lập trình mạch của một AVR?


12

Phương pháp thông thường của tôi để lập trình lại các AVR (giới hạn cho đến ATtiny13 và ATtiny2313) là ngắt kết nối chip khỏi mạch chủ, cắm nó vào một bảng mạch khác với tất cả các kết nối ICSP tại chỗ, chương trình, sau đó thay thế. Tuy nhiên, tôi vẫn nghe rằng người ta có thể lập trình chip tại chỗ (đó là, tôi hiểu, toàn bộ quan điểm của ICSP).

Có bất kỳ cân nhắc phần cứng đặc biệt nào mà người ta phải tính đến trước khi lập trình chip tại chỗ không? Ví dụ, tôi lo lắng rằng quy trình ICSP có thể làm hỏng các thành phần mạch được kết nối với cùng các chân AVR được sử dụng cho ICSP. Có đôi khi cần phải thêm điốt hoặc một số loại bộ đệm khác để bảo vệ các thành phần này?

Tôi biết câu hỏi này nghe có vẻ mơ hồ, và tôi đoán là vậy - nhưng tôi đã không cung cấp chi tiết về mạch cụ thể của mình vì tôi quan tâm đến các quy tắc chung hơn. Tức là người ta không bao giờ phải lo lắng về điều này, hay câu trả lời thực sự phụ thuộc vào mạch cụ thể mà MCU là một phần của?

Câu trả lời:


15

Tôi đã sử dụng ISP cho tất cả các bo mạch AVR tôi đã thực hiện; Không có gì phải sợ. Các thủ AVR ISP mkII đưa ra một bản tóm tắt tốt đẹp trong những hạn chế bạn cần phải tìm cho ra trong phần "Giao diện Target". Về cơ bản, nếu bạn chạy trực tiếp các chân MISO / MOSI / SCK cho lập trình viên và có khoảng 820 ohms giữa chúng và phần còn lại của mạch (và không làm bất cứ điều gì thú vị với pin đặt lại) thì bạn vẫn ổn. Tôi sẽ không lo lắng về việc ISP làm hỏng các thành phần khác; Nó không phải là một lập trình viên điện áp cao. Tất cả các tín hiệu chạy ở mức 5V, vì vậy nếu nó có thể làm hỏng một thành phần bên ngoài, thì vi điều khiển của bạn cũng vậy.

Nếu bạn thực sự bị mắc kẹt với một bảng không cho phép lập trình ISP, ít nhất tôi sẽ thử sử dụng ổ cắm ZIF cho bảng lập trình của bạn. Chúng đắt tiền, nhưng nó sẽ cải thiện đáng kể chất lượng cuộc sống của bạn.


Cảm ơn vì liên kết - đó chính xác là những gì tôi đang theo đuổi. Tôi thực sự không sử dụng một ISP ISP thực sự - chỉ là một arduino được lập trình thích hợp. (!) Tôi sẽ thay thế điều này bằng Bus Pirate sau vài ngày, do đó, việc kết hợp một bảng với ổ cắm ZIF chắc chắn là điều tôi dự định làm. Thủ tục hiện tại của tôi là vô cùng xấu xí!
Tim

1

Sử dụng một jumper hoặc một công tắc để bạn có thể ngắt kết nối tiêu đề ICSP về mặt vật lý. Bằng cách này, bạn có thể chia sẻ các chân với các chức năng khác mà không phải lo lắng, và không phải nghịch ngợm với các thành phần khác của bạn.

Đây có vẻ là giải pháp rõ ràng và an toàn nhất, và đó là những gì tôi sử dụng.

(Câu trả lời đầu tiên của tôi đã bị xóa, vì vậy tôi đã cố gắng thêm chi tiết).


Làm thế nào mà làm việc? Sau đó, khi công tắc / jumper được kết nối, các chân vẫn sẽ được kết nối với phần còn lại của mạch.
eeze

0

Thật không may, bạn không thể thực hiện lập trình mạch cho các AVR của mình nếu các chân được chia sẻ bởi các chức năng khác, ví dụ như đèn LED chiếu sáng. Mặc dù nó có thể hoạt động, nhưng nó không được bảo đảm vì nó có thể khiến các đầu ra của lập trình viên hoặc của PatrickC giảm quá thấp để nó hoạt động.

Một cách khác là đặt mua chip của bạn được lập trình sẵn. Tôi biết Microchip cung cấp điều này cho một số chip của họ, nhưng tôi không chắc về Atmel.


Ồ tốt, tôi nghi ngờ điều này. Tôi sẽ phải tiếp tục làm mọi thứ theo cách chậm chạp và vụng về của tôi, tôi đoán vậy. (Ồ, và không có cơ hội để Atmel làm lập trình trước cho tôi, tôi chỉ là một người có sở thích thấp kém .-))
Tim

Microchip tính phí ~ $ 40 "phí thiết lập." Một lần nữa, không chắc chắn về Atmel. Nếu bạn đặt hàng trong phạm vi 10 - 100, có lẽ nó đáng giá.
Thomas O

3
Tôi đã lập trình rất nhiều bảng với các tải khác trên các chân SPI, đặc biệt là đèn LED, không có vấn đề gì cả. Chỉ cần cẩn thận để không có bất cứ điều gì khác lái các tín hiệu. Điều này có nghĩa là, ví dụ, nếu bạn có thiết bị SPI được kết nối, hãy cung cấp cho nó một điện trở kéo lên hoặc tương tự để giữ cho thiết bị đó được đặt lại hoặc không được chọn.
Yann Vernier
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.