Beschreibung des PIC16C84

Der Mikrocontroller PIC16C84 eignet auf Grund seiner Eigenschaften hervoragend, um im Umgang mit Embedded Mikrocontroller erste Erfahrungen zu sammeln.

Blockschaltbild des PIC16C/F84

(Bedienhinweis: Führen Sie den Mauszeiger auf die gewünschte Komponente im folgenden ImageMap)

Eigenschaften der CPU 

Merkmal Besondere Hinweise
Architektur Havard-Struktur
CPU-Core

RISC-CPU mit 35 Befehlen. Alle Befehle werden in einem Zyklus abgearbeitet, Ausnahme sind Verzweigungen, Sprünge

  • Instruktionswortbreite 14 Bit
  • Datenwortbreite: 8Bit
Befehlsausführungszeit

Prozessortakt/4 d.h. min. 400ns bei 10MHz Quarzfrequenz

Speicher und Register
  • 1k x 14Bit EE-Prom
  • 36 x 8 Bit SRAM
  • 64 x 8 Bit EE-Prom Datenspeicher
  • 15 Funktionsregister zur Steuerung der on-chip Peripherie
on-chip Peripherie
  • 13 digitale I/O Pins
  • 1 Timer mit Vorteiler
  • Resetgenerator (Power-on Reset)
  • Oszillator
  • Watchdog-Timer
  • Power-Save Sleep Mode
  • serielle in-System-Programmierung
Interruptcontroller
  • 5 externe Interrupt-Request an Pin RB0, B4...RB7
  • Timer0
  • EE-Prom Schreibzugriff
Technologie und
elektrische Kenndaten

CMOS Low-power, voll statisches Design (DC...10MHz)

  • Betriebsspannung: 2,0V ...6.0V
  • Stromaufnahme
    <2mA bei 5V, 4MHz
    60uA bei 2V, 32kHz
    26uA im Sleep-Mode (Stand-by : 2V)

 

Der Befehlssatz der PIC16Cx

Folgende Tabelle listet den Befehlsvorrat des PIC16Cx auf. Die Beschreibung der Befehle ist zunächst im Herstellerdatenblatt übernommen, um den Wortlaut des Mnemonic's zu entschlüsseln. Die beinflussten Flagbits (Tabelle Spalte 5) sind wie folgt kodiert:
C =carry, DC=digit carry/borrow,Z=zero,TO= Timer 0 Flag, PD=Power down Flag


Maschinenbefehl Operanden Beschreibung Zyklen Status
ADDWF f, d Add W and f 1 C,DC,Z
ANDWF   AND W with f 1 Z
CLRF f Clear f 1 Z
CLRW - Clear W 1 Z
COMF f, d Complement f 1 Z
DECF f, d Decrement f 1 Z
DECFSZ f, d Decrement f, Skip if 0 1(2) NONE
INCF f, d Increment f 1 Z
INCFSZ f, d Increment f, Skip if 0 1(2) NONE
IORWF f, d Inclusive OR W with f 1 Z
MOVF f, d Move f 1 Z
MOVWF f Move W to f 1 NONE
NOP - No Operation 1 NONE
RLF f, d Rotate Left f through Carry 1 C
RRF f, d Rotate Right f through Carry 1 C
SUBWF f, d Subtract W from f 1 C,DC,Z
SWAPF f, d Swap nibbles in f 1 NONE
XORWF f, d Exclusive OR W with f 1 Z
Bit orientierte Befehle
BCF f, b Bit Clear f 1 NONE
BSF f, b Bit Set f 1 NONE
BTFSC f, b Bit Test f, Skip if Clear 1(2) NONE
BTFSS f, b Bit Test f, Skip if Set 1(2) NONE
Konstantenoperationen und Steuerfunktionen der Mikrocontrollerfunktionen
ADDLW k Add literal and W 1 C,DC,Z
ANDLW k AND literal with W 1 Z
CALL k Call subroutine 2 -
CLRWDT - Clear Watchdog Timer 1 TO,PD
GOTO k Go to address 2 NONE
IORLW k Inclusive OR literal with W 1 Z
MOVLW k Move literal to W 1 NONE
RETFIE - Return from interrupt 2 NONE
RETLW k Return with literal in W 2 NONE
RETURN - Return from Subroutine 2 NONE
SLEEP - Go into standby mode 1 TO,PD
SUBLW k Subtract W from literal 1 C,DC,Z
XORLW k Exclusive OR literal with W 1 Z

 


Einführendes Projekt
Zur Vorstellung des Controllers und seiner IDE dient das Projekt eines elektronischen Würfels. Folgende Stückliste zeigt den Bauelementeaufwand:
 

Mit wenigen Aufwand ist damit eine erste Schaltung realisiert. Mikroprogramm Arithemetic und Logic Unit Special Funktion Registers Reset und Oszillator RAM 32 Byte E2Prom  64 Byte Port B (8 I/O) Timer (8 Bit Counter) Port A (5 I/O) Stack (8 Worte tief) Programm  Zähler Interrupt Controller Sprecial Funktion Registers ROM 1024 * 14 Bit