Lektion 01 D10 blinken
Dependencies: mbed
Fork of _B14Test9_Tasten by
Diff: main.cpp
- Revision:
- 1:ae7ff47ace50
- Parent:
- 0:a8a0195ed7dc
diff -r a8a0195ed7dc -r ae7ff47ace50 main.cpp --- a/main.cpp Mon Jan 26 21:46:32 2015 +0000 +++ b/main.cpp Sun May 31 16:38:59 2015 +0000 @@ -1,44 +1,30 @@ /*********************************** -name: BERTL14_I2C_TEST -author: Enenkel modifizert von Wolfgang Raimann -description: - Die Taster vom I2C Expander werden direkt auf die LED's des Expander geschalten +Name: _B15Lektion01 D10 blinken +author: Gottfried Enenkel HTL BULME +Date : 15.3.2015 +Aufgabe: + LEDS D10 blinkt im sec Takt + 1. Importiere die Software auf deinen Account + 2. Compiliere die Software + 3. Lade die Software auf deinen BERTL und führe sie aus + 4. Ändere die Software so, dass die LED mit 10 Hz Blinkt + wait (0.1); + 5. Compiliere deine neue Software, lade sie auf den BERTL + und führe sie aus. ***********************************/ - -#include "mbed.h" -I2C i2c(p28, p27); // die Adressen des I2C Busses am uP - // p28 -> SDA - // p27 -> SCL -int main() { - char btn = 0; - // **** Config PCA9555 I0 as output ******* - i2c.start(); - i2c.write(0x40); // Adresse des PCA9555 = 40 - // das letzte Bit = 0 -> schreiben 0040 0000 - i2c.write(0x06); // Befehl für das IO Port 0 -> siehe SCHEMA des PCA9555 - i2c.write(0x00); // Schalte alle Pins des Ports als OUTPUT - i2c.stop(); - - while(1) { - // Einlesen der Taster und speichern unter btn - i2c.start(); - /* Das letzte Bit der Adresse entscheidet - ob geschrieben oder gelesen wird. - 0 => schreiben; 1 => lesen */ - i2c.write(0x40); //Adresse & schreiben 0100 0000 - i2c.write(0x01); //aktivate Port 1 - - i2c.start(); - i2c.write(0x41); // Adresse & LESEN 0100 0001 - btn = i2c.read(0);// Einlesen des Ports 1 und speichern unter btn - i2c.stop(); - - // Schreiben auf Port 0 und damit auf die LED's - i2c.start(); - i2c.write(0x40); // Adresse & schreiben - i2c.write(0x02); // - i2c.write(~btn); // schriebn auf Port 0 den INVERSEN Wert von btn - i2c.stop(); - } -} +#include "mbed.h" // enthält die Befehle für den BERTL +// ******* Definitionen ******** +DigitalOut ledD10(P1_8); // dem uP - Port1 Pin8 den Namen ledD10 zuweisen + // und als Digitaln Ausgang definieren. +// ******* Hauptroutine ******** +int main() { // Start Hauptprogramm + while(1) { // Anfang der Schleife (ohne Abbruch) + ledD10 =1; // LED D10 einschalten + wait (1.0); // warte 1 Sekunde + ledD10=0; // LED D10 ausschalten + wait (1.0); // warte 1 Sekunde + } // Springe zum Anfang der Schleife +} // Ende Hauptprogramm +// ******* Ende ********* +