Hallo roboman,
ok, habe ich gesehen.Zitat:
... dann kommt eine pause von 1,458 sec, nach der die schleife von vorne beginnt!
Du hast damit eine Schleife, die jeweils nach ca. 2,422 s wieder die Stopwatch liest.
Ok, verstanden! :-s
Gruß Dirk
Druckbare Version
Hallo roboman,
ok, habe ich gesehen.Zitat:
... dann kommt eine pause von 1,458 sec, nach der die schleife von vorne beginnt!
Du hast damit eine Schleife, die jeweils nach ca. 2,422 s wieder die Stopwatch liest.
Ok, verstanden! :-s
Gruß Dirk
Hallo
Wie lange sollen die Daten gespeichert werden. Bis zum nächsten Ausschalten oder für "ewig". Das erste wäre dann ein gewöhnliches Array:Zitat:
aber wie kann man diese werte auf dem rp6 speichern?
Ewig würde es imEEProm gespeichert werden:Code:uint16_t daten[512], n;
n=0;
daten[n]=getStopwatch1();
writeInteger(daten[n], DEC);
Wie das genau funktioniert habe ich noch nicht getestet, mit 8bit-Werten mache ich es so:Code:#include <avr/eeprom.h>
eeprom_write_word (uint16_t *addr,uint16_t value);
eeprom_read_word (const uint16_t *addr);
(Beim zweiten Start den auskommentierten Code nach Init() einmalig auch ausführen!)Code:#include "asuro.h"
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{
/* Wait for completion of previous write */
while(EECR & (1<<EEWE))
;
/* Set up address and data registers */
EEAR = uiAddress;
EEDR = ucData;
/* Write logical one to EEMWE */
EECR |= (1<<EEMWE);
/* Start eeprom write by setting EEWE */
EECR |= (1<<EEWE);
}
unsigned char EEPROM_read(unsigned int uiAddress)
{
/* Wait for completion of previous write */
while(EECR & (1<<EEWE))
;
/* Set up address register */
EEAR = uiAddress;
/* Start eeprom read by writing EERE */
EECR |= (1<<EERE);
/* Return data from data register */
return EEDR;
}
int main(void) {
unsigned i;
unsigned char c;
Init();
/*
EEPROM_write(509,'m');
EEPROM_write(510,'i');
EEPROM_write(511,'c');
*/
SerWrite("\n\n\rInhalt des EEPROMS\n\r10.3.2007 (code by dalmator)\n\n\r",54);
for (i=0;i<512;i++) {
StatusLED(RED);
c=EEPROM_read(i);
StatusLED(GREEN);
SerWrite(&c,1);
}
while (1);
return 0;
}
Gruß
mic
ich habe jetzt ein bisschen getüftelt! wie muss ich den code mit der stopuhr verändern, damit der wert der stopuhr für immer gespeichert bleibt(kann man ihn auch wieder löschen). und wie lade ich ihn dann auf den pc?