So habe noch mal geprogselt und was anderes:
und hier die Hardware:Code:$regfile = "m8def.dat" ' atmega8 $crystal = 4000000 $baud = 19200 $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 'default use 10 for the SW stack $framesize = 40 'default use 40 for the frame space On Urxc Onrxd 'Interrupt-Routine setzen Enable Urxc 'Interrupt URXC einschalten Enable Interrupts Dim Widerstand As Long Dim Saver As Integer Dim Ausgang As Integer Dim Sender As Integer Dim W As Word Dim I As Integer Dim Wi As Integer Config Adc = Single , Prescaler = Auto Ddrd = &B00000001 'PD0 als augang und der rest als eingang Kondensaorlader Alias Portd.0 Start Adc ' _ ___ _ _ ___ ''''''''''''''''''''''''''''''''''I_ I I_I I_I I ''''''''''''''''''''''''''''''''''''''' ' _I I I I I\ I Start: Kondensaorlader = 1 'PD0 anschalten For Widerstand = 0 To 500000 Step 1 'for schleife in der der Widerstand gemssen werden soll W = Getadc(0) If W > 646 Then Goto Save 'wenn der adc wanderler rößer als 646 ist nach save weiter Next 'Ende der For schleife Save: 'unterrutine save Kondensaorlader = 0 'PD0 ausschalten um Kondensator um diode zu entladen If Saver > 8184 Then Goto Ended 'wenn der eeprom voll ist das ende Saver = Saver + 6 'eeprom stelle zum schreiben um 6 erhöhen Writeeeprom Widerstand , Saver 'in eeprom schreiben Wait 300 '5 min warte Goto Start 'wider zum anfang ' ___ _ _ _ _ ___ '''''''''''''''''''''I I\ I I I_ I_I I_I I I I_I I '''''''''''''''''''''''''''''''''''''''''' ' I I \I I I_ I\ I\ I_I I I Onrxd: 'anfang des interupts ' For Ausgang = 0 To 4184 Step 6 'For schleife in der der Intrrupt bearbeitet wird Readeeprom Sender , Ausgang Print Sender 'hier auch noch Next 'und hier auch Return ' _ _ '''''''''''''''''''''''''''''''''''''''I_ I\ I I\ I_ '''''''''''''''''''''''''''''''''''''''''' ' I_ I \I I/ I_ Ended: 'ende des ganzens da eeprom voll ist Goto Ended
Externes Bild anzeigen
sorry für die schlechte Zeichnung ging auf die schnelle nicht anderes
So dazu nun meine Fragen:
Ist der eeprom danach voll oder ist er grad so am limit oder hat er noch platz?
Wie lange braucht der µC um EIN mal die For schleife von anfang bis zum ende durch zulaufen? Also der der teil:
so das waren schon die Fragen.Code:For Widerstand = 0 To 500000 Step 1 'for schleife in der der Widerstand gemssen werden soll W = Getadc(0) If W > 646 Then Goto Save 'wenn der adc wanderler rößer als 646 ist nach save weiter Next 'Ende der For schleife
mfg
Michael
PS: Wenn ihr bessere Idee habt wie ich einen Wiederstand messen kann die werte dann abspeichern und späterüber eine Interrupt abrufen kann dann sagt es mir. DANKE







Zitieren

Lesezeichen