Bir AVR'nin devre programlamasında nasıl planlayabilirim?


12

Her zamanki AVR'leri yeniden programlama yöntemim (bugüne kadar ATtiny13 ve ATtiny2313 ile sınırlı), çipi ana devre ile ayırmak, tüm ICSP bağlantılarını yerine oturtmak, programlamak ve değiştirmek için başka bir breadboard'a takmaktır. Bununla birlikte, çipin yerinde programlanabileceğini duymaya devam ediyorum (ki anlıyorum, ICSP'nin bütün noktası).

Çipi yerinde programlamadan önce dikkate alınması gereken özel donanım hususları var mı? Örneğin, ICSP işleminin, ICSP için kullanılan aynı AVR pinlerine bağlı devre bileşenlerine zarar verebileceğinden endişe ediyorum. Bu bileşenleri korumak için zaman zaman diyotlar veya başka bir tür tamponlama eklemek gerekir mi?

Bu sorunun kulağa belirsiz geldiğini biliyorum, ve sanırım - ama özel devremle ilgili ayrıntılar vermedim çünkü daha genel başparmak kuralları ile ilgileniyorum. Yani hiç kimse bu konuda endişelenmek zorunda değil mi ya da cevap gerçekten MCU'nun bir parçası olduğu devreye bağlı mı?

Yanıtlar:


15

ISS'yi yaptığım hemen hemen her AVR kartı için kullandım; korkacak bir şey yok. AVR ISP mkII manuel "Hedef Arayüz" bölümünde için dışarı bakmak gerekir sınırlamalar oldukça iyi bir özetini verir. Temel olarak, MISO / MOSI / SCK pimlerini doğrudan programlayıcıya çalıştırırsanız ve devre ile geri kalanın arasında yaklaşık 820 ohm varsa (ve sıfırlama pimi ile korkak bir şey yapmıyorsanız) sorun olmaz. ISS'nin diğer bileşenlere zarar vermesinden endişe etmem; yüksek voltajlı bir programcı değil. Tüm sinyaller 5V'da çalışır, bu nedenle harici bir bileşene zarar verebilirse, mikro denetleyiciniz de olabilir.

ISS programlamasına izin vermeyen bir kartla gerçekten sıkıştıysanız, en azından programlama kartınız için bir ZIF soketi kullanmaya çalışacağım. Pahalıdırlar, ancak yaşam kalitenizi büyük ölçüde artıracaktır.


Bağlantı için teşekkürler - tam da peşimden geliyorum. Aslında gerçek bir AVR ISS kullanmıyorum - sadece uygun şekilde programlanmış bir arduino. (!) Bunu birkaç gün içinde bir Bus Pirate ile değiştiriyorum, bu yüzden bir tahtayı ZIF yuvalarıyla bir araya getirmek kesinlikle yapmayı planladığım bir şey. Mevcut prosedürüm son derece çirkin!
Tim

1

ICSP başlığını fiziksel olarak ayırabilmeniz için bir atlama kablosu veya anahtar kullanın. Bu şekilde pimleri endişelenmeden ve diğer bileşenlerinizle uğraşmak zorunda kalmadan diğer işlevlerle paylaşabilirsiniz.

Bu en açık ve en güvenli çözüm gibi görünüyor ve kullandığım şey bu.

(İlk cevabım silindi, bu yüzden daha fazla ayrıntı eklemeye çalıştım).


Bu nasıl olurdu? Ardından, anahtar / jumper bağlandığında, pimler yine devrenin geri kalanına bağlanacaktır.
19'da eeze

0

Maalesef, pimler aydınlatma LED'leri gibi diğer işlevlerle paylaşılıyorsa AVR'leriniz için devre programlaması yapamazsınız. Çalışabilse de, programcının veya µC çıkışlarının çalışması için çok düşük düşmesine neden olabileceği garanti edilmez.

Diğer bir alternatif ise, fişlerinizi önceden programlanmış olarak sipariş etmektir. Microchip'in bazı fişleri için bunu sunduğunu biliyorum, ama Atmel'den emin değilim.


Ah, bundan şüphelendim. Sanırım işleri yavaş ve hantal bir şekilde yapmaya devam etmem gerekecek. (Ah, ve Atmel'in benim için ön programlama yapma şansı yok, ben sadece düşük bir hobim. :-))
Tim

Mikroçip ~ 40 $ "kurulum ücreti. Yine Atmel'den emin değilim. 10-100 aralığında sipariş veriyorsanız, muhtemelen buna değer.
Thomas O

3
Ben SPI pimleri, özellikle LED, diğer yükleri ile bol panoları hiç sorun olmadan programladım. Sinyalleri başka hiçbir şeye yönlendirmemeye dikkat edin. Bu, örneğin, bağlı bir SPI cihazınız varsa, bunu sıfırlamak veya seçmemek için bir çekme direnci veya benzeri bir şey verin.
Yann Vernier
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.