İçindekiler:

AVR Programlayıcı W/Yüksek Voltaj: 17 Adım
AVR Programlayıcı W/Yüksek Voltaj: 17 Adım

Video: AVR Programlayıcı W/Yüksek Voltaj: 17 Adım

Video: AVR Programlayıcı W/Yüksek Voltaj: 17 Adım
Video: Atmel-AVR-Programmierung - AtTiny 2313 einrichten für die Programmierung 2024, Temmuz
Anonim
AVR Programcısı W/Yüksek Voltaj
AVR Programcısı W/Yüksek Voltaj
AVR Programlayıcı W/Yüksek Voltaj
AVR Programlayıcı W/Yüksek Voltaj

Bu benim ilk Eğitilebilirliğim. Tasarladığım pano bir AVR Programcısı. Pano, son birkaç yılda oluşturduğum 4 ayrı prototip panonun işlevlerini birleştiriyor:

- Öncelikle ATtiny cihazlarında, sıfırlama hattı G/Ç için kullanıldığında sigortaları ayarlamak için kullanılan bir Yüksek Gerilim AVR programcısı.

- ISP, 5V ve 3v3 olarak Arduino (işlevlerden ikisi sayılır)

- NOR Flash EEPROM programcısı (bir SD karttan NOR Flash'a hızlı bir şekilde kopyalar)

Kart, 5V ve 3v3 elde etmek için ortak AMS1117 LDO voltaj regülatörlerini kullanır. Yüksek voltaj işlevi 12V gerektirir. Bunun için bir MT3608 DC-DC yükseltici dönüştürücü kullandım. Mcu 16MHz, 5V'de çalışır. 3v3 gerektiren herhangi bir şey için seviye kaydırma, bir LVC125A kullanılarak gerçekleştirilir. LVC125A, birçok SD kart modülünde bulduğunuz şeydir. Mcu bir ATmega328pb'dir. ATMega328pb, aynı boyuttaki pakette 4 tane daha G/Ç pinine sahip olması dışında, daha yaygın olan ATMega328p ile neredeyse aynıdır.

Bu anakart 1.5 versiyonudur. Bu son sürümdeki yeni özellikler: - bir usb seri arabirim. - sıfırlanabilir poli sigortalar. - İşlev seçim düğmelerinin altındaki LED işlev göstergeleri. - DTR'yi USB seri çipinden ayırarak seri sıfırlamayı kontrol eden bir anahtar. - DC-DC 12V kullanılmadığında gücü tamamen kesmek için bir MOSFET.

Kart, AT24Cxxx I2C seri EEPROM ekleme seçeneğine sahiptir ve I2C cihazlarını bağlamak için 5 pinli I2C JST-XH-05 konektörü (GND/5V/SCL/SDA/INT1) vardır.

Bu projenin daha karmaşık yönlerinden biri, tüm fonksiyonların/çizimlerin tahtaya nasıl yükleneceğiydi. En kolay yöntem, işlevleri değiştirmem gerektiğinde basitçe bir çizim indirmek olurdu. Başka bir yöntem, tüm eskizleri birleştirmek olurdu. Bu iki yönteme karşı karar verdim. Birleştirme yöntemi, orijinal kaynak çizimlerde yapılan herhangi bir değişikliğin entegre edilmesini zorlaştırırdı. Birleştirme yöntemi ayrıca, kullanılan kitaplıkları ve eskizleri yeniden yazmadan ve kazmadan mevcut SRAM miktarının yeterli olmaması sorununa da sahiptir, yine bir bakım sorunudur.

Seçtiğim yöntem, Arduino IDE ile çalışan AVRMultiSketch adlı bir uygulama yazmak ve eskizleri bellek konumlarını değiştirerek flash'a yüklemek oldu. Çizim kaynakları hiçbir şekilde değiştirilmez. Tek eskizlermiş gibi tahtada koşarlar. Bunun nasıl çalıştığı, AVRMultiSketch için açık kaynak GitHub benioku dosyasında ayrıntılı olarak açıklanmaktadır. Daha fazla ayrıntı için https://github.com/JonMackey/AVRMultiSketch adresine bakın. Bu arşiv ayrıca kullandığım/yazdığım/değiştirdiğim ve tek tek kullanılabilecek eskizleri de içerir.

Eskizler arasında geçiş yapmak için kartta dört düğme bulunur: Sıfırla ve 0, 1, 2 etiketli düğmeler Güç açıldığında veya sıfırlandığında, hiçbir şey yapmazsanız seçilen son işlev çalıştırılır. Numaralandırılmış düğmelerden birini basılı tutarsanız, bir çizim/fonksiyon seçmiş olursunuz. Çizim, seçilen çizim haline gelir. İşlev düğmelerinin her birinin altındaki beyaz LED'ler, geçerli seçimi yansıtmak için yanar.

Şu anda pano sadece 3 eskize ev sahipliği yapıyor, ancak birkaç tane daha barındırabilir. Bu durumda, sadece 3 bit/sayılı düğmeler varsayarsak, birden fazla düğmeyi basılı tutarak 7'ye kadar barındırabilir.

Şematik sonraki adımda ektedir

Thingsiverse'de minimal bir destek braketi mevcuttur. Bakın

1.5 sürümü için kart PCBWay'de paylaşılmaktadır. Bakınız

Birleştirilmiş ve test edilmiş bir tahta istiyorsanız benimle iletişime geçin.

Adım 1: Panonun Montajı için Talimatlar

Panonun Montajı için Talimatlar
Panonun Montajı için Talimatlar

Tahtanın (veya hemen hemen her küçük tahtanın) montajı için talimatlar aşağıdaki gibidir.

Bir SMD kartının nasıl oluşturulacağını zaten biliyorsanız, 13. adıma geçin.

2. Adım: Parçaları Toplayın

Parçaları Topla
Parçaları Topla
Parçaları Topla
Parçaları Topla

Tüm çok küçük parçalar (dirençler, kapasitörler, LED'ler) için etiketlerle çalışma masasına bir parça kağıt bantlayarak başlıyorum. Kondansatörleri ve LED'leri yan yana yerleştirmekten kaçının. Karışırlarsa, onları ayırt etmek zor olabilir.

Daha sonra kağıdı bu parçalarla dolduruyorum. Kenarın etrafına diğer, tanımlanması kolay parçaları ekliyorum.

(Aynı kağıdı tasarladığım diğer panolar için kullandığımı unutmayın, bu nedenle fotoğraftaki konumların yalnızca birkaçında etiketlerin yanında/üzerinde parçalar var)

Adım 3: Kartı Monte Edin

Tahtayı Monte Et
Tahtayı Monte Et
Tahtayı Monte Et
Tahtayı Monte Et

Montaj bloğu olarak küçük bir tahta parçası kullanarak, PCB kartını iki parça hurda prototip kartı arasına sıkıştırıyorum. Prototip panolar, çift yapışkan bantla montaj bloğuna tutulur (PCB'nin kendisinde bant yoktur). Montaj bloğu için ahşap kullanmayı seviyorum çünkü doğal olarak iletken değil/antistatik. Ayrıca parçaları yerleştirirken gerektiğinde hareket ettirmek de kolaydır.

Adım 4: Lehim Pastası Uygulayın

Lehim Pastası Uygula
Lehim Pastası Uygula
Lehim Pastası Uygula
Lehim Pastası Uygula

SMD pedlerine lehim pastası uygulayın ve tüm açık delik pedlerini açık bırakın. Sağlak olduğumdan, daha önce uyguladığım lehim pastasının bulaşma olasılığını en aza indirmek için genellikle sol üstten sağ alta doğru çalışırım. Macunu bulaştırırsanız, makyajı çıkarmak için kullanılanlar gibi tüy bırakmayan bir mendil kullanın. Kleenex/doku kullanmaktan kaçının. Her pede uygulanan macun miktarını kontrol etmek, deneme yanılma yoluyla elde edebileceğiniz bir şeydir. Her pedde sadece küçük bir dokunuş istiyorsunuz. Dab'ın boyutu, pedin boyutuna ve şekline bağlıdır (kabaca %50-80 kapsama alanı). Şüphe duyduğunuzda, daha az kullanın. Daha önce bahsettiğim LVC125A TSSOP paketi gibi birbirine yakın pimler için, bu çok dar pedlerin her birine ayrı bir dab uygulamaya çalışmak yerine, tüm pedlere çok ince bir şerit uygularsınız. Lehim eritildiğinde, lehim maskesi, suyun yağlı bir yüzeye yapışmaması gibi, lehimin pede göç etmesine neden olur. Lehim, açıkta kalan bir ped bulunan bir alana boncuklanacak veya hareket edecektir.

Düşük erime noktalı bir lehim pastası kullanıyorum (137C Erime Noktası) İkinci fotoğraf v1.3 kartı ve kullandığım lehim pastası türüdür.

Adım 5: SMD Parçalarını Yerleştirin

SMD Parçalarını Yerleştirin
SMD Parçalarını Yerleştirin

SMD parçalarını yerleştirin. Bunu sol üstten sağ alta doğru yapıyorum, ancak bir kısmı kaçırma ihtimalinizin daha düşük olması dışında pek bir fark yaratmıyor. Parçalar elektronik cımbız kullanılarak yerleştirilir. Kıvrımlı uçlu cımbızı tercih ederim. Bir parça alın, gerekirse montaj bloğunu çevirin ve ardından parçayı yerleştirin. Tahta üzerinde düz durduğundan emin olmak için her parçaya hafifçe vurun. Bir parçayı yerleştirirken, tam olarak yerleştirmeye yardımcı olması için iki elimi kullanırım. Kare bir mcu yerleştirirken çapraz olarak zıt köşelerden alın.

Polarize kapasitörlerin doğru konumda olduğundan ve tüm yongaların doğru yönlendirildiğinden emin olmak için kartı inceleyin.

Adım 6: Sıcak Hava Tabancası Zamanı

Sıcak Hava Tabancası Zamanı
Sıcak Hava Tabancası Zamanı

Düşük sıcaklıkta lehim pastası kullanıyorum. Model tabancam için sıcaklığı 275C'ye, hava akışı 7'ye ayarladım. Tabancayı tahtaya dik ve tahtadan yaklaşık 4 cm yukarıda tutun. İlk parçaların etrafındaki lehimin erimeye başlaması biraz zaman alır. Silahı tahtaya yaklaştırarak işleri hızlandırmak için cazip olmayın. Bu genellikle parçaların etrafa üflenmesiyle sonuçlanır. Lehim eridiğinde, tahtanın bir sonraki örtüşen bölümüne geçin. Tahtanın her yerinde yolunuzu çalışın.

YAOGONG 858D SMD Sıcak Hava Tabancası kullanıyorum. (Amazon'da 40 dolardan daha düşük bir fiyata.) Pakette 3 püskürtme ucu bulunur. En büyük (8mm) nozulu kullanıyorum. Bu model/stil birkaç satıcı tarafından yapılmış veya satılmıştır. Her yerde reytingler gördüm. Bu silah bende sorunsuz çalıştı.

7. Adım: Gerekirse Güçlendirin

Gerekirse Güçlendirin
Gerekirse Güçlendirin
Gerekirse Güçlendirin
Gerekirse Güçlendirin

Kartta yüzeye monte SD kart konektörü veya yüzeye monte ses jakı vb. varsa, muhafazasını karta takmak için kullanılan pedlere ekstra tel lehim uygulayın. Lehim pastasının tek başına bu parçaları güvenilir bir şekilde sabitlemek için genellikle yeterince güçlü olmadığını buldum.

Adım 8: SMD Flux'un temizlenmesi/çıkarılması

SMD Flux'un temizlenmesi/çıkarılması
SMD Flux'un temizlenmesi/çıkarılması
SMD Flux'un temizlenmesi/çıkarılması
SMD Flux'un temizlenmesi/çıkarılması

Kullandığım lehim pastası "temiz değil" olarak tanıtılıyor. Tahtayı temizlemeniz gerekiyor, çok daha iyi görünüyor ve tahtadaki küçük lehim boncuklarını kaldıracak. İyi havalandırılmış bir alanda lateks, nitril veya lastik eldivenler kullanarak küçük bir seramik veya paslanmaz çelik tabağa az miktarda Flux Remover dökün. Akı giderici şişeyi tekrar kapatın. Sert bir fırça kullanarak fırçayı akı sökücüye batırın ve tahtanın bir alanını ovalayın. Tahta yüzeyini tamamen temizleyene kadar tekrarlayın. Bu amaçla bir tabanca temizleme fırçası kullanıyorum. Kıllar çoğu diş fırçasından daha serttir.

Adım 9: Tüm Oluk Deliği Parçalarını Yerleştirin ve Lehimleyin

Tüm Oluk Deliği Parçalarını Yerleştirin ve Lehimleyin
Tüm Oluk Deliği Parçalarını Yerleştirin ve Lehimleyin
Tüm Oluk Deliği Parçalarını Yerleştirin ve Lehimleyin
Tüm Oluk Deliği Parçalarını Yerleştirin ve Lehimleyin

Akı giderici tahtadan buharlaştıktan sonra, en kısadan en uzuna doğru tüm oluk deliği parçalarını birer birer yerleştirin ve lehimleyin.

Adım 10: Düz Kesimli Delik Pimleri

Düz Kesimli Delik Pimleri
Düz Kesimli Delik Pimleri

Düz bir kesici pense kullanarak, tahtanın alt tarafındaki açık delik pimlerini kesin. Bunu yapmak, akı kalıntısının çıkarılmasını kolaylaştırır.

Adım 11: Kırpmadan Sonra Delik Pimlerini Yeniden Isıtın

Kırpma Sonrası Delik Pimlerini Tekrar Isıtın
Kırpma Sonrası Delik Pimlerini Tekrar Isıtın

Güzel bir görünüm için, kesme işleminden sonra açık delik pimlerindeki lehimi tekrar ısıtın. Bu, gömme kesicinin bıraktığı kesme izlerini ortadan kaldırır.

Adım 12: Açık Delikten Akıyı Çıkarın

Açık Delik Akısını Çıkarın
Açık Delik Akısını Çıkarın

Daha önce olduğu gibi aynı temizleme yöntemini kullanarak kartın arkasını temizleyin.

Adım 13: Panoya Güç Uygulayın

Yönetim Kuruluna Güç Uygulayın
Yönetim Kuruluna Güç Uygulayın

Karta (6 ila 12V) güç uygulayın. Hiçbir şey kızarmazsa, 5V, 3v3 ve 12V'yi ölçün. 5V ve 3v3, iki regülatör yongasındaki büyük sekmeden ölçülebilir. 12V, rezistörün sol alta en yakın ucu olan R3'ten ölçülebilir (güç jakı sol üsttedir).

Adım 14: Önyükleyiciyi Yükleyin

Bootloader'ı yükleyin
Bootloader'ı yükleyin

Arduino IDE Tools menüsünden, hedeflenen mcu için Board ve diğer seçenekleri seçin.

Kart tasarımlarımda neredeyse her zaman bir ICSP konektörüm var. ISP olarak bir Arduino'nuz veya başka bir ICSP programlayıcınız yoksa, önyükleyiciyi programlayıcı panosuna indirmek amacıyla bir devre tahtasında bir tane oluşturabilirsiniz. Programlayıcı menü öğesinden ISP olarak Arduino'yu seçin, ardından önyükleyici yakmayı seçin. Bu, önyükleyiciyi indirmenin yanı sıra sigortaları da doğru şekilde ayarlayacaktır. Fotoğrafta, soldaki tahta hedeftir. Sağdaki pano ISP'dir.

Adım 15: Çoklu Çizimi Yükleyin

Çoklu Çizimi Yükle
Çoklu Çizimi Yükle
Çoklu Çizimi Yükle
Çoklu Çizimi Yükle
Çoklu Çizimi Yükle
Çoklu Çizimi Yükle

AVRMultiSketch'in çoklu çizimi karttaki seri bağlantı noktası aracılığıyla flash'a yüklemesi için GitHub havuzumdaki talimatları izleyin. GitHub AVRMultiSketch deposu, fotoğrafta gösterilen tüm eskizleri içerir. Pano yapmayı planlamıyor olsanız bile, NOR Flash Hex Copier ve AVR Yüksek Voltaj çizimlerini faydalı bulabilirsiniz.

Adım 16: Tamamlandı

Tamamlandı
Tamamlandı
Tamamlandı
Tamamlandı
Tamamlandı
Tamamlandı
Tamamlandı
Tamamlandı

Ayrıca, devre tahtasında olduğu gibi, monte edilmemiş yongaları kullanırken birkaç adaptör kartı tasarladım.

- ATtiny85 ICSP adaptörü. Bir ATtiny85 bağımsız programlamak için kullanılır.

- ATtiny84'ten ATtiny85'e. Bu, hem yüksek voltajlı programlama için kullanılır hem de ATtiny85 ICSP adaptörüne bağlanır.

- NOR Flash adaptörü.

Diğer tasarımlarımdan bazılarını görmek için https://www.thingiverse.com/JMadison/designs adresini ziyaret edin.

Adım 17: Önceki Sürüm 1.3

Önceki Sürüm 1.3
Önceki Sürüm 1.3
Önceki Sürüm 1.3
Önceki Sürüm 1.3

Yukarıdakiler 1.3 sürümünün fotoğraflarıdır. Sürüm 1.3'te USB Seri, sıfırlanabilir sigortalar ve işlev göstergesi LED'leri yoktur. Bir sürüm 1.3 varyantı bir ATmega644pa (veya 1284P) kullanır

1.3 sürümünü oluşturmakla ilgileniyorsanız, bana bir mesaj gönderin (yorum eklemek yerine).

Önerilen: