Difference between revisions of "ARM Embedded Tutorial - Simple GPIO on and off output/de"

From Lazarus wiki
Jump to navigationJump to search
(Created page with "{{Translate}} =Einfache GPIO Ein und Aus-gabe= == Register für Portzugriff == Für GPIO-Zugriffer, stehen folgende Register zu Verfügung: * '''CRL''' - Funktions-Register...")
 
Line 12: Line 12:
 
* '''BRR''' - Bit Set Reset Register
 
* '''BRR''' - Bit Set Reset Register
 
* '''LCKR''' - Port Configuration Lock Register
 
* '''LCKR''' - Port Configuration Lock Register
 +
 +
 +
==GPIO einschalten==
 +
Bevor man man auf die GPIO zugreifen kann, müssen diese eingeschalten werden.
 +
Dies geschieht folgendermassen für die PortA - PortC.
 +
<syntaxhighlight>
 +
RCC.APB2ENR := RCC.APB2ENR or (%111 shl 2);
 +
</syntaxhighlight>
  
  
Line 25: Line 33:
 
PortC.CRH := $00300000;  
 
PortC.CRH := $00300000;  
 
</syntaxhighlight>
 
</syntaxhighlight>
 
  
 
== Siehe auch ==
 
== Siehe auch ==

Revision as of 20:53, 13 April 2018

Template:Translate

Einfache GPIO Ein und Aus-gabe

Register für Portzugriff

Für GPIO-Zugriffer, stehen folgende Register zu Verfügung:

  • CRL - Funktions-Register LOW.
  • CRH - Funktions-Register HIGH.
  • IDR - Input Data Register
  • ODR - Output Data Register
  • BSRR - Bit Reset Register
  • BRR - Bit Set Reset Register
  • LCKR - Port Configuration Lock Register


GPIO einschalten

Bevor man man auf die GPIO zugreifen kann, müssen diese eingeschalten werden. Dies geschieht folgendermassen für die PortA - PortC.

RCC.APB2ENR := RCC.APB2ENR or (%111 shl 2);


Direkte Portmanipulation

Bevor man einen GPIO-Pin auf HIGH schalten kann, muss man diesen als Ausgang konfigurieren. Dies geht über die Register CRL und CRH.

Pin-Funktion einstellen

Für die Funktionseinstellung steht pro Pin ein Nibble (4Bit) zu Verfügung. Pin13 an PortC auf Ausgabe. Da 13 höher als 7 ist, wird dafür das HIGH-Register CRH verwendet. 13 - 8 = 5; Somit ist es das fünfte Nibble in CHR. Pin0 - Pin7 würde man mit CHL konfigurieren.

PortC.CRH := $00300000;

Siehe auch

Autor: Mathias