Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
das_stm32f0_discovery [2017/04/05 14:20] huwaldtdas_stm32f0_discovery [2022/03/07 16:59] (aktuell) – [Das LCD Addon nutzen] huwi
Zeile 31: Zeile 31:
  
  
->>><code c>+><code c>
 //---------------------------------------------------------------------- //----------------------------------------------------------------------
 // Titel     : Grundgerüst einer einfachen ARM C Anwendung in SiSy // Titel     : Grundgerüst einer einfachen ARM C Anwendung in SiSy
Zeile 75: Zeile 75:
 ====== Blinky ====== ====== Blinky ======
  
->>><code c>+><code c>
 //---------------------------------------------------------------------- //----------------------------------------------------------------------
 // Titel     : Einfache digitale Ausgabe mit dem STM32F0-Discovery // Titel     : Einfache digitale Ausgabe mit dem STM32F0-Discovery
Zeile 144: Zeile 144:
  
 >{{:beispielef0.png?700|}} >{{:beispielef0.png?700|}}
 +
 +====== Das LCD Addon nutzen ======
 +{{:f0_textlcd162.png}}
 +
 +>**Display::configLcd()**<code cpp>
 +//pins konfigurieren
 +// RS = BUS-PIN01 
 +lineRs.config(GPIOB,BIT0);
 +// E  = BUS-PIN2
 +lineE.config(GPIOB,BIT1);
 +// 4Bit Daten = BUS-PINs 03..06
 +dataPort.config(GPIOB,BIT2|BIT3|BIT4|BIT5);
 +// RW = BUS-PIN 07 not used
 +// BKLight = BUS-PIN 
 +lineLight.config(GPIOB,BIT7);
 +
 +
 +waitMs(50);
 +
 +// SoftReset
 +// dataPort.setData(BIT2|BIT3);
 +dataOut(0x03);
 +lineE.on();
 +lineE.off();
 +waitMs(5);
 +lineE.on();
 +lineE.off();
 +waitUs(100);
 +lineE.on();
 +lineE.off();
 +waitMs(5);
 +
 +// 4-BitModus einschalten
 +//dataPort.setData(BIT3);
 +dataOut(0x02);
 +lineE.on();
 +lineE.off();
 +waitMs(5);
 +
 +init();
 +</code>
 +
 +>**Display::dataOut()**<code cpp>
 +// DataPort B BIT2-BIT5
 +// im 4 Bit Modus
 +// zuerst High-Teil
 +dataPort.setData( data>>2 );
 +lineE.on();
 +lineE.off();
 +
 +// dann Low-Teil übertragen
 +dataPort.setData( data<<2 );
 +lineE.on();
 +lineE.off();
 +
 +// kurz verarbeiten lassen.. kann runter bis 50µs
 +waitUs(100);
 +</code>
 +
 +>**Controller::onStart()**<code cpp>
 +// boot sequence after start SysTick
 +statusLED.flicker();
 +// Willkommen auf Display ausgeben
 +display.clear();
 +display.write("Wellcome...");
 +waitMs(1000);
 +display.light(true);
 +waitMs(2000);
 +statusLED.slowBlink();
 +display.clear();
 +display.home();
 +display.write("Line 1 ...");
 +display.setPos(1,2);
 +display.write("Line 2 ...");
 +</code>
 +
 +{{:textlcd_stm32f051_implementation.zip}}
 +
 +
  
 ====== Videozusammenfassung ====== ====== Videozusammenfassung ======
  
->>><html><iframe width="700" height="440" src="https://www.youtube.com/embed/84Y3jYLWYpo" frameborder="0" allowfullscreen></iframe></html>+><html><iframe width="700" height="440" src="https://www.youtube.com/embed/84Y3jYLWYpo" frameborder="0" allowfullscreen></iframe></html>
  
 ====== Weitere Hinweise ====== ====== Weitere Hinweise ======