Moin,
Ich hatte damals etwas Hilfe bekommen von jemandem, der sich mit Bascom auskennt und leider ist er jetzt sehr schwer zu erreichen, oder hat anschein keine Lust mehr ^^ Ich wollte das jetzt mal allein versuchen, aber mit etwas Hilfe von Euch.
Ich habe erst vor kurzem den AVR- Einstieg leicht gemacht durchgearbeitet und ein paar Befehle in Basecom Language Reference angeschaut. Ich will nur damit sagen, dass ich ziehmlich neu bin in solchen Sachen, aber mich schon mal darauf vorbereitet habe.
Mein Projekt ist ein Zielscheibensystem, dass automatisch aufleuchtet und während dessen getroffen werden kann, und danach eine andere Zielscheibe leuchtet. Alles soll mit Punkten bewertet werden. Natürlich soll dann eine Digitale Zahl zu sehen sein in typisch Roter leuchender Schrift.
Jetzt steh ich da mit einen Script von jemand anderem, den ich sogar zum Teil verstehe, aber irgendwie nicht so funktioniert wie vorgesehen.
Dieser Script gehört zum ATtiny2313 auf dem ATMEL Evaluations-Board Version 2.0.1
Wir wollten das ADC ausnutzen.Code:$regfile = "m8def.dat" $crystal = 8000000 '***********************************************************************' Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc Dim Scheibe As Integer Config Portd.0 = Output Config Portd.1 = Output Config Portd.2 = Output Config Portd.3 = Output Config Portd.4 = Output Do If Scheibe > 204 Then Portd.0 = 1 Else Portd.0 = 0 End If If Scheibe > 408 Then Portd.1 = 1 Portd.0 = 0 Else Portd.1 = 0 End If If Scheibe > 611 Then Portd.2 = 1 Portd.1 = 0 Portd.0 = 0 Else Portd.2 = 0 End If If Scheibe > 615 Then Portd.3 = 1 Portd.2 = 0 Portd.1 = 0 Portd.0 = 0 Else Portd.3 = 0 End If If Scheibe > 819 Then Portd.4 = 1 Portd.3 = 0 Portd.2 = 0 Portd.1 = 0 Portd.0 = 0 Else Portd.4 = 0 End If Loop End '************************************************************************* Config Int0 = Rising Enable Int0 On Int0 On_int0 On_int0: Scheibe = Getadc(0) Return '
Er sagte da nur, alle Scheiben müssten an den INT0 Pin angelegt werden und die LEDs an die anderen Pins. Nur scheint mir das etwas unlogisch zu sein und wollte euch mal fragen, wie ich das weiter machen könnte.
Ich möchte aber jetzt ein ATmega32 16PU 1218 verwenden und habe den Code umgeschrieben mit erstmal 3 Zielscheiben.
Könntet Ihr mir bitte weiter helfen?Code:$regfile = "m8def.dat" $crystal = 8000000 '***********************************************************************' Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc Dim Scheibe As Integer Config Portd.0 = Output Config Portd.5 = Output Config Portd.6 = Output Do If Scheibe > 204 Then Portd.0 = 1 Else Portd.0 = 0 End If If Scheibe > 408 Then Portd.5 = 1 Portd.0 = 0 Else Portd.5 = 0 End If If Scheibe > 611 Then Portd.6 = 1 Portd.5 = 0 Portd.0 = 0 Else Portd.6 = 0 End If Loop End '************************************************************************* Config Int0 = Rising Enable Int0 On Int0 On_int0 On_int0: Scheibe = Getadc(0) Return '
Bis jetzt leuchtet keine LED
mfg EKI







Zitieren

Lesezeichen