Her şeyden önce, bunun dünyadaki arduino ile ilgili tüm sorunları çözmek için bir rehber değil, sadece yüzleşmek zorunda olduğumları söylemek istiyorum. Bununla birlikte, bu sorunlarla karşı karşıya kaldığımda, bunların nasıl çözüleceği hakkında bilgi aramak için çok zaman harcadım, bu yüzden makalenin yararlı olacağını düşünüyorum. Ayrıca, derleme ile ilgili sorunları da dikkate almayacağım. Derleme hataları programlama hatalarıdır, bunlar zaten özel durumlardır ve çeşitli forumlarda özel olarak değerlendirilirler.
Yöntem 1. Standart bellenim
Arduino'nun programlama açısından basitliğine rağmen, bu aşamada bile problemler ortaya çıkabilir. Kural olarak, Çin klonlarını kullanırken ortaya çıkarlar. Ama sistematik olacağız. Arduino'yu geliştiricilerin istediği şekilde programlamak için geliştirme ortamını tesis dışından indirmeniz ve yüklemeniz gerekir Arduino IDE ve talimatlara uygun şekilde kurun. İnternetin Rusça dil bölümünde bile, binlerce olmasa bile, bu konuda yüzlerce makale var; bunun üzerinde durmayacağım. Orijinal arduino kullanırken problemler ortaya çıkmamalıdır. Ama bizimle birlikte, kural olarak, herkes çok daha ucuz Çin klonları kullanıyor. Genel olarak, en azından performans açısından orijinalden farklı değildirler. Şahsen, bir Çin düzenim var Arduino Pro Mini A4 ve A5 kontakları ile birlikte geri kalanı ile, orijinal kartın düzeninden çok daha fazlasını seviyorum. Fakat aynı zamanda Çinliler, komünist sisteme rağmen aslında en gerçek kapitalistler ve ihracat için ellerinden geleni yapıyorlar. Bu arduino'nun USB arabiriminin yongaları da bu ekonomiye giriyor. Sorunların başladığı yer burasıdır. Gerçek şu ki, Çin klonlarında orijinal CH340 yongası kullanılmıyor. Ve böylece, yazılım ve sürücüleri yüklemek için tüm standart prosedürleri tamamladığınızı varsayacağız, ancak arduino dikilmez. İlk gittiğimiz şey BAŞLAT> Denetim Masası> Aygıt Yöneticisi. Burada iki noktaya dikkat çekiyoruz: USB denetleyicileri ve COM LPT bağlantı noktaları.
Öğe Bağlantı Noktaları (COM ve LPT) hayır, bu sorunu çözmenin ilk ipucu. Her şey yolundaysa, bir arduino bağlarken hangi bağlantı noktalarında yeni bir bağlantı noktası görünmelidir. Bu olmazsa, "USB denetleyicilerinde" neler olduğuna bakın. Bir arduino bağlarken, USB 2.0 Serial yazıtına sahip yeni bir cihaz görünmelidir. Bu aslında iyi bir işaret. Bilgisayar ona bağlı olduklarını görür, ancak kim anlayamazsa, arduinka yaşıyor ve sorun yakacak odun. Bu olmazsa, yöntem 2 ve yöntem 3'ü okuruz. Bu sorunu çözmek için yeni sürücüyü el ile yüklemeniz gerekir. Sürücüyü indirin, klasörü uygun bir yere koyun. Geri dönelim Cihaz yöneticisiVs. USB 2.0 Seri> RMB> Özellikler> Sürücü> Güncelleme> Bu bilgisayardaki sürücüleri ara ve sürücünün bulunduğu klasörü seçin. Bundan sonra, sistem sürücünün güvenilir kaynaklardan olmadığına yemin edebilir. hit yine de yükle.
Sürücü indirme
Sürücüyü indirdiniz, yüklediniz, ancak arduino hala dikilmiyor. Sorun hem fabrikadan hem de kullanıcının arızasından olabilir, önemli değil. Ne yapıyoruz? İkinci yönteme geçiyoruz.
Yöntem 2. TTL dönüştürücü ile bellenim
Seriden Başlayan Tüm Arduino Kartları NanoUSB arayüzüne sahip. dizi mini ve Pro mini bir tane yok ve sadece yanıp sönüyor TTL dönüştürücü. Ama gerçek şu ki, başka bir arduinka bu programcı tarafından dikiliyor. Eğer sahip değilseniz, özellikle satın almanızı tavsiye ederim, özellikle 50-60 rubleye mal olduğu için (yazma sırasında), bu bir kereden fazla kullanışlı olabilecek evrensel bir programcıdır. Bu nedenle, örneğin, onun yardımıyla, çok daha pahalı olan özel markalı programcılar satın almadan FlySky i6 radyo kontrol ekipmanımı ve Kenwood T2000 telsizi yeniden kırdım. Ama konudan uzaklaştım. Genel olarak, tüm arduino kartlarının sonuçları var RX ve Teksas (Bu, USB arabirim yongasını atlayarak arduino'yu flaş edebileceğiniz iletişim arayüzü "iletim / alım"). Ancak bu dönüştürücülerin farklı sürümleri de vardır. Benimkini aldığımda, en yaygın ve en ucuz çıktı olmayan bir dönüştürücüydü sıfırlamak. Böyle bir programcı tarafından arduino programlamanın özelliği, derlemenin sonunda ve yükleme başlangıcında, tahtadaki sıfırlama düğmesine basmanız gerektiğidir. Burada aslında biraz beceriye ihtiyacımız var. İlk kez kaçırdıysanız, düğmeye yaklaşık 2 saniye sıklıkta basmaya devam edin. Çarşamba 10 istek verir, eğer bunlardan birine girebilirseniz - voila, arduino'ya sorduk. Daha modern programcılar, aynı sıfırlamaya bağlanan ve otomatik olarak çeken beşinci bir pime sahiptir. Ama en önemlisi, nüansı tarif ettim. Başka bir an. Tipik olarak, RX'in TX'e bağlanması gerekir veya tersi de geçerlidir. Ancak nadir durumlarda (Çinliler) RX'i RX'e ve TX'i TX'e bağlamanız gerekir. Sadece yanlış işareti. Ve böylece, bu yardımcı olmazsa, yöntem 3'e gidin.
Ama sadece ekle yakacak odun CP2102 için
Özellikler.
Programcı sürücülerin yüklenmesini gerektirir, bununla ilgili hiçbir sorunum yok, başkaları fark etmedi, sadece sürücüyü CP2102'ye veya üreticinin sunduğu sürücüye koydu.
Yöntem 3. Doğrudan çip programlama
Sürümden beri Nano Arduino kartlarında devre içi programlama konnektörü vardır ISS . Bu, altı iğneli bir konektördür, kural olarak hiç kimse dikkat etmez. Bununla birlikte, mikrodenetleyiciyi hem fiziksel kısımda hem de yazılımda sadece atlanabilecek her şeyi atlayarak doğrudan, doğrudan flaş edebilirsiniz. En son arduino kartımı bu şekilde flaş etmek zorunda kaldım. Aslında, bu yöntemi kullanarak, Arduino önyükleyicisini atmega'da yanıp sönerek kendi arduino klonlarınızı oluşturabilirsiniz. Makalemde bunun hakkında yazdım spor roketinin aviyonikleri hakkında. Ama yine de, bununla ilgili değil. Ürün yazılımı için bu tür bir programlayıcıya ihtiyacınız vardır:
Sıradan USBasp, en yaygın AVR mikrodenetleyici programcısı. Aynı kuruş maliyeti.
Özellikler
Programlayıcının standart 10 pimli bir konektörü vardır, ancak kitte 6 pimli bir adaptör satın alabilirsiniz. Tabii ki, kendiniz yapabilir veya sadece kablolarla bağlayabilirsiniz, ancak çok daha kolay ve daha uygundur.
Ürün yazılımı standart bir şekilde yürütülmez. Başlamak için şu adrese gidin: Araçlar> Programcı> USBasp
ayrıca Programcı ile Çizim / İndirme.
Sorunlar
Dediğim gibi, burada karşılaştığım sorunları tarif ediyorum. Bu programcı ayrıca sürücüler gerektirir. Onları bulmak zor değil. Ancak, paradan tasarruf etmek için Çin'le iletişime geçerken, beklenmedik dönüşlere hazırlıklı olmanız gerekir. Şahsen, bu programcı ile çalışırken, bir zamanlar bir radyo hücresinde tarif ettiğim şu sorunla karşılaştım:
avrdude.exe: hata: vid = 0x16c0 pid = 0x5dc ile USB aygıtı "USBasp" bulunamadı
Afeti çözmek için uzun süre mücadele etti ve sadece yabancı forumlarda buldu. Ve böylece:
1) Bağlantıyı takiben LibUSB-64bit.zip arşivini indirin
2) Programlayıcıyı USB portuna bağlarız.
3) Arşivi açın ve paketlerini açtıkları yolda ilerleyin \ LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ x86
4) inf-wizard.exe dosyasını çalıştırın
5) Tıklayın sonraki
6) Seçin USBasp ve tıkla sonraki
7) Aşağıdaki alanlar bu şekilde doldurulur:
İleri'ye tıklayın
8) Oluşturulan dosyayı yol boyunca kaydedin:
LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ amd64 - 64 bit sisteminiz varsa veya
LibUSB-64bit \ libusb-win32-bin-1.2.1.0 \ bin \ x86 - 32 bit ise
9) Şimdi yükle'yi tıklayın
10) Sistem, sürücünün güvenilir kaynaklardan olmadığını bildirir. "Yine de Yükle" yi tıklayın
11) Sürücünün kurulumu başlayacaktır. Kurulum sırasında, bir USB cihazının bağlantısını kesme ve bağlama sesini duyarız. Yüklemenin sonunda Tamam'ı tıklatın.
Bazı ipuçları
Çok yaygın NRF24L01 modülleri büyük bir sıkışmaya sahiptir. Bu modüllerin normal ve kararlı çalışması için kapasitörü güç için en az 10 μF 5 V asmak gerekir, daha az arzu edilmez, daha fazla işe yaramaz. Ancak 10'da değilse, elbette 22 veya 47'de bahis yapın. Ayrıca, ona paralel olarak 10-100 nF'ye başka bir seramik asılması tavsiye edilir. Dahası, modülün kendisine mümkün olduğunca yakın, ideal olarak - sonuçlara. Aksi takdirde, modül görülüyor, ancak normalde iletim yapmıyor.
Bulgular ise RX ve Teksas bazı yürütme cihazı asılı - arduinka dikilmez. Önce flaş, sonra gerekli cihazı bu çıkışlara bağlayın.
Hepsi bu, umarım bilgiler birileri için faydalı olacaktır.
Çalışmanızdaki herkese iyi şanslar!