İçeriden mikro kontrolörler için gerekli PCB devre tasarımı büyük bir projedir. Gelişmiş mikrokontrolörler için, veri çarşafları ve teknik belgeler yalnız yüzlerce sayfa uzunluğu olabilir.
Devre tasarlamaya başlamadan önce, konudaki bütün an a komponentlerin operasyonunun akış çizgisini çizdirmek en iyisi, mikro kontrolleyici ile bir arayüz sahip tüm periferal cihazlar de dahil.
ARM Cortex-M mikro denetleyici
Bu makale ARM Cortex-M mikrokontrolörünü indirmek için gereken PCB devre masası tasarımı düşüncelerine odaklanacak. ARM Cortex-M mikrokontrolörler farklı çep üreticilerinden farklı versiyonlarda kullanılır.
Tipik 8-bit mikro kontrolleyicilerle karşılaştırıldı, ARM Cortex-M 32-bit mimarlığıyla özellikle şiddetli ve hesaplı şiddetli çalışma için uygun. Eğer daha fazla hafıza kapasitesi gereken ve gelecekte genişleme ihtiyaçları için sistem platformu göndermesini kolaylaştırabilecek uygulamalar varsa 32 bit mikrokontrolörlerin de avantajları vardır.
Tartıştığımız ARM Cortex-M mikrokontrolörü ST Mikroelektronik tarafından üretilen STM32 ailesi. Daha doğrusu, STM32F4 serisine odaklanacağız.
Ancak STM32 ailesi, STM32L serisi gibi ultra-düşük güç STM32L serisi ve STM32F4 versiyonundan daha yüksek ve daha düşük performans serisi gibi birçok modeller içeriyor. En etkili versiyon, saniye 1 milyar talimatı gerçekleştirebilecek STM32F7. En azından etkili modeller arasında, saniyede sadece 26 milyon talimatı gerçekleştirir.
Güç tasarımı
Dönüş elektrik tasarımının en önemli tarafından biridir. Elektrik tasarımın sonraki sahnesi ve yerleştirme yapılandırmasına karar vermek için beklemeyin.
Mikrokontrolör tarafından kullanılan şu anki, operasyon voltasyonu, saat frekansiyonu ve giriş/çıkış pinlerin yükü gibi birçok faktörler tarafından belirlenir.
1uF ve 100nF keramik kapasiteleri (1. görüntü C7 ve C8 gibi) MCU'daki her güç VDD pin için güç deşikliği sağlamak için mümkün olduğunca yakın düzenlenmiş olmalı. Ayrıca, VDD'yi sağlayan ana devre düzenleyicisi üzerinde IC pozisyonunun yakınlarında 4.7uF keramik kapasitörü (Figure 1'de C1) kurulmalı.
Analog-digital dönüştürücüler (ADC) ile mikrokontrolörler genelde bağımsız güç (VDDA) ve toprak pins (VSSA) analog sinyaller için dışında kullanılır. Bu piyonların seslerin özel kaçınmasına ihtiyacı var.
Eğer elektrik teslim voltajınız mikrokontrolörünün girdi voltajının üst s ınırından yüksek ise, genelde bir adım a şağı lineer düzenleyiciye ihtiyacınız olur. Örneğin, Texas Aletleri tarafından üretilen TPS795xx özellikle gürültü özellikleri düşük ve şimdiye kadar 500mA yükselebilir.
Eğer elektrik teslim voltajınız mikrokontrolör tarafından gereken voltajdan daha yüksektirse, adım a şağı değiştirme düzenleyicisi daha iyi bir seçim olacak. Girdi voltajı çıkış voltajından çok yüksek olduğunda, lineer regulatör çok fazla güç kaybedecek.
Ancak, genelde lineer düzenleyici ile değiştirme düzenleyicisinin çıkış voltajını altına düzenlemek en iyidir, çünkü lineer düzenleyici tarafından sunulan voltaj sesi çok daha düşük.
saat
STM32F4 iç veya dış sistem saatleri ile çalıştırılabilir. Başlangıçta kullanılan sistem saati iç saat (16 MHz). Sistem başlatıldıktan sonra, dış saat kaynağı yazılım üzerinden seçilebilir.
STM32F4'deki saat kilidi dışarıdaki 4-26 MHz kvartz kristali sürebilir (Şekil 1'de X1'i görün) ya da 50 MHz'e kadar dışarıdaki saat kaynağını kullanabilir.
Kristal yapılandırması veri çarğındaki talimatları kesinlikle uymalı. Genelde konuşurken, sürücü kısa olmalı ve kristal üreticisi tarafından önerilen değer ile kristal yükü kapasitesi kısa olmalı.
GPIO
Mikrokontrolör üzerindeki genel amaç girdi ve çıkış (GPIO) pinleri programlı ve yazılım üzerinden girdi veya çıkış olarak ayarlanabilir.
Örneğin, Figure 1'deki S1 giriş olarak programlandırılmış bir GPIO pin ile bağlı bir düğme. STM32'nin in şa edilmiş çekme dirençlerini temin ediyor, bu yüzden bu düğme dış çekme dirençlerini kurmak zorunda değildir. Bu örnekte GPIO çıkış LED kullanılır.
Çoğu GPIO pinleri de diğer fonksiyonlar var, ve çip üzerindeki çeşitli periferal komponentler, bu çoklu fonksiyonlu pinlerle dışarıdaki dünyayla iletişim kurarlar.
Bütün iç fonksiyonlar her GPIO pipini aracılığıyla kullanılamaz ve izlenecek sıkı pin haritaları vardır. Bu yüzden kullanılacak hangi pinleri seçerken veri tablosuna referans edin.
GPIO pinleri farklı yükleri sürmek için kullanılabilir, ve pinlerin çoğu 25 mA'ye kadar akışını sağlayabilir veya karşılaşabilir. Ancak genelde konuşurken, GPIO sürücünün yükünü azaltmak için dış sürücü devre kullanmak daha iyi bir tasarım. MN1 sürücü LED'lerin örneğine 1. Şekil'e bakın.
Tüm GPIO pinlerin toplam a ğırlığının üst sınırını ve üst sınırını gösteriyor.
Periferik komponentleri bağla
STM32 UART, I2C, SPI ve USB arayüzleri ile seri sinyal bağlantısı sağlar.
Örneğin, Figure 1'de, I2C otobüsünden mikrokontrolörle bağlı sıcaklık sensörü (U2-LM75BDP) var. I2C otobüsünde iki çekilme direktörü (R2, R3) açık sürücüye bağlanmak için I2C otobüsünde gerekli.
Küçük hızlı sensörler gibi çoğu uygulamalar için, I2C'i seri protokolü olarak kullanmayı tercih ediyorum çünkü iletişim için sadece iki kablo kullanıyor. Ayrıca, her periferik komponenti işlemek için çalışma limanı seçmek için SPI'nin aksine, I2C tek adresi kullanır.
SPI otobüsü Invensensense tarafından üretilen MPU-9250 dokuz aksi hareket sensörü ile bağlantılı. MPU-9250, üç aksi akselerometer, üç aksi giroskop ve üç aksi magnetometri içeriyor.
Programlama bağlantısı
STM32F4 sistem içinde iki program düzenleme (ISP) arayüzlerini temin eder: seri satır arızasızlığı (SWD) ve JTAG. STM32'nin düşük fiyatlı versiyonu sadece SWD arayüzünü sağlar. SWD ve JTAG mikrokontrolörler için en sık kullanılan iki programlama arayüzü.
sonuç olarak
Bu makalede, mikrokontrolörün PCB devrelerini tartıştık ve girdi düğmelerini okuyabilen STM32F4'i tanıttık, LED'leri kullanıp I2C sıcaklık sensörleri ve SPI hareket sensörleri ile iletişim kurabilecek.