PIC mikrokontrolörleri için basit bir JDM programcısı - Mikrokontrolör programcıları - Mikrokontrolör cihaz devreleri. Pasif bileşenlerde PIC için en basit JDM programlayıcı Programlayıcıyı bağlarken bağlantı noktası ve protokol ayarları

Bir gün pic16f628a için basit bir LC metre toplamaya karar verdim ve doğal olarak bunun bir şeyle parlatılması gerekiyordu. Eskiden fiziksel COM bağlantı noktasına sahip bir bilgisayarım vardı, ancak artık yalnızca USB'm ve pci-lpt-2com kartım var. Başlamak için basit bir JDM programcısı topladım, ancak ortaya çıktığı gibi ne pci-lpt-com kartıyla ne de usb-com adaptörüyle (RS-232 sinyallerinin düşük voltajı) çalışmak istemedi. Sonra USB pic programcılarını aramak için acele ettim, ancak ortaya çıktığı gibi, her şey doğal olarak sahip olmadığım pahalı pic18f2550/4550 kullanımıyla sınırlıydı ve eğer çok istersem bu kadar pahalı MK'leri kullanmak üzücü. zirvelerde nadiren bir şey yaparım (av- Evet, onları flaşlamak sorun değil, çok daha ucuzlar ve bana öyle geliyor ki üzerlerine program yazmak daha kolay). İnternette uzun süre EXTRA-PIC programcısı ve onun çeşitli varyantları hakkındaki birçok makaleyi araştırdıktan sonra yazarlardan biri, extrapic'in herhangi bir com bağlantı noktasıyla ve hatta bir usb-com adaptörüyle çalıştığını yazdı.

Bu programlayıcının devresi max232 mantık seviye dönüştürücüsünü kullanır.

USB adaptörü kullanıyorsanız USB'yi usart TTL'ye, TTL'yi RS232'ye, RS232'yi iki kez TTL seviyelerine dönüştürmenin çok aptalca olacağını düşündüm, eğer USB'den RS232 portunun TTL sinyallerini alabiliyorsanız - usart dönüştürücü çipi

Ben de yaptım. CH340G yongasını (8 com port sinyalinin tümüne sahip olan) aldım ve max232 yerine bağladım. Ve olan da buydu.

Devremde ekstra zirvede olmayan bir jp1 jumper'ı var, onu kurdum çünkü TX çıkışının TTL seviyesinde nasıl davranacağını bilmiyordum, bu yüzden onu kalan boş NAND'a çevirmeyi mümkün kıldım elemanı ve ortaya çıktığı gibi, TX pininde mantıksal bir tane vardı ve bu nedenle açıldığında VPP pininde 12 volt var, ancak programlama sırasında hiçbir şey olmayacak (her ne kadar yazılımda TX'i ters çevirebilseniz de) .

Tahtayı monte ettikten sonra test etme zamanı geldi. Ve işte asıl hayal kırıklığı geldi. Programcı hemen belirlendi (ic-prog programıyla) ve çalışmaya başladı, ama çok yavaş! Prensip olarak - beklendiği gibi. Daha sonra com port ayarlarında maksimum hızı (128 kilobaud) ayarladım ve bulunan tüm programları JDM için test etmeye başladım. Sonuç olarak PicPgm'nin en hızlı olduğu ortaya çıktı. Pic16f628a cihazım tamamen yanıp söndü (hex, eeprom ve config) artı yaklaşık 4-6 dakika boyunca doğrulama yapıldı (okuma yazmaktan daha yavaştır). IcProg da çalışır ancak daha yavaştır. Hiçbir programlama hatası yoktu. Ayrıca eeprom 24c08'i flashlamayı denedim, sonuç aynı - her şey dikiyor ama çok yavaş.

Sonuçlar: programcı oldukça basittir, pahalı parçalar içermez (CH340 - 0,3-0,5 $, k1533la3 genellikle radyo çöpleri arasında bulunabilir), herhangi bir bilgisayarda, dizüstü bilgisayarda çalışır (ve hatta Windows 8/10'da tabletleri bile kullanabilirsiniz) ). Eksileri: çok yavaş. Ayrıca VPP sinyali için harici güç gerektirir. Sonuç olarak, bana öyle geldi ki, tepe noktalarının seyrek olarak yanıp sönmesi için, ellerinde gerekli bağlantı noktalarına sahip eski bir bilgisayarı olmayanlar için bu, tekrarlanması kolay ve ucuz bir seçenektir.

İşte bitmiş cihazın bir fotoğrafı:

Şarkının dediği gibi, "Onu eskiden yarattığım şeyden yarattım." Parça seti çok çeşitlidir: hem SMD hem de DIP.

Devreyi tekrarlamaya cesaret edenler için usb-uart dönüştürücü olarak hemen hemen her şey uygun olacaktır (ft232, pl2303, cp2101 vb.), k1533la3 yerine k555 uygun olacaktır, bence k155 serisi veya yabancı bir analog bile 74als00, k1533ln1 türündeki mantıksal NOT öğeleriyle bile çalışabilir. Kendi baskılı devre kartımı takıyorum, ancak herkes mevcut elemanlara göre kabloları yeniden çizebilir.

Radyo elemanlarının listesi

Tanım Tip Mezhep Miktar NotMağazanot defterim
IC1 YongaCH340G1 Not defterine
IC2 YongaK1533LA31 Not defterine
VR1 Doğrusal regülatör

LM7812

1 Not defterine
VR2 Doğrusal regülatör

LM7805

1 Not defterine
VT1 Bipolar transistör

KT502E

1 Not defterine
VT2 Bipolar transistör

KT3102E

1 Not defterine
VD1-VD3 Doğrultucu diyot

1N4148

2 Not defterine
C1, C2, C5-C7 Kapasitör100 nF5 Not defterine
C3, C4 Kapasitör22pF2 Not defterine
HL1-HL4 Işık yayan diyotHerhangi4 Not defterine
R1, R3, R4 Direnç

1 kOhm

3

Önerilen programcı, “Radyo” dergisinin 2, 2004 tarihli, “Modern PIC16, PIC12'nin PonyProg'da Programlanması” başlıklı bir yayına dayanmaktadır. Bu, evde PIC çiplerini flaşlamak için kullandığım ilk programlayıcım. Programcı, JDM programlayıcının basitleştirilmiş bir versiyonudur, orijinal devrede MAX232 mikro devre şeklinde bir RS-232'den TTL'ye dönüştürücü vardır, daha evrenseldir, ancak onu "dizlerinizin üzerine" monte edemezsiniz. Bu devrenin hiçbir şekilde tek bir aktif bileşeni yoktur, az parça içermez ve oldukça basittir; baskılı devre kartı kullanılmadan montajı yapılabilir.

Pirinç. 1: Programlayıcının şematik diyagramı.

Devre işleminin açıklaması
Programlayıcı devresi Şekil 2'de gösterilmektedir. 1. CLK (saat), DATA (bilgi), Upp (programlama voltajı) devrelerindeki dirençler akım akışını sınırlamaya yarar. PIC kontrolörleri dahili zener diyotlarla bozulmaya karşı korunur, dolayısıyla TTL ile RS-232 mantığı arasında bir miktar uyumluluk vardır. Sunulan devre, COM portundan pin 5'e göre pozitif voltajı "alan" ve bunu kontrol cihazına güç sağlamak için aktaran VD1, VD2 diyotlarını içerir, bu sayede bazı durumlarda ek bir güç kaynağından kurtulmak mümkündür.

Kurulum
Uygulamada, bu programcının ilk denemede ayar yapmadan çalışması her zaman mümkün değildir, çünkü... Bu devrenin çalışması büyük ölçüde COM portunun parametrelerine bağlıdır. Ancak benim için XP altında Gigabyte 8IPE1000 ve WinFast adlı iki anakartta her şey hemen çalıştı. Arızalı, daha karmaşık bir programcı devresiyle baş edemeyecek kadar tembelseniz, bunu birleştirmeye çalışmalısınız. Etkileyebilecek bazı şeyler şunlardır:

Mat ne kadar yeniyse. Geliştiriciler bu bağlantı noktalarına daha az önem veriyor çünkü bu bağlantı noktaları uzun süredir geçerliliğini yitirmiş durumda. Yine satın alınan cihaz uygun olmayabilirse de USB-COM adaptörü satın alarak bu durumdan kurtulabilirsiniz. Gerekli parametreler aşağıdaki gibidir: değişken voltaj, konektörün 5. pinine göre en az -10V ile +10V (log. 0 ve 1) arasında değişmelidir. Sağlanan akım en azından 5. kontak ile test edilen kontak arasına 2,7 kOhm'luk bir direnç bağlandığında voltaj 10V'un altına düşmeyecek şekilde olmalıdır (bu tür kartları kendim görmedim). Ayrıca portun kontrol cihazından gelen voltajları doğru bir şekilde belirlemesi gerekir; 0V'a yakın ancak 2V'den fazla olmayan bir voltaj seviyesinde sıfır belirlenir ve buna göre 2V'nin üzerindeki bir voltaj seviyesinde bir belirlenir.

Yazılımdan dolayı da sorunlar ortaya çıkabilir.
Bu özellikle LINUX işletim sistemi için geçerlidir, çünkü... Wine, VirtualBox gibi emülatörlerin varlığı nedeniyle bağlantı noktaları düzgün çalışmayabilir ve bunlardan pek çok özellik gerekir. Bu sorunlara başka bir yazımda daha detaylı değineceğim.

Bu özellikleri bilerek kurulumuna başlayalım.
Bunun için ICProg 1.05D programına sahip olmak çok arzu edilir.
Program menüsünde öncelikle ayarlardan uygun ayarı seçmelisiniz. bağlantı noktası (COM1.COM2), JDM programlayıcıyı seçin. Daha sonra “Ayarlar” menüsünden “Donanım Kontrolü” penceresini açın. Bu menüde kutuları tek tek işaretlemeniz ve bağlı konnektörün kontaklarındaki voltajı ölçmek için bir voltmetre kullanmanız gerekir. Gerilim parametreleri normlara uymuyorsa, maalesef bu, çalışamamanın nedeni olabilir, o zaman RS-232 TTL dönüştürücülü bir devre kurmanız gerekecektir. Tüm kutuları kontrol ettikten sonra zener diyotta yaklaşık 5V'luk bir besleme voltajının oluşturulduğundan emin olmanız gerekir. Voltajlar normalse ve kurulum hatası yoksa her şey çalışmalıdır. Denetleyiciyi sokete yerleştiriyoruz, ürün yazılımını açıyoruz, programlıyoruz. "Verileri ters çevir" gibi onay kutularını etkinleştirmenize gerek yoktur (tümü işaretlidir). Ayrıca, bazı kontrolör gruplarının standart olmayan parametrelere sahip olabileceğini ve bunların yanıp sönmesinin mümkün olmadığını unutmayın; bu gibi durumlarda, bu programlayıcıyla besleme voltajını yalnızca 5V'tan 3-4V'a düşürmeyi deneyebilirsiniz. buna göre bağlanın. zener diyotu, LVP (düşük voltaj programlama) modunun hatalı etkinleştirilmesi için kontrol cihazına bakın, bunun nasıl önleneceği, belirli bir kontrol cihazı türü için internette okuyabilirsiniz. Sorunlu kontrolörün programlama voltajını, yalnızca ek bir güç kaynağından beslenen ortak bir yayıcıya sahip bir amplifikasyon aşaması ekleyerek devreyi karmaşıklaştırarak arttırmak muhtemelen mümkündür.

Şimdi cihazın güç kaynağındaki sorun hakkında daha fazla konuşalım. Programcı Linux altında ICProg programları ve konsol picprog'u ile test edilmiştir, ek bir güç kaynağı bağlarsanız JDM'yi destekleyen herhangi bir programla çalışmalıdır (zener diyota 1 kOhm'luk bir dirençle bağlanır, bu durumda dirençli diyotlar olabilir) tamamen hariç tutulmuştur). Gerçek şu ki, programcının bireysel yazılımlar için kontrol algoritmaları farklıdır, ICProg programı en iddiasız olanıdır. Windows işletim sisteminde bu programın kullanılmayan pin 2'de gerekli besleme voltajını yükselttiği, aynı programın Linux'ta başka bir mat üzerindeki emülatör altında olduğu fark edildi. Kart artık bunu yapamıyordu ancak programlama voltajından güç alınarak bir çıkış yolu bulundu. Genel olarak bu programlayıcıyı ICProg ile ek güç gerektirmeden kullanabileceğinizi düşünüyorum. Diğer yazılımlarda bu pek garanti edilemez; örneğin, Ubuntu depolarındaki güç olmadan "yerel" picprog, programcıyı algılamaz ve "JDM donanımı bulunamadı" mesajını görüntüler. Muhtemelen ya programlama voltajını uygulamadan bazı verileri alıyor ya da bunu çok hızlı yapıyor, böylece filtre kapasitörünün henüz şarj olma zamanı kalmıyor.

Temel bir programcı olarak, NTV programcısı adını verdiğimiz JDM uyumlu bir programlayıcıyı orijinal tasarımı kullanarak monte etmenizi öneririz. Aşağıda NTV programlayıcısının bir diyagramı bulunmaktadır (DB9 soketi kullanan; fişle karıştırılmaması gereken).

Programcı, bu şemaya göre tekrar tekrar ve doğru bir şekilde kontrolörleri (ve diğerlerini) bir araya getirdi ve acemi radyo amatörleri tarafından tekrarlanmak üzere önerilebilir.

Bu programcı dizüstü bilgisayarlara bağlandığında ÇALIŞMAZ çünkü... Mobil sistemlerdeki RS-232 arayüzünün (COM portu) sinyal seviyeleri hafife alınmaktadır. Ayrıca donanımın bağlantı noktasında akımı kaydettiği modern bilgisayarlarda da çalışmayabilir. Bu yüzden ön yargılı olmayın, toplayın ve elinize geçen tüm bilgisayarlarda test edin.

Yapısal olarak, programlayıcı kart, baskılı devre kartının kontak pedlerine lehimlenen DB-9 konnektörünün kontakları arasına yerleştirilmiştir. Aşağıda tahtanın bir çizimi ve bir araya getirilmiş programcının bir fotoğrafı bulunmaktadır.



Bilgileri tamamlamak için, mikrodenetleyiciler için 8 pinli bir pakette ( ve ) monte ettiğim benzer bir programcının daha olduğunu söylemek gerekir. Programcı aynı zamanda bu mikrodenetleyicilerle de harika çalışır. Aşağıda panonun çizimi ve fotoğrafları bulunmaktadır.

Beğendiğiniz bir devreyi mikrodenetleyici üzerine hızlı bir şekilde monte etmek birçok radyo amatör için sorun değildir. Ancak mikrodenetleyicilerle çalışmaya başlayan birçok kişi, onu nasıl programlayacağı sorusuyla karşı karşıyadır. En basit programcı seçeneklerinden biri JDM programlayıcısıdır.

Programcı ProgCode v 1.0

Bu program WindowsXP'de çalışır. Orta ailenin PIC denetleyicilerinin (PIC16Fxxx) bilgisayarın COM bağlantı noktası üzerinden programlanmasına izin verir. Ayarlarda seçilen bağlantı noktasında programlayıcı yoksa programlayıcı bağlantı göstergesi (pencerenin sağ üst köşesinde) kırmızıya döner. Programlayıcı bağlı ise program bunu algılar ve sağ üst köşedeki gösterge Şekil 1’deki şekli alır.

Program penceresinin sol tarafında bir kontrol paneli bulunmaktadır. Bu panel, araç çubuğundaki düğmeye tıklanarak veya pencerenin sol kenarına tıklanarak simge durumuna küçültülebilir (bu, program penceresi tam ekrana büyütüldüğünde kullanışlıdır).

Şekil (ProgCode v1.0 programının ekran görüntüsü)


Programa bir HEX dosyası yüklenirse, önce yüklenen ürün yazılımının tasarlandığı denetleyiciler listesinden MK'yi seçmeniz önerilir. Bu yapılmazsa, listede seçilenden daha büyük belleğe sahip bir mikrodenetleyici için tasarlanan dosya kesilecek ve programın bazı kısımları kaybolacaktır - bu dosyayı yükleme seçeneğiyle bir uyarı görüntülenir.

Bu olmazsa, dosyayı programa yükledikten sonra istediğiniz denetleyiciyi seçebilirsiniz.

SFR Dosya Formatı

ProgCode programcısı kendi dosya formatıyla çalışmayı destekler. Bu dosyalar .SFR uzantısına sahiptir ve mikro denetleyiciye yönelik program hakkında ek bilgileri saklamanıza olanak tanır. Bu dosya mikrodenetleyicinin türü hakkında bilgi depolar. Bu, bir SFR dosyasını yüklerken ayarlarda MK tipini önceden seçme konusunda endişelenmenize olanak sağlar.

Bir programlayıcıyı bağlarken bağlantı noktası ve protokol ayarları

Programı kurduktan sonra programcının bu sayfada verilen JDM devresi ile çalışması için gerekli olan tüm ayarlar varsayılan olarak ayarlanmıştır.
Yukarıdaki devrede sinyalin ters çevrilmesi yalnızca OutData çıkışı için gereklidir, çünkü bu devrede sinyal eşleşen transistör tarafından ters çevrilir. Diğer tüm pinlerde ters çevirme devre dışıdır.



Darbe gecikmesi 0'a eşit olabilir. Ayarlanması, yanıp sönemeyen "özellikle zor" denetleyici örnekleri için sağlanmıştır. Aynı durum kayıt duraklatma izni için de geçerlidir; varsayılan olarak sıfırdır. Bu ayarları artırırsanız kontrol cihazı programlama süresi önemli ölçüde artacaktır.

Mikrodenetleyiciye yazılan her şeyin doğruluğunu ve kaynak dosyayla uyumluluğunu "anında" kontrol etmeniz gerekiyorsa, "yazma sırasında kontrol et" onay kutusu işaretlenmelidir. Bu kutunun işaretini kaldırırsanız, kontrol hiçbir şekilde gerçekleştirilmeyecek ve bu tür hatalar mevcut olsa bile herhangi bir hata mesajı verilmeyecektir.
Bağlantı noktası hızını seçin - hız herhangi bir olabilir. Bir JDM programcısı için bu parametrenin hiçbir anlamı yoktur.

WindowsXP, COM bağlantı noktaları aracılığıyla iletilen bilgilerin ara belleğe alınmasını kullanır. Bunlara FIFO tamponları denir. JDM yoluyla programlama yaparken hataları önlemek için bu mekanizmanın devre dışı bırakılması gerekir. Bunu Windows Aygıt Yöneticisi'nde yapabilirsiniz.

Kontrol paneline gidin ve ardından:
Yönetim - Bilgisayar Yönetimi - Aygıt Yöneticisi

Ardından JDM programlayıcısının bağlı olduğu bağlantı noktasını seçin (örneğin COM1) - özelliklere bakın - bağlantı noktası parametreleri sekmesi - ek. Ve "FIFO arabelleklerini kullan" kutusunun işaretini kaldırın.

Şekil - Bir JDM programlayıcıyla çalışacak şekilde bir COM bağlantı noktasının ayarlanması



Bundan sonra bilgisayarı yeniden başlatın.


Yerel Proje Gezgini

Program, denetleyicileri doğrudan programlamanın yanı sıra, hem yerel bilgisayar klasörlerinde hem de İnternette bulunan MK'deki projeler için kullanışlı bir tarayıcı sağlar. Bu kullanım kolaylığı için yapıldı. Genellikle gerekli projeler farklı klasörlerde bulunur ve projeyi görüntülemek için doğru dizine ulaşmak için zaman harcamanız gerekir. Burada gerekli klasörleri kolayca klasör listesine ekleyebilir ve iki veya üç fare tıklamasıyla herhangi bir projeyi görüntüleyebilirsiniz.

Tarayıcı panelinde ona çift tıkladığınızda, programın kendisinde herhangi bir dosya açılacaktır - bu resimler, html dosyaları, doc, rtf, djvu (yüklü eklentilerle), pdf, txt, asm için geçerlidir. Dosya, bilgisayarda yüklü harici bir program kullanılarak bir tarayıcıda çift tıklatılarak da açılabilir. Bunun için istenilen dosya tipinin uzantısının "Dosya İlişkileri" listesine girilmesi gerekmektedir. Açılış programının yolunu belirtmezseniz, Windows varsayılan olarak dosyayı programda açacaktır (bu, her zaman açıkça açılmayan arşivleri açmak için uygundur). Listede açılış programının yolu belirtilirse dosya belirtilen programda açılacaktır. SPL, LAY, DSN gibi dosyaları bu şekilde görüntülemek uygundur.

Şekil (ProgCode v1.0 program tarayıcısının ekran görüntüsü)



Dosya ilişkilendirme ayarları penceresi şöyle görünür:




İnternet Proje Tarayıcısı

İnternet'teki proje tarayıcısı, tıpkı yerel proje tarayıcısı gibi, birkaç tıklamayla İnternet'te istediğiniz siteye hızlı bir şekilde gitmenize, projeyi görüntülemenize ve gerekirse programı hemen MK'ye flaşlamanıza olanak tanır.



İnternetteki projeleri incelerken, proje sayfasında SFR uzantılı bir dosyaya bağlantı varsa (bu, ProgCode programının dosya formatıdır), o zaman üzerine tıkladığınızda böyle bir dosya yeni bir dosyada açılacaktır. program sekmesine tıklayın ve mikrodenetleyiciye flaş yapmak için hemen hazırdır.
Bağlantıların listesi "Düzenle" butonu kullanılarak düzenlenebilir. Bu, bağlantı listesini düzenlemek için bir pencere açacaktır:





Çip programlama işleminin açıklaması

Çoğu modern IC, I2C veya benzer protokoller kullanılarak programlanan flash bellek içerir.
Yeniden yazılabilir bellek, PIC, AVR ve diğer denetleyicilerde, 24Cxx ve benzeri bellek yongalarında, MMC ve SD gibi çeşitli bellek kartlarında, bilgisayara bir USB konektörü aracılığıyla bağlanan sıradan USB flash kartlarda bulunur.

Mikrodenetleyicinin flash belleğine bilgi yazmayı düşünelim. PIC 16F 628A

2 satır DATA ve CLOCK vardır hangi yolla iletilirbilgi. Astar SAAT saat darbelerini sağlamaya yarar ve hat VERİ bilgi iletmek için.

Mikrodenetleyiciye 1 bitlik bilgi aktarmak için veri hattı (DATA) üzerinde 0 veya 1 (bitin değerine bağlı olarak) ayarlayıp saat hattında (1'den 0'a geçiş) voltaj düşüşü oluşturmanız gerekir ( SAAT).
Bir denetleyici için bir bit yeterli değildir. Bu 6 bitlik mesajın komut olarak algılanması için beş tane daha bekler. Denetleyici komutları gerçekten sever ve bunların 6 bitten oluşması gerekir - PIC 16'nın doğası budur.
İşte PIC'in anlayabileceği komutların listesi ve anlamları. Çok fazla komut yok - bu denetleyicinin kelime dağarcığı azdır, ancak bunun tamamen aptalca olduğunu düşünmeyin - daha az komuta sahip cihazlar var

"LoadConfiguration" 000000 - Yapılandırma yükleniyor

"LoadDataForDataMemory" - 000011 - Veriler veri belleğine (EEPROM) yükleniyor
"IncrementAddress" 000110 - PC MK'nin adresini artırın
"ReadDataFromProgramMemory" 000100 - Program belleğinden veri okuma
"ReadDataFromDataMemory" 000101 - Veri belleğinden (EEPROM) veri okuma
"BeginProgrammingOnlyCycle" 011000 - Programlama döngüsünü başlat
"BulkEraseProgramMemory" 001001 - Program belleğinin tamamen silinmesi
"BulkEraseDataMemory" 001011 - Veri belleğinin (EEPROM) tamamen silinmesi

Kontrolör bu komutlara farklı şekillerde tepki verir. Farklı şekillerde, komutu verdikten sonra onunla konuşmaya devam etmeniz gerekir.
Tam teşekküllü bir programlama işlemine başlamak için ayrıca kontrol cihazının MCLR pinine 12 volt voltaj uygulamanız ve ardından ona besleme voltajı uygulamanız gerekir. Bu voltaj besleme dizisinde belli bir anlam vardır. Güç uygulandıktan sonra, eğer PIC dahili RC osilatöründen çalışacak şekilde yapılandırılmışsa, kendi programını çalıştırmaya başlayabilir; bu, programlama sırasında arıza kaçınılmaz olduğundan buna izin verilmez.
MCLR'ye ön 12 volt beslemesi, böyle bir gelişmeyi önlemenizi sağlar.
Komuttan sonra MK programlarının flash belleğine bilgi yazarken

"LoadDataForProgramMemory" 000010 - Verileri program belleğine yükleme

Verilerin kendisini denetleyiciye göndermek gerekir - 16 bit,
hangisi şuna benziyor:

“0xxxxxxxxxxxxxx 0.”

Bu kelimedeki çarpılar verinin kendisidir ve kenarlardaki sıfırlar çerçeve olarak gönderilir - bu PIC 16 için standarttır. Bir kelimede yalnızca 14 anlamlı bit vardır. Bu kontrolör serisi 14 bitlik bir komuta sahiptir. temsil biçimi.
Veri sözcüğü iletimi bittikten sonra PIC bir sonraki komutu bekler.
Amacımız MK'nin program hafızasına bir kelime yazmak olduğundan bir sonraki komut komut olmalıdır.

"BeginEraseProgrammingCycle" 001000 - Bir programlama döngüsünü başlatın

Bunu aldıktan sonra denetleyici, kayıt işlemini tamamlamak için ihtiyaç duyduğu 6 milisaniye boyunca dış dünyayla bağlantısını keser.

Mikrodenetleyici pinlerindeki sinyaller, özel programlar - programcılar kullanan bir bilgisayar tarafından üretilir. Sinyal iletimi için COM, LPT veya USB portları kullanılabilir. PonyProg, IsProg, WinPic800 gibi programlar JDM programlayıcı ile çalışır.


JDM programcı devresi

Şekilde çok basit bir programlayıcı devresi gösterilmektedir. Bu devre, gerilim besleme sırasının kontrolünü uygulamamasına rağmen çok basittir ve böyle bir devreyi minimum parça kullanarak çok hızlı bir şekilde monte etmek mümkündür.
Şekil (JDM programlayıcı devresi)


Bir programcıyı bilgisayara bağlarken sorulan sorulardan biri seçici izolasyonun nasıl sağlanacağıdır. Devrede bir arıza olması durumunda COM portunun zarar görmesini önlemek için. Bazı tasarımlar, seçici izolasyon ve sinyal seviyesi eşleştirmesi sağlayan MAX232 IC'yi kullanır. Bu şemada sorun daha basit bir şekilde - pil gücü kullanılarak - çözülür. Bilgisayardan gelen sinyal seviyesi VD1, VD2 ve VD3 zener diyotları ile sınırlıdır. JDM programlayıcı devresinin basitliğine rağmen, çoğu PIC mikro denetleyici tipini programlamak için kullanılabilir.

COM6(DSR) ve COM7(RTS) pinleri arasındaki jumper, programın programcının bilgisayara bağlı olduğunu belirleyebileceği şekilde tasarlanmıştır.

Programlayıcı çıkışlarının belirli bir MK'ye bağlantısı MK tipine bağlıdır. Çoğu zaman, programlayıcı kartına belirli bir kontrolör türü için tasarlanmış birkaç panel monte edilir.

Tablo, programlama sırasında bazı MK türlerinin bacaklarının amacını göstermektedir.

PIC16F84 ve PIC16F84A MCU'lar programlama amaçlı aynı pin düzenine sahiptir.



PIC16Fxxx serisinin mikro denetleyicileri için pinlerin atanması, kasanın türüne bağlı olarak çoğu durumda standarttır, ancak bu konuda herhangi bir şüphe varsa, o zaman belirli bir MK örneği için veri sayfasını kontrol etmek en güvenilir yoldur. Belgelerin bir kısmı Rus web sitesinde mevcuttur. http://microchip.ru Veri sayfalarının ve diğer belgelerin eksiksiz bir koleksiyonu PIC mikrodenetleyici üreticisinin web sitesinde bulunmaktadır: http://microchip.com

Projeler dizini

Program, doğrudan dizin sayfasına gitmenizi, birkaç tıklamayla istediğiniz projenin açıklamasını görüntülemenizi ve programı hemen denetleyiciye yüklemenizi sağlar.



Denetleyiciyi seçilen ürün yazılımıyla flaşlamanız gerekiyorsa SFR dosyasına tıklayın, örneğin Timer_a.sfr
Program dosyayı sunucudan yeni bir sekmeye indirir.



Bundan sonra geriye kalan tek şey, eğer daha önce yapılmadıysa, MK'yi programlayıcı soketine takmak ve "Tümünü yaz" düğmesine tıklamaktır.
Program MK'ye kaydedilmiştir. Bundan sonra kontrolör cihaz kartına takılır ve cihaz çalışmaya hazır hale gelir.
Fok
Konunun devamı:
Çözümler

VKontakte'ye kaydolmak basittir, ancak ileri yaştaki meslektaşlarımın çoğu bunun zor olduğunu düşünüyor. Şu anda size VKontakte'ye nasıl ücretsiz kayıt olabileceğinizi gösteriyorum....