ATtiny85 üzerinde USB modülü bulunmuyor ama yazılımsal olarak çalışmaya uygun hale getirilmiş devre bilgisayara bağlandığında USB hid mause olarak tanınıyor devre üzerinde çok az malzeme var pull up dirençleri ve zener diyotlar. Yazar kutulama içinde kullanmadığı 512mb flash diskin kasasını kullanmış. Atmel AVR Mikrodenetleyiciler için geliştirilen V-USB ( http://www.obdev.at/products/vusb/ Sanal USB) ve USB Hid için güzel bir örnek…
DIY USB şifre üreteci
Yarım düzine V-USB öğreticisi yaptıktan sonra havalı bir şeyler hazırlamanın zamanının geldiğine karar verdim. USB klavyeler el değmemiş bir alan olduğu için, her takıldığında EEPROM’da saklanan bir şifreyi yazan küçük bir USB HID klavye cihazı yapmaya karar verdim. CAPS LOCK’a birkaç kez basılarak yeni bir parola oluşturulabilir (parola yenilemeyi başlatmak için 4 kez ve oluşturulan her parola karakteri için bir sekme, varsayılan parola uzunluğu 10’dur). Aşağıda cihazı çalışırken görebilirsiniz:
Çalıştığım yer, parolamı birkaç ayda bir değiştirmemi gerektiriyor, bu nedenle bu, yeni bir parolayı hatırlamayı tamamen atlamanın bir yolu olabilir (yeni bir parola oluşturmadan önce yazmayı hatırladığım sürece, böylece parola değiştirilebilir :).
İçerideki ne?
Cihaz , ATtiny85 USB eğitimimde kullandığım donanımın basitleştirilmiş bir versiyonuyla çalışıyor – LCD’yi, sıfırlamayı ve her iki kapasitörü çıkardım. Muhafazaların içindeki bileşenleri sıkıştırma konusunda daha iyiyseniz, VCC ile GND arasına en az 0,1 uF’lik bir kapasitör eklemenizi öneririm, ancak onsuz bile iyi çalışıyor gibi görünüyor:
Muhafaza, eski bir 512 MB flash sürücü tarafından nezaketle bağışlanmıştır. USB konektörünü içerideki devre kartından ayırmaya kendimi ikna edemedim, bu yüzden bunun yerine kısa bir USB kablosunu çıkardım (solda gösteriliyor):
Biraz düşündükten ve yinelemeli lehimlemeden sonra, aşağıdaki ilk kurulumla her şeyi 2 × 8 pedli bir tripad veroboard’a sıkıştırmayı başardım:
Önce konektörü, ardından zener diyotlarını, ardından dirençleri ve atlama tellerini ve son olarak VCC, GND ve ATtiny’nin kendisini lehimledim. Her şeyin bir araya gelmesi için aşağıdaki hileleri kullandım:
D+ zener diyodu, GND pinine bağlı olan ATtiny altındaki pede gider.
D-zener diyottan sonra 2k2 çekme ve 68 ohm direnç için sadece 1 ped kaldı, bu yüzden bir sonraki pede bir atlama teli kullandım
2k2 çekme, ATtiny VCC’ye bağlı bir pede gider
VCC, siyah bir jumper kablosu kullanarak ATtiny’nin altındaki pede gider
D+ 68 ohm rezistörü yanlış bir tripata lehimledim, bu yüzden GND için sol üstteki siyah atlama telinin arkasında zar zor görülebilen başka bir atlama teli kullandım
Sonuçtan ve gerçekten işe yaramasından oldukça memnun kaldım! Tahta başlangıçta plastik mahfazadaki çok rahat alana sığmadı, bu yüzden iç kısımlarını biraz düzeltmek için bir Dremel kullanmak zorunda kaldım, ancak ondan sonra her şey hemen eski haline döndü (daha büyük versiyonlar için tıklayın):
Yazılım
Cihaz kendisini bilgisayara bir USB HID klavye olarak sunar . Cihazla iletişimi sağlamak için, bilgisayardan LED durum değişikliklerini alabilen, önyükleme uyumlu bir klavyedir. HID tanımlayıcı, Frank Zhao’nun USB kartvizit örneğinden alınmıştır ve LED durumunun cihaza nasıl gönderildiğini anlamak için Frank’in koduna da baktım (kısacası, PC, LED durumu bit maskesi olan 1 bayt veri içeren bir kontrol mesajı gönderir).
Kod , bir önyükleme klavyesi uygulamak için gereken ve HID tanımlayıcı değişiklikleri dışında çoğunlukla USB HID fare örneğime dayanmaktadır . Güncelleme: Daha fazla bilgi edinmek istiyorsanız USB HID klavyeusbsconfig.h yazımı da okumak isteyebilirsiniz . Kodu belgeledim ancak daha iyi anlamak istiyorsanız işte bazı önemli noktalar:
PASS_LENGTHbaşlangıçta tanımlanan, oluşturulan şifrelerin uzunluğunu kontrol eder
SEND_ENTERcihazın klavyeyi yazdıktan sonra ENTER göndermesini istiyorsanız 1 olarak tanımlanabilir.
measuring_messageve finish_messageyeni bir şifre oluştururken / kaydederken görüntülenen mesajları içerir
buildReport()messageBuffertuş basımlarını PC’ye tek tek göndermek için program ana döngüsü tarafından çağrılır – karakterleri anında USB anahtar kodlarına çevirir
usbFunctionWrite()PC’den 1 bayt LED durumunu almak için uygulanır – caps_toggle()LED durumu her değiştiğinde işlevi çağırır
generate_character()rasgele tuş basımlarını döndürmek için kullanılır – şu anda alfanümerik, kısa çizgi ve alt çizgi döndürmek için yazılmıştır (64 sembol, birini seçmeyi kolaylaştırır, böylece her birinin ek mantık olmadan eşit seçilme şansı vardır)
caps_toggle()büyük harf kilidi sayımı ve parola oluşturma/kaydetme
Kaynak dosyaları şematik, kritik resimler ve bir Makefile ile paketledim . “Make flash”a ek olarak tabii ki PLL saat kaynağını kullanmak için sigorta bitlerini güncellemeniz gerekir – bunun için önceki öğreticimdeki ayrıntılara bakın. Ayrıca cihazı lehimlemeden önce bir breadboard kullanarak test etmenizi şiddetle tavsiye ederim, çünkü aksi takdirde yeniden flaş yapmak büyük bir acı olacaktır.
Ve tabii ki, onu oluşturursanız, riski size ait olacak şekilde deneyin ve parolayı yeniden programladıktan sonra hiçbir şeyin onu geri getiremeyeceğini unutmayın. Emin olmak için cihazla oluşturulan şifreleri güvenli bir yerde saklamanızı öneririm.
Güncelleme: SparkFun’dan Alma
Dün SparkFun’un neredeyse aynı donanım olan AVR Stick’i taşıdığını öğrendim . Bu nedenle, bir tane sipariş edip bu ürün yazılımı ile yeniden programlarsanız (bu durumda usbconfig.h’deki pin yapılandırmasının güncellenmesi gerekir), bir miktar lehimlemeden kaçınabilirsiniz (hepsi olmasa da, muhtemelen programlama başlığında lehimlemeniz gerekecektir).
Kaynak: codeandlife.com/2012/03/03/diy-usb-password-generator
Şifre-Pass: 320volt.com
Yayım tarihi: 2012/06/12 Etiketler: atmel avr projeleri, attiny85, usb hid mause, usb password, usb şifre, v usb
ATtiny85 entegresi perpa ve karaköy pasajında yok hocam ben nerden bulabilirim olabilir demeyin varsa söyleyin!!
http://www.direnc.net/ATTINY-85-20SU-SMD,PR-7283.html
http://www.elektriksel.com/attiny85v-10pu-avr-mikrodenetleyici-8k-10mhz-8dip.html
bu devrede attiny85 e program vs atılması lazım mı yoksa devreyi direk kurduktan sonra çalışıyo mu ?
internetten sipariş etmek hariç bildiginiz bir yer diyorum …
direnc.net in yeri kadıköyde yazıcıoğlu handa kat 4 gitmeden önce ararsınız ürünü ayırırlar ya da yoksa temin ederler
Bu Şifre üretici hangi mantıkla çalışıyor ? 🙂 rastgele şifreler mi deniyor?
hocam entegreyi buldum teşekürler alacağım ama ATtiny85- ? kaç olacak bir sürü kodu var
ATTINY85V-10MU
ATTINY85V-10SU
ATTINY85V-10PU
ATTINY85V-15MT ??
bizim verdiğimiz şifreyimi giriyor direk ?
cevabını bekliyorum gevv
ATTINY85V-10MU
ATTINY85V-10SU
ATTINY85V-10PU
ATTINY85V-15MT ??
usb olayını yazılımsal olarak nasıl çözmüşler.. PIC ilede çözülmesi mümkün mü acaba ? bu konuda kaynak mevcutmu ?
Evet hocam PIC ile yapılanlarda var hatta pic16f84 ile yapılan örnek var http://www.telefonica.net/web2/hidlcd/
birde f628 ile yapılan örnek vardı ama pek detay yoktu sitesinide hatırlamıyorum
pic için fazla örnek yok
ama atmel camiasında durum çok farklı bu VUSB dedikleri olay atmel serisi bir çok mikrodenetleyicide kullanılabiliyor zaten VUSB sitesinde de bir sürü örnek var sanırım atmelde sanal, yazılımsal usb daha kolay ve kararlı
Teşekkürler Gevv. verdiğin linki inceleyeceğim. iyi çalışmalar..
ATTINY85V-10PU
ATTINY85V-20PU
hangisi fark ediyor mu ??
tam olarak bu devredeki malzemeleri yazarmısınız…bilgisayarın şifresini unuttum bunu yapmam lazım maliyeti nakadardır söylerseniz sevinirim…
ATTINY85V-10MU
ATTINY85V-10SU
ATTINY85V-10PU
ATTINY85V-15MT
hangisi söylerseniz seviniriz
arkadaşlar ATTINY85V-20PU kullanabilirsiniz
teşekkür ederim gevv ama diyer parçaların adını yazarsan sevinirim ben elektronikten pek anlamıyomda…
ATTINY85V-20PU nereden sipariş ederim