İçindekiler:
Video: 3 Kolay ATTiny Tatil Hediyesi: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:22
Her yıl tatil mevsimi dönüyor ve arkadaşlarım ve ailem için ne vereceğime takılıp kalıyorum. İnsanlar her zaman hediyeyi kendin yapmanın bir mağazadan satın almaktan daha iyi olduğunu söylerler, bu yüzden bu yıl tam da bunu yaptım. İlki havada sallandığında bir isim veya temel bir görüntü gösterir, ikincisi iki beyaz led arasında yumuşak bir şekilde kaybolur (Giysilere veya çantaya takmak için bir çengelli iğnesi de vardır) ve üçüncüsü bir tür ruh hali ışığıdır, kayar renkler arasında sorunsuz. Hepsi 15 doların altında ve bir saatten kısa sürede montajı kolaydır. Elektronik öğrenmekle ilgilenen birine hediye olarak bu talimatları ve parçaları da verebilirsiniz.
Not: Temel düzeyde bir lehimleme varsayılmıştır. Ancak, önceki talimatımdan farklı olarak, bir AVR'nin nasıl programlanacağına değineceğim. Umarım bu, elektroniğe başlamaya çalışan insanlara yardımcı olur. Orada olduğum zamanı hatırlıyorum ve sorularınızı almaktan mutluluk duyacağım. Unutmayın aptal soru yoktur! Çizdiğim basit devreleri göstermenin yeni bir yolunu bulacağınızı umarak devre kartınızı nasıl yerleştireceğinizi belirlemeyi size açık bıraktım. Lütfen işiniz bittiğinde resimleri gönderin, ne bulacağınızı görmek için sabırsızlanıyorum! Tüm Projelerin Parçaları N = proje sayısı x N ATTiny45 (www.digikey.com) x N 8-pin DIP soketi (RadioShack) x 1 Büyük Perf Kartı (Benimkini RadioShack'ten aldım) x N 3v Düğme Pil ve tutucu (RadioShack) x1 Programlayıcı (Bunu kullanıyorum ve verilen makefile bunu kullanacak şekilde yapılandırılacak) x2 N Dirençler, bir adet 10 ohm ve bir 10k ohm (RadioShack) İşte tamamlanmış üç projenin bir resmi:
Adım 1: İsim Flaşörü
Diğer Parçalar x5 DIFFUSED 3mm LED'ler (RadioShack) Bu proje, hızla hareket ettirildiğinde bir görüntü veya metin görüntülemek için görüş kalıcılığını kullanır. Karanlık olduğunda daha iyi çalışır. AVR ile LED'ler arasında daha hızlı geçiş yapıyoruz, o zaman göz görebiliyor, çok az bileşenle havada bir resim oluşturabiliyoruz. Kod: (Kod, makefile vb. için sayfanın en altındaki.zip dosyasını indirin. (Bu kod, bu kodun yaptığı kapsamlı yorumlara sahip değildir ancak bu kod çalışmıyorsa, aşağıdakilerden birini deneyin) zip dosyası)) #define F_CPU 1000000 #include #include void dispClear() { PORTB = ~0b00000000; } int ana() { DDRB = 0xFF; //Çift eğik çizgi bir yorumu belirtmeden önce C'yi hiç okumamış olanlarınız için. Bu, avr'ın pinlerini bir çıktı char x = 10 olarak ayarlar; //x gecikme uzunluğunu ayarlamak için kullanılır. Değeri artırmak, pikseller arasında daha yavaş bir geçiş sağlar, azalır, daha düşük while(1) //While(condition is true); {Bunu Yapın} (C'de doğru 1) { PORTB = ~0b00010001; //Arkadaşımın adı Zoe, bu yüzden karakterleri grafik kağıdına çizdim ve sonra onları PORTB'ye yükledim. İlk üç sıfır önemli değil çünkü bağlı sadece beş led var. Kalan beş boşluktan birinde bir, LED'in açık, sıfır, kapalı olduğunu gösterir. _delay_ms(x); //milisaniye cinsinden gecikme PORTB = ~0b00010011; _delay_ms(x); PORTB = ~0b00010101; _delay_ms(x); PORTB = ~0b00011001; _delay_ms(x); PORTB = ~0b00010001; _delay_ms(x); dispClear(); //karakterler arasında boşluk bırakın _delay_ms(x); PORTB = ~0b00001110; _delay_ms(x); PORTB = ~0b00010001; _delay_ms(x*3); PORTB = ~0b00001110; _delay_ms(x); dispClear(); _delay_ms(x); PORTB = ~0b00011111; _delay_ms(x); PORTB = ~0b00010101; _delay_ms(x); PORTB = ~0b00010001; _delay_ms(x); dispClear(); _delay_ms(x*5); //Kelime netlik için yapılmıştır, kelimeler arasında daha büyük bir boşluk var } } Şimdi bu kodu derlemek ve AVR'nize göndermek için 4. sayfadaki talimatları izleyin.
Adım 2: Çanta Işığı
Diğer Parçalar x2 LED'ler DAĞITILMAMIŞ (RadioShack) Bu proje iki LED arasında sorunsuz bir şekilde söner. Annem, gece arısının görülmesine yardımcı olmak için çantasına bir şey koymak istedi. Yanıp sönen bir bisiklet ışığının çok fazla dikkat çekeceğini hissettim, bu yüzden bunu yaptım. Karartma ve aydınlatma efekti vermek için PWM (Darbe Genişlik Modülasyonu) kullanır. Gerçekte olan şey, bir değişikliği simüle etmek için ledin değişen aralıklarla gözün görebileceğinden daha hızlı yanıp sönmesidir. Name Flasher'da olduğu gibi yüzünüze doğru salladığınızda bunu daha net görebilirsiniz. Kod bu sayfanın sonunda indirilebilir. AVR'nizi nasıl derleyeceğiniz konusunda 4. sayfaya bakın. Buradaki kodu yorumlamak yerine kavramı kısaca açıklayacağım. PWM bir zamanlayıcı tarafından üretilir. Her saat döngüsü, zamanlayıcı bir tane sayar. Belirli bir değere ulaştığında (Bu durumda OCR1B) bir pinin durumunu değiştirir (Bu durumda OC1B). LED'leri "kapatmak" için diğerini [KARŞI]OC1B'ye bağladım (üstteki çubuğun anlamı budur). Ardından, LED'lerin açık kalacağı süreyi artırmak ve azaltmak için x'i kullanırız.
3. Adım: Renk Kaydırıcı
Diğer Partsx1 RGB LED (dağıtılmış daha iyidir) (RadioShack) Bu benim için bir klasik. Böyle ışıklardan her zaman etkilenmişimdir ve onları çok sakinleştirici buluyorum, o yüzden doğal olarak bir tane yapmak istedim. Ayrıca toplumdaki görünürlükleri onlara gerçek bir WOW faktörü verir. "Bunu sen mi yaptın?!" Kod neredeyse aynı ve bence okunması daha kolay. Alt kısımdan indirebilirsiniz. Bu sefer RGB LED üzerindeki her topraklama pimi için bir PWM'd pimi sağlıyoruz. Bu şekilde çipi topraklıyoruz. Volt, iki nokta arasındaki fark olarak ölçülebilir. 3v-0v=3v 5v-2v=3v ***3v-3v=0v*** Bu son örnek, çipi toprakladığımızda yaptığımız şeydir. Her iki tarafta üç volt olduğunda, diyelim ki, bir LED'i sürmek için yeterli volt yoktur. Bu yüzden renkler arasında solmak için bir renk ve başka bir renk seçtik. Birini x'e, diğerini 255-x'e veya x'in TERSİNE eşit olarak ayarlayın. Bir önceki projede yaptığımız gibi. Şimdi programlamak için 4. adıma gidin.
Adım 4: Programlama
Önce Emacs, avr-gcc ve Avrdude'yi ve sahip olabilecekleri bağımlılıkları indirip yükleyin. Arch linux'ta bunu şununla yaptım: sudo pacman -Sy emacs avrdude
Şimdi programlayıcınızı avr'nize bağlamanın zamanı geldi. 6-pinli ISP programlayıcıdaki (aşağıdaki resim) pimleri AVR'nizdeki (Veri Sayfası, sayfa 2) (Bunu bir devre tahtasında yaptım) birlikte gelen pimlere bağlayın. Şimdi programlayıcıyı bilgisayarınıza takın ve AVR'nin üstüne ÇOK HIZLI bir şekilde dokunun. Eğer sıcaksa, PROGRAMLAYICIYI BİR KEZ BİLGİSAYARINIZDAN KALDIRIN, bağlantılarınızı kontrol edin ve tekrar deneyin (Güç ve Gnd ters mi?). Sıcak değilse, emacs'ı açın ve.c dosyasını bulmak için Ctl-x Ctl-f'ye basın. Açın ve ardından Meta(Genellikle Alt)-x tuşlarına basın ve derleme yazın. Enter tuşuna iki kez basın ve eğer şanslıysanız AVR'niz şimdi kodunuzu çalıştırıyor olmalı! Okuduğunuz için teşekkürler! Umarım beğenmişsinizdir ve bir şeyler öğrenmişsinizdir. Lütfen soru sormaktan çekinmeyin ve aklınıza gelenlerin fotoğraflarını paylaşmayı unutmayın. İyi bayramlar, oy vermeyi unutmayın!
Önerilen:
Hafıza Kaydedici - Noel Hediyesi: 8 Adım (Resimlerle)
Hafıza Kaydedici - Noel Hediyesi: Ciao a tutti! Manzara del Natale'de il momento dei regali, sono sicuro quindi che molti di voi sentiranno la necessità di donare qualcosa di speciale. questo periodo così difficile certamente sono mancate molte vesilesiyle condividere e
Noel Ağacı PCB Hediyesi: 7 Adım
Noel Ağacı PCB Hediyesi: Eylül ayının ortasında eğlenceli bir küçük proje yapmak istedim. Noel yaklaşıyor ve aileme bazı ev yapımı hediyeler vermek istediğim için bir Noel ağacı yapmayı seçtim. Noel ağacı şunları yapmalıdır:- güç verimli olmalı
LED Kalpli Fotoğraf Çerçevesi - Mükemmel Bir Sevgililer Günü veya Doğum Günü Hediyesi Yapın: 7 Adım (Resimlerle)
LED Kalpli Fotoğraf Çerçevesi - Mükemmel Bir Sevgililer Günü veya Doğum Günü Hediyesi Yapın: Merhaba! Bu talimatta size bu harika LED Kalpli Fotoğraf Çerçevesini nasıl yapabileceğinizi göstereceğim. Tüm Elektronik Meraklıları için! Sevdikleriniz için mükemmel bir Sevgililer Günü, Doğum Günü veya Yıldönümü hediyesi yapın!Bunun Demo Videosunu izleyebilirsiniz
Kolay LED Tatil Işık Gösterisi: Kışın Büyücüler - FastLED ve Arduino Eğitimi ile WS2812B LED Şerit: 6 Adım
Kolay LED Tatil Işık Gösterisi: Kışın Büyücüler | FastLED ve Arduino Eğitimi ile WS2812B LED Şerit: Bu tatil ışık şovunu her yerde görüntülenecek şekilde tasarladım ve programladım. 30 piksel/metre piksel yoğunluğuna sahip bir WS2812B led şerit kullandım. 5 metre kullandığım için toplamda 150 ledim oldu. Kodu basit tuttum, böylece WS2812'yi yeni kullanmaya başlayan herkes
DIY MusiLED, Tek Tıkla Windows ve Linux Uygulaması ile Müzik Senkronize LED'ler (32-bit ve 64-bit). Yeniden Oluşturması Kolay, Kullanımı Kolay, Taşıması Kolay.: 3 Adım
DIY MusiLED, Tek Tıkla Windows ve Linux Uygulaması ile Müzik Senkronize LED'ler (32-bit ve 64-bit). Yeniden Oluşturması Kolay, Kullanımı Kolay, Portu Kolay.: Bu proje, Arduino Board'unuza 18 LED (6 Kırmızı + 6 Mavi + 6 Sarı) bağlamanıza ve bilgisayarınızın Ses Kartının gerçek zamanlı sinyallerini analiz etmenize ve bunları aktarmanıza yardımcı olacaktır. Vuruş efektlerine göre onları aydınlatmak için LED'ler (Snare, High Hat, Kick)