- LiFePO4 Speicher Test         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 38

Thema: usrbus

  1. #21
    Benutzer Stammmitglied
    Registriert seit
    11.03.2009
    Ort
    Oberpfalz
    Alter
    30
    Beiträge
    54
    Anzeige

    Powerstation Test
    Für jedes eigene RP6-Programm:
    1. Ein neues Verzeichnis in RP6BASE_EXAMPLES erstellen
    2. make_all.bat, make_clean.bat und makefile aus einem anderen Beispiel (z.B. aus Example_01_LEDs) ins neue Verzeichnis kopieren
    3. Die LED-Blinkdemo mit Copy/Paste in eine Datei namens RP6BaseLEDTest.c (o.ä. Nme) einfügen und auch diese Datei in dein neues Verzeichnis kopieren.
    4. makefile öffnen und die Zeile TARGET = ... so ändern:
    TARGET = RP6BaseLEDTest
    5. Jetzt kannst du mit dem programmers notepad die Datei RP6BaseLEDTest.c öffnen.
    6. Mit Tools -> Make All kannst du sie kompilieren und die HEX-Datei dann mit dem RP6Loader in den RP6 befördern.

    Gruß Dirk



    das geht nicht Dirk -.- also bei mir nich

  2. #22
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Das geht wunderbar! Auch bei dir!

    Gruß Dirk

    P.S.: Wenn nicht, must du mehr Informationen geben. Was hast du gemacht? Was genau geht nicht? usw ....

  3. #23
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    27.09.2009
    Alter
    30
    Beiträge
    661
    hi ich ahb mal das beispiel programm ausbrobiert um nur port it1 high
    zu setzen aber an scl und sda liegen jetzt auch 5v an und zeitweise blinkt sl5.

    ist das normal und was muss ich machen das ich nur den einen port high setze ?
    MfG Martinius

  4. #24
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    was muss ich machen das ich nur den einen port high setze ?
    ... am einfachsten alles weglassen, wo SDA und SCL drin vorkommt.

    Gruß Dirk

  5. #25
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    27.09.2009
    Alter
    30
    Beiträge
    661
    das ist ja das kommische ich habe nur port it1 definert und auch nur port
    it1 high gesetzt.

    Code:
    #include "RP6RobotBaseLib.h"
    int main(void)
    {
    initRobotBase();
    
    DDRA |= (E_INT1);          
    
    
    
    while(true)
    {
    
    PORTA |= E_INT1; 
    }
    return 0;
    }
    MfG Martinius

  6. #26
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    das ist ja das kommische ich habe nur port it1 definert und auch nur port it1 high gesetzt.
    Dein Programm macht ja auch alles richtig, d.h. es setzt IT1 endlos lange und immer wieder auf High-Pegel.

    Und was ist daran kommisch? Oder was erwartest du?

    Gruß Dirk

  7. #27
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    27.09.2009
    Alter
    30
    Beiträge
    661
    wie ich geschrieben habe werden auch sda und scl high gesetzt und die led
    sl5 blinkt zeitweise
    MfG Martinius

  8. #28
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    28.04.2009
    Ort
    Wörgl
    Alter
    29
    Beiträge
    175
    Dass SL5 blinkt ist glaub ich normal, das ist bei mir auch so.

    Warum allerdings SDA und SCL high gesetzt sind, weiß ich auch nicht.

    lg
    Michi

  9. #29
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Wenn im Programm keine LED angesteuert wird, blinkt automatisch die SL5 als Anzeige, dass der RP6 noch eingeschaltet ist. Das kann man in der Lib deaktivieren, wenn es stören sollte:
    Code:
    		// Power on LED flashing:
    		#ifdef POWER_ON_WARNING
    			if(leds_on < 3) {
    				if(leds_on == 2) {
    					if(!statusLEDs.byte) {
    						if(leds_on_timer++ % 200 == 0) {
    							if(leds_on_timer > POWER_ON_SHOW_TIME) {
    								DDRB &= ~SL5; 
    								PORTB &= ~SL5;
    								leds_on = 0;
    								leds_on_timer = 0;
    							}
    							else {
    								DDRB ^= SL5; 
    								PORTB ^= SL5;
    							}
    						}
    					}
    					else {
    						if(!statusLEDs.LED5) {
    							DDRB &= ~SL5; 
    							PORTB &= ~SL5;
    						}
    						leds_on_timer = 0;
    						leds_on = 1;
    					}
    				}
    				else if(leds_on_timer > POWER_ON_WAIT_TIME) {
    					if(leds_on == 1) {
    						leds_on = 0;
    						if(!statusLEDs.LED5) {
    							DDRB &= ~SL5; 
    							PORTB &= ~SL5;
    						}
    					}
    					else 
    						leds_on = 2;
    					leds_on_timer = 0;
    				}
    				else
    					leds_on_timer++;
    			}
    		#endif
    (Aus der Timer0-Comp-ISR in RP6RobotBaseLib.c)

    Das Blinken kann man in der Datei RP6Config.h einstellen (so ist es ausgeschaltet):
    Code:
    // Power on warning:
    
    /**
     * If you don't need the flashing LED that shows that the Robot is still turned
     * on - outcomment this line and the code will not be compiled anymore
     * (saves some programspace and execution time):
     */
    //#define POWER_ON_WARNING
    //#define POWER_ON_WAIT_TIME 12000
    //#define POWER_ON_SHOW_TIME 4000
    (Aus der Datei RP6Config.h)

    SDA und SCL sind die I2C-Pins. Um diese Pins auch ohne Ansteuerung auf einen definierten Pegel zu bringen (wichtig für das I2C-Protokoll!) sind beide über je einen PullUp-Widerstand (R32+33, je 4k7) mit Vcc verbunden. Deshalb haben die Pins auch ohne Ansteuerung durch das Programm high-Pegel.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  10. #30
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    wie ich geschrieben habe werden auch sda und scl high gesetzt
    Wenn z.B. dein Multimeter sagt, dass da an SDA und SCL etwa 5V anliegen, dann stimmt das, weil SDA und SCL primär als Eingänge geschaltet sind. Daran mißt man dann 5V.
    Das heißt aber nicht, dass im Programm "auch sda und scl high gesetzt" werden.

    Gruß Dirk

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test