Programmieren von Mikrocomputern in
     automatisierten Systemen

     Automatisieren und Vernetzen mit Industrie-PC

 
 
info-rlp :: PSPICE  :: C-Programmierung :: AT04 :: ELI04 :: C51 :: 
 
 Pfad ::: ELI04 / Mikrocontroller / Jetzt mal mit anderen Ports

 

 

1.2     
 

Erste Projekte realisieren
 
 
  1.2.1  Jetzt mit anderen Ports   -   Lösung ELI04 vom 29.04.2005  
         
    Bitte beachten:  
    In dieser eher ungewöhnlichen Situation war der Quellcode vorgegeben.

Normalerweise steht jedoch das zu lösende technische Problem im Vordergrund!

Der Profi geht dann folgendermaßen vor:

1. Formulierung des Problems
2. Lösungsvorschläge vorerst grafisch mit dem Programmablaufplan (PAP) -
    oder mit dem Struktogramm
3. Dann und erst dann erfolgt die Umsetzung in den Quellcode!!!
4. Simulation und Test des Projekts
5. Abschließende Dokumentation

 
 
   
 1.                                                                   
zum Anfang der Seite  Quellcode in der
 Programmiersprache C

Formatieren und Kommentieren von Quellcode

 

  #include <reg932.h>sbit sbTaste = P3^0;
  sbit sbLED1 = P2^0;sbit sbLED2 = P2^7;main()
  {P2M1 = 0x7E;while(1){if(sbTaste==0){sbLED1 = 0; sbLED2
  = 0;}else{sbLED1 = 1;sbLED2 = 1;} }}


 Ein guter Stil -
 nicht nur eine Frage der Ehre

                              

 
   
 2.                                                                   
zum Anfang der Seite Erstellung des Projekts
ein_taste_zwei_leds.uv2
in µVision3

Einstieg in Flash Magic und µVision3  (pdf  325 KB)
Dokumentation von Carsten Brück und Michael Johanns der AT04

Erstellung von Projekten

Dokumentation René Müller und Marco Sonne
     

 
   
 3.  
zum Anfang der Seite Funktion des C-Algorithmus

Beim Betätigen des Taste ( P3^0) sollen
zwei Leuchtdioden  (P2^0, P2^7) aufleuchten.


    

 5.                                                                   
zum Anfang der Seite  Flussdiagramm




- Flussdiagramm (PAP)

   siehe Keil C51/Philips LPC900, S. 310 ff




   

 

4.  
zum Anfang der Seite Initialisierung der Ports




 
zum Anzeigen des Teilausschnitts des SFR auf die Grafik klicken
- SFR-Tabelle (Ausschnitt)
    

6.  
zum Anfang der Seite Struktogramm




- Struktogramm

 

 
   
 7.                                                                   
zum Anfang der Seite  Simulation mit µVision3
 von Keil Elektronik GmbH


     
  zum Anzeigen des gesamten Screenshots auf die Grafik klicken

 
   
 8.                                                                   
zum Anfang der Seite  Test mit dem LPC900-Board


     
  zum Anzeigen des gesamten Screenshots auf die Grafik klicken

 
   
 9.                                                                   
zum Anfang der Seite  Quellcode in der
 Programmiersprache C

/**************************************************************************************
 *  C-Programm zur Auswertung von externen Ereignissen                                  *
 *  Projekt-Name:    ein_taste_zwei_leds.uv2                                                         *
 **************************************************************************************/

#include <reg932.h>

sbit sbTaste = P3^0;                             // Deklaration der Taste
sbit sbLED1 = P2^0;                             // Deklaration der verwendeten LED1
sbit sbLED2 = P2^7;                             // Deklaration der verwendeten LED2

void main( void )
{
    P2M1 = 0x7E;                                   // Initialisierung Port 2^0 und Port 2^7 als bidirektional
                                                       
       
    while ( 1 )      
    {
        if ( sbTaste == 0 )                         // Wert von Taste auswerten   
        {         
            sbLED1 = 0;                             // LED1 an
            sbLED2 = 0;                             // LED2 an
        }                              

        else                                 
        {
            sbLED1 = 1;                            
// LED1 aus
            sbLED2 = 1;                            
// LED2 aus
        }                                      
    }

}
     

 
         
    Quellennachweis:
Grafik der "Lernbausteine" der Original-LEGO-Website entnommen
   

 

     :: Stand :: 07.05.2005
  
   :: Block diagram :: Memory :: Special function registers :: Datasheet
 
              Beratender Fachlehrer: