Kurs programowania mikrokontrolerów Coldfire firmy Freescale – zaczynamy!

MCF51CN128

Niezależnie czy to pralka czy mikrokontroler, w każdym z tych przypadków należy sięgnąć po nielubianą przez nas instrukcję by zaznajomić się z działaniem i funkcjonowaniem urządzenia. Pozwolę sobie w tym miejscu nie omawiać działania mikrokontrolera, lecz pokrótce opisać najważniejsze aspekty jego architektury oraz główne właściwości.

MCF51CN128 to 32-bitowy mikrokontroler oparty na rdzeniu Coldfire V1. Jego architektura i działanie zostało tak zoptymalizowane, by jak najlepiej obsłużyć protokoły sieciowe, co umożliwi nam stworzenie urządzeń sieciowych w oparciu o niego.

Do wyboru mamy 3 różne wersje MCF51CN128, zależne od ilości wyprowadzeń: 48, 64 i 80 pinów. W niniejszym kursie pracować będziemy na wersji 80-cio pinowej.

 

Rys. 
1.

Rys. 1.

 

 

Główne właściwości MCF51CN128:

  • 32-bitowa architektura
  • Napięcie zasilania:
    • 3,0 – 3,6 V – taktowanie CPU do 50,33 MHz,
    • 2,1 – 3,0 V –  taktowanie CPU do 40 MHz,
    • 2,1 – 1,8 V – taktowanie CPU do 20 MHz.
  • Źródła sygnału zegarowego:
    • Wewnętrzny rezonator (XOSC) o zakresie częstotliwości od 31.25 kHz do 38.4 kHz lub od 1 MHz do 24 MHz,
    • Generator zegarowy ogólnego przeznaczenia (MCG) mogący pełnić funkcję pętli fazowej PLL lub pętli częstotliwościowej FLL.
  • 128 kB pamięci Flash, 24 kB pamięci RAM

 

Porty wejścia/wyjścia:

  • 70 portów ogólnego przeznaczenia (GPIO) pełniących funkcje wejścia/wyjścia,
  • 16 przerwań klawiaturowych (keyboard interrupt – KBI) z wyborem polaryzacji,
  • 16 portów o zwiększonej szybkości tzw. Rapid GPIO.

 

Peryferia:

  • przetwornik analogowo-cyfrowy (ADC) – 12-kanałowy, 12-bitowy,
  • szeregowy interfejs komunikacyjny (SCI),
  • szeregowe interfejsy komunikacyjne: SPI, IIC oraz SCI,
  • zegar czasu rzeczywistego RTC – 8 bitowy licznik modulo,
  • Ethernet – 10/100 Base-T/TX oparty o FEC (fast ethernet controller) wspomagany DMA (bezpośrednim dostępem do pamięci),
  • Timer Modulo – 8-bitowy z 8-bitowym preskalerem (dzielnikiem),
  • Timer/PWM (TPM) – 3-kanałowy, 16-bitowy.

 

Programowanie poprzez interfejs:

  • BDM (background debug module) – USB

O autorze