Einbindung durch: #include <NIBO2.h>

class instance NIBO2

FunktionBeschreibung
void begin ()Initialisierung des NIBO2 Roboters
unsigned int getVoltage ()Versorgungsspannung in Millivolt (9.6V ≙ 9600) zurückgeben
void setLed (unsigned char led, unsigned char value)Status-LED setzen, Farben: LED_OFF, LED_GREEN, LED_RED, LED_ORANGE
unsigned char getLed (unsigned char led)Status-LED abfragen, Farben: LED_OFF, LED_GREEN, LED_RED, LED_ORANGE
unsigned int getRandomSeed ()Zufallszahlen-Basis liefern
void setLedsIntensity (int light)Helligkeit (0-1024) für die Status-LEDs (rot/grün) setzen
void setHeadlightsIntensity (int light)Helligkeit (0-1024) für die Scheinwerfer setzen
void setDisplayIntensity (int light)Helligkeit (0-1024) für die Displaybeleuchtung setzen
unsigned int getAnalog (unsigned char adc_channel, unsigned char active)Rohwert eines analogen Kanals auslesen
void enableCopro ()Copro aktivieren
void disableCopro ()Copro deaktivieren
unsigned char getS3 ()Taster S3 auslesen: liefert true falls gedrückt
unsigned char getJP1 ()Jumper JP1 auslesen: liefert true falls gesteckt

class instance Engine

FunktionBeschreibung
void begin ()Initialisierung
void setPWM (int left, int right)PWM Werte (-1023 ... 0 ... +1023) für die beiden Motoren setzen
void setSpeed (int left, int right)Geschwindigkeit für die beiden Motoren setzen. Die Werte werden in Ticks/Sekunde angegeben. 40 Ticks entsprechen einer Radumdrehung (138 mm Strecke)
void setTargetAbs (int left, int right, unsigned int speed)Zielposition für Räder setzen. Die Werte werden in Ticks angegeben. 40 Ticks entsprechen einer Radumdrehung (138 mm Strecke)
void setTargetRel (int left, int right, unsigned int speed)Zielposition für Räder setzen. Die Werte werden relativ zur aktuellen Position in Ticks angegeben. 40 Ticks entsprechen einer Radumdrehung (138 mm Strecke)
int getTargetDist ()Verbleibende Distanz zum Ziel bei Durchführung von setTargetAbs() bzw. setTargetRel(). Die Distanz ist der maximale Wert von den verbleibenden linken und rechten Ticks
void stop ()Motoren anhalten (passiv Stoppen - rollt aus)
void stopImmediate ()Motoren unverzüglich stoppen (aktiv Stoppen - bremst)
left -> siehe nächster Abschnitt
right -> siehe nächster Abschnitt

class instances Engine.left / Engine.right

FunktionBeschreibung
int getTicks ()Aktueller Zählerwert des Rades in Ticks, 40 Ticks entsprechen einer Radumdrehung (138 mm Strecke)
int getSpeed ()Geschwindigkeit des Rades in Ticks pro Sekunde, 40 Ticks entsprechen einer Radumdrehung (138 mm Strecke)
int getCurrent ()Motorstrom in Milli-Ampere

class instance FloorSensor

FunktionBeschreibung
void begin ()Initialisierung
unsigned int getL0 ()Messwert linker Liniensensor
unsigned int getR0 ()Messwert rechter Liniensensor
unsigned int getL1 ()Messwert linker Bodensensor
unsigned int getR1 ()Messwert rechter Bodensensor
void calibrateWhite ()Kalibrierung auf weissem Untergrund, entspricht dem Wert 1024 (0x400)
void calibrateBlack ()Kalibrierung auf schwarzem Untergrund, entspricht dem Wert 0 (0x000)
void storeCalibration ()Kalibrierdaten im EEPROM speichern

class instance DistanceSensor

FunktionBeschreibung
void begin ()Initialisierung
void beginMeasure ()Distanzmessung starten
void beginReceiveRC5 ()Distanzmessung stoppen und auf RC5 Code warten
unsigned int get (unsigned char dir)letzter Messwert aus angegebener Richtung
unsigned char transmitRC5 (unsigned int code)Distanzmessung stoppen und einen RC5 Code übertragen
unsigned int getLastRC5 ()Zuletzt empfangenes RC5 Kommando

IO-Definitionen

Die IO-Definitionen sind für fortgeschrittene Benutzer zur Verwendung mit den ARDUINO Digital I/O Funktionen gedacht!
NamePort + BitAVR Pin #Beschreibung
IO_LCD_D0PA051LC-Display Datenbit 0
IO_LCD_D1PA150LC-Display Datenbit 1
IO_LCD_D2PA249LC-Display Datenbit 2
IO_LCD_D3PA348LC-Display Datenbit 3
IO_LCD_D4PA447LC-Display Datenbit 4
IO_LCD_D5PA546LC-Display Datenbit 5
IO_LCD_D6PA645LC-Display Datenbit 6
IO_LCD_D7PA744LC-Display Datenbit 7
 
IO_SSPB010SS: SPI Select
IO_SCKPB111SCLK: SPI Clock
IO_MOSIPB212MOSI: SPI Master Out / Slave In
IO_MISOPB313MISO: SPI Master In / Slave Out
IO_AUDIOPB414Speaker
IO_LED_W_PWMPB515PWM für weisse Scheinwerfer LEDs
IO_LCD_PWMPB616PWM für LC-Display
IO_LED_RG_PWMPB717PWM für rote und grüne LEDs
 
IO_LED_G0PC035Grüne LED 0
IO_LED_G1PC136Grüne LED 1
IO_LED_G2PC237Grüne LED 2
IO_LED_G3PC338Grüne LED 3
IO_LED_G4PC439Grüne LED 4
IO_LED_G5PC540Grüne LED 5
IO_LED_G6PC641Grüne LED 6
IO_LED_G7PC742Grüne LED 7
 
IO_I2C_SCLPD025SCL: I²C Bus Clock
IO_I2C_SDAPD126SDA: I²C Bus Data
IO_EXT_DPD227Extern D
IO_EXT_CPD328Extern C
IO_INPUT1PD429Input 1
IO_EXT_BPD530Extern B
IO_EXT_APD631Extern A
IO_RESET_IC2PD732Reset für COPRO (+Display mit IO_SS)
 
IO_LED_R0PE02Rote LED 0 + RXD0
IO_LED_R1PE13Rote LED 1 + TXD0
IO_LED_R2PE24Rote LED 2
IO_LED_R3PE35Rote LED 3
IO_LED_R4PE46Rote LED 4
IO_LED_R5PE57Rote LED 5
IO_LED_R6PE68Rote LED 6
IO_LED_R7PE79Rote LED 7
 
IO_FLOOR0PF061Bodensensor 0 (analog)
IO_FLOOR1PF160Bodensensor 1 (analog)
IO_FLOOR2PF259Bodensensor 2 (analog)
IO_FLOOR3PF358Bodensensor 3 (analog)
IO_INPUT3PF457Input 3
IO_INPUT2PF556Input 2
IO_FLOOR_ENPF655Bodensoren Ein/Aus
IO_SUPPLYPF754Versorgungsspannung (analog)
 
IO_LCD_CS1PG033LC-Display Chip Select 0
IO_LCD_CS2PG134LC-Display Chip Select 1
IO_LCD_ENPG243LC-Display Enable
IO_LCD_RSPG318LC-Display Register Select
IO_LCD_RWPG419LC-Display Read/Write

nicai-systems website