Projekte
BirgerT
nibo2_MyWorx
nibo2_globaldef.h
Projekte
Forum
Doku
Öffentliche Projekte
Startseite
Beispielprogramme
Projekte von anderen
Welcome
Username
Passwort
Eingeloggt bleiben
Zugangsdaten vergessen?
Registrieren
Projektverwaltung
⇨ Please choose! ⇦
——————————————————
✎ Create new project...
★ Browse existing projects...
——————————————————
⚬ MotorTest#1
⚬ C Tutorial 8#1
⚬ NIBO2 C Project#1
⚙ C Tutorial 15#1
⚬ 2010_11_18_el_test001#1
nibo2_MyWorx
liesmich.txt
main.c
nibo2_akku.c
nibo2_akku.h
nibo2_audio.c
nibo2_audio.h
nibo2_audio_titels.c
nibo2_globaldef.h
nibo2_parameter.c
nibo2_parameter.h
nibo2_sensors.c
nibo2_sensors.h
nibo2_timer2.c
nibo2_timer2.h
nibo2_tour.c
nibo2_tour.h
nibo2_xbmgfx.c
nibo2_xbmgfx.h
Studio6_m...x_hex.txt
Project details
Compiler settings
Nachrichten
Sie sind nicht eingeloggt.
Neuigkeiten
★
NiboRoboLib 3.6
2017-01-17: Neue Version 3.6
★
NiboRoboLib 3.4.1
2016-04-16: Neue Version 3.4.1
★
Coding Tutorial
2015-11-22: Jetzt auch für den NIBO burger!
Site-Statistic
7427 private projects
385 public projects
16181052 lines compiled
58220 builds
NIBO
@
nibo2_MyWorx/nibo2_globaldef.h [read only]
/****************************************************************** Globale Definitionen für alle NIBO2 Projekte von BirgerT BSD License see "liesmich.txt" ******************************************************************/ #ifndef _NIBO2_GLOBALDEF_H_ #define _NIBO2_GLOBALDEF_H_ // Definition von Grenzwerten die von Nibo zu Nibo abweichen können, // und mit dem Programm nibo2_hardwarecheck ermittelt werden müssen // Spannungswert von bot_supply() // Wert bei leeren Akkus (Akkuspannung 8,0V) // = allerunterste Enladungsgrenze #define BOT_SUPPLY_LOW_LIMIT 505 // Wert bei frisch geladenen Akkus (10,4V) #define BOT_SUPPLY_TOP_LIMIT 665 // Differenz zwischen TOP und LOW -> 0..9 #define BOT_SUPPLY_CHARGE (BOT_SUPPLY_TOP_LIMIT - BOT_SUPPLY_LOW_LIMIT) // Grenzwerte für Distanzsensoren #define DIST_LIMIT_FREE 0x20 // freie Bahn #define DIST_LIMIT_FAR 0x40 // > Hindernis in Sicht #define DIST_LIMIT_NEAR 0x80 // > Hindernis ist nah //#define DIST_LIMIT_LOW 0xb0 // > Hindernis ausweichen //*************************** Bibliotheken #include <stdlib.h> // Umwandlung einer Fließkommazahl in eine Zeichenkette #include <stdio.h> // sprintf // AVR Header #include <avr/io.h> // ATmega128 #include <avr/interrupt.h> // Interrupts #include <avr/pgmspace.h> // FLASH #include <avr/eeprom.h> // EEPROM // NIBO2 Headerfiles, Defines und Makros #include "nibo/niboconfig.h" #include "nibo/iodefs.h" // mit den Makros aus iodefs.h lassen sich eigene Makros kreieren #define toggle_output_bit(NAME) _PPCAT(NAME,_PORT) ^= (unsigned char)_BV(_PPCAT(NAME,_BIT)) // HEADLIGHT EIN, AUS und TRUE wenn eingeschaltet // #define head_on set_output_bit(IO_LED_WHITE) // #define head_off clear_output_bit(IO_LED_WHITE) // #define head_is_on (1<<IO_LED_WHITE_BIT == get_output_bit(IO_LED_WHITE)) #define HEADLIGHT(v) leds_set_headlights(v) // DIPLAYLIGHT EIN, AUS und TRUE wenn eingeschaltet // #define disp_on set_output_bit(IO_DISP_LIGHT) // #define disp_off clear_output_bit(IO_DISP_LIGHT) // #define disp_is_on (1<<IO_DISP_LIGHT_BIT == get_output_bit(IO_DISP_LIGHT)) #include "nibo/delay.h" #include "nibo/display.h" #include "nibo/gfx.h" // fehlende defines in gfx.h #define GFX_DISP_WIDTH 128 #define GFX_DISP_HEIGHT 64 #include "nibo/spi.h" #include "nibo/copro.h" #include "nibo/adc.h" #include "nibo/floor.h" #include "nibo/leds.h" #define LEDS_GREEN_ON(led) IO_LEDS_GREEN_PORT |= 1<<led #define LEDS_GREEN_OFF(led) IO_LEDS_GREEN_PORT &= ~(1<<led) #define LEDS_RED_ON(led) IO_LEDS_RED_PORT |= 1<<led #define LEDS_RED_OFF(led) IO_LEDS_RED_PORT &= ~(1<<led) #include "nibo/pwm.h" #include "nibo/bot.h" //#include "nibo/sound.h" //*************************** Makros // die korrekte Definition von Wahr und Falsch #define TRUE (1==1) #define FALSE (1==0) // Makros zur Bit Manipulatiion // SetBit(Port/Variable,BitNr) Bit #b in Variable p setzen #define SetBit(p,b) (p) |= (1<<b) // ClrBit(Port/Variable,BitNr) Bit #b in Variable p loeschen #define ClrBit(p,b) (p) &= ~(1<<b) // InvBit(Port/Variable,BitNr) Bit #b in Variable p toggeln #define InvBit(p,b) (p) ^= (1<<b) // GetBit(Port/Char,BitNr) Bit #b in Variable p abfragen // Return 0 == Bit geloescht, Return 1 == Bit gesetzt #define GetBit(p,b) (((p) >> (b)) & 1) #define LOBYTE(x) (uint8_t)((uint16_t)x) #define HIBYTE(x) (uint8_t)(((uint16_t)x)>>8) #define MAKEWORD(hi,lo) ((hi*0x100)+lo) #endif //_NIBO2_GLOBALDEF_H_
Compiler results:
Werbung
Online
bradlygoi441228704773
josch
sashaserrano161