document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /*******************************************************************************
  2.  Projektname:       ACS.cprj
  3.  Benötigte Libs´s:  IntFunc_lib.cc
  4.  Routinen:          lcd.cc, PRO-BOT128C_Lib_V2.cc
  5.  Autor:             Niels
  6.  Datum:             09. 04. 2013
  7.  
  8.  Funktion:          Hindernisse erkennen und ausweichen
  9. *******************************************************************************/
  10.  
  11. // Compiler-Direktiven
  12. #define HIGHSPEED 200
  13. #define MIDDLESPEED 180
  14. #define LOWSPEED 0
  15.  
  16. int Akkuspg(void)
  17. {
  18.     LCD_ClearLCD();
  19.     //LCD auf Zeile 1 Position 1 setzen:
  20.     LCD_Locate(1, 1);
  21.     LCD_WriteText("Akkuspannung:"); //Begruessung
  22.     LCD_Locate(2, 1);
  23.     float Akkuspannung;
  24.     Akkuspannung=AKKU_SPG();
  25.     LCD_WriteFloat(Akkuspannung, 6);
  26.     AbsDelay(2000);       //Wait 2 Sec.
  27.     return 0;
  28. }
  29.  
  30. void main(void)
  31. {
  32.  
  33. PRO_BOT128_INIT();    //PRO-BOT128 Setup
  34. ACS_INIT(1); // Geringste Empfuindlichkeit
  35. AbsDelay(100);       //Wait 0,1 Sec.
  36. LCD_Init();
  37. LCD_ClearLCD();
  38.  
  39. Akkuspg(); // Ausgabe der Akkuspannung
  40.  
  41. DRIVE_ON(); //Motorspannung an
  42. MOTOR_DIR(1,1); //beide Motoren vorwärts   - MOTOR DIRECTION
  43. MOTOR_POWER(MIDDLESPEED, MIDDLESPEED);
  44.  
  45. // Endlos-Schleife
  46.     do
  47.     {
  48.            if ((ACS_LEFT() == 0) && (ACS_RIGHT() == 0))
  49.            {
  50.                 // Hindernis wurde erkannt
  51.                 DRIVE_OFF(); // Motor aus!
  52.                 // LCD-Ausgabe
  53.                  LCD_ClearLCD();
  54.                  //LCD auf Zeile 1 Position 1 setzen:
  55.                  LCD_Locate(1, 1);
  56.                  LCD_WriteText("Hindernis!");
  57.                 AbsDelay(1000);       //Wait 1 Sec.
  58.                  LCD_ClearLCD();
  59.  
  60.            }
  61.            else
  62.            {
  63.                  DRIVE_ON();
  64.                  MOTOR_POWER(MIDDLESPEED, MIDDLESPEED);
  65.                  BLR_ON();
  66.                  BLL_ON();
  67.                  //LCD_Locate(1, 1);
  68.                  //LCD_WriteText("Geht doch super!");
  69.            }
  70.  
  71.     }while(1);
  72. }
');