Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Diff: main.cpp
- Revision:
- 1:0f7c167a4f97
- Parent:
- 0:a8a0195ed7dc
- Child:
- 2:416e90645a22
--- a/main.cpp Mon Jan 26 21:46:32 2015 +0000
+++ b/main.cpp Sun May 31 16:35:31 2015 +0000
@@ -1,44 +1,44 @@
/***********************************
-name: BERTL14_I2C_TEST
-author: Enenkel modifizert von Wolfgang Raimann
+name: BERTL_2015_MOTOR_TEST
+author: Gottfried Enenkel HTL BULME
+email: ene@bulme.at
description:
- Die Taster vom I2C Expander werden direkt auf die LED's des Expander geschalten
-***********************************/
-
-#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();
+ Der BERTL fährt 1 sec lang VORWÄRTS!
+ Danach steht er für 1 sec
+
+ Wenn der Motor richtig eingebaut ist,
+ steht über dem Linken Anschluß ein PLUS
+ Wenn sich der BERTL dreht, ist ein Motor verkehrt eingebaut.
- 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"
+
+// ************ DEKLARATIONEN **************
+DigitalOut Von (P1_2); // Motor Spannung ab BERTL15 nötig !
+DigitalOut MotorL_EN(P1_15); // Enable
+DigitalOut MotorL_FORWARD(P1_1); // Forwerts
+DigitalOut MotorL_REVERSE(P1_0); // Rückwerts
+
+DigitalOut MotorR_EN(P0_21); //Die Leitung führt zum Pin PO_21 am Prozessor
+DigitalOut MotorR_FORWARD(P1_3); //Die Leitung führt zum Pin P1_3 am Prozessor
+DigitalOut MotorR_REVERSE(P1_4);
+// ************* Hauptprogramm ************
+int main() { // Start Hauptprogramm
+ Von=1; // Motor Spannung EIN
+ MotorR_EN=MotorL_EN=1; // Beide Motoren ENABLE
+ while(1) { // Anfang der Schleife (ohne Abbruch)
+ MotorR_FORWARD = MotorL_FORWARD = 1; // Beide Motoren vorwärts EIN
+ wait (1.0); // warte 1 Sekunde
+ MotorR_FORWARD = MotorL_FORWARD = 0; // Motoren AUS
+ wait (1.0); // warte 1 Sekunde
+ } // Springe zum Anfang der Schleife
+} // Ende des Hauptprogrammes
+
+// ************** ENDE *************
+
+
+
+
+
+