Modern harvard mimarisi MCU, yerleşik yazılımı depolamak için yerleşik flash belleği kullanır, bu nedenle ROM olarak adlandırılsa bile , salt okunur değildir. 8051’in Wikipedia makalesine göre, 8051’li modern mikrodenetleyici çoğu zaman şunları içeriyor:
Brown-out algılama, çip üzerinde osilatörler, kendiliğinden programlanabilen Flash ROM program belleği, ROM'da önyükleyici kodu, EEPROM uçucu olmayan veri depolama, I²C, SPI ve USB ana bilgisayar arabirimleri, CAN veya LIN veri yolu ile yerleşik sıfırlama zamanlayıcıları , PWM jeneratörleri, analog karşılaştırıcılar, A / D ve D / A dönüştürücüler, RTC'ler, ekstra sayıcılar ve zamanlayıcılar, devre içi hata ayıklama olanakları, daha fazla kesme kaynağı ve ekstra güç tasarrufu modları.
8051'de ayrıca seri bağlantı noktasını sağlayan yerleşik bir UART bulunur. Katıştırılmış cihazlarla çalıştığımdan bu yana bir süre geçti, ama hatırladığım şey şu - PIC mikroişlemcilerle çalıştım, bu yüzden 8051'inizin yaptığı gibi olmayabilir:
- Açılışta, MCU belirli bir ROM konumundan bootloader kodunu yükler.
- Pek çok yaygın önyükleyici, seri bağlantı noktasını belirli bir sinyal için kontrol ederek birkaç saniye bekler.
- Hata ayıklama kartını bilgisayarınızın seri bağlantı noktasına bağladıysanız, bu sinyali gönderebilirsiniz (Hyperterm veya Minicom gibi bir terminal programı ile veya özel amaçlı bir ürün yazılımı yükleme programı ile).
- Bu sinyali aldığınızda, MCU’nun önyükleyici kodu, kartı programlama moduna sokar ve yeni bellenimi gönderebilirsiniz.
- MCU sinyali alamazsa, normalde program belleğine yüklü olan herhangi bir bellenime yüklenmeye devam eder.
Bazı mikro denetleyicilerde "Programlama modu", EEPROM belleğini programlamak için daha yüksek gerilimlerin kullanılmasını içerir, ancak tüm mikro denetleyiciler bunu gerektirmez.
Özel ayrıntılar için, MCU’nuzun veri sayfasına (genellikle üreticinin web sitesinden ulaşılabilir) bakın. Stack Exchange sitesi ChipHacker , DIY elektronik modüllerine adanmıştır ve daha fazla soru için iyi bir yerdir.