www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Servo , ADC Bascom


Autor: Jason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe ein Problem mit der Servo ansteuerung unter Bascom.
Ick kann das Servos mit disem ganz normal ansteuer ! alles funktioniert

$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 100
$swstack = 100
$framesize = 100

Config Servos = 1 , Servo1 = Portd.2 , Reload = 10

Config Portd = Output

Enable Interrupts

Servo(1) = 0


Waitms 1000

Servo(1) = 150



Waitms 1000
Waitms 1000

Servo(1) = 0




Wenn ich nun aber diesen Code benutzen will ghet es leider nicht mehr.
Ich kann zwar die AD Werte auslesen aber das Servo hat keine Funtion.
Ich habe den Code jetzt schon xmal durchgeschaut und kann einfach den 
Fehler nicht finden.
Ich hoffe ihr könnt mir helfen
regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 100
$swstack = 100
$framesize = 100
Const Adc_multi = 0.0048828125
Dim Messergebnis As Word
Dim Volt As Single
Dim Volt2 As Single
Dim Teiler As Single

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Config Servos = 1 , Servo1 = Portd.2 , Reload = 10

Start Adc
Enable Interrupts








Servo(1) = 150

Waitms 1000
Messergebnis = Getadc(0)

Waitms 100
Teiler = 6
Locate 1 , 1
Waitms 100
Volt = Messergebnis / Teiler
If Messergebnis < 20 Then Volt = 0
If Volt > 150 Then Volt2 = 150 Else Volt2 = Round(volt)
Waitms 100



Waitms 1000


Autor: Jason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe mal einfach alles entfernt was man nicht direkt braucht.
Mir ist aufgefallen das sobald ich ADC und Servo zusammen configuriere 
das Servo sich nicht steuer läst.

Config Adc = Single , Prescaler = Auto , Reference = Avcc
Config Servos = 1 , Servo1 = Portd.2 , Reload = 10


Ohne " Config ADC" funktioniert alles bestens , sobald ich aber diesen 
Teil einfüge funktionert das Servo nicht.
Kann man unter Bascom nicht beides machen also Servo und ADC oder was 
mache ich Falsch

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jason schrieb:

> Kann man unter Bascom nicht beides machen also Servo und ADC oder was
> mache ich Falsch

Mir fehlt in deinem Code schon mal die zentrale Do-Loop, in der die 
ganze Arbeit immer wieder und immer wieder gemacht wird.

Autor: Jason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Danke für den Tip.

So ich ahbe es nun geschaft das ich das Servo auch dan ansteuern kann 
wenn ich den ADC configuriere.


Nun habe ich aber ein anderes Problem
Ich aheb zwischen den Servobefehlen immer ein " waitms 1000 "stehen.
Das funktioniert auch alleine ganz gut.

Sobald ich aber versuche einen Wert per ADc einzulesen wird es kritisch.
Entweder zuckt das Servo oder der ADCV Wert wird flasch per Print 
ausgegebn , wirre Zahlen.

Wie ist das nun in Bascom , beide Befehle brauche ja einw enig zeit wie 
kann man das machen da man einen AD Wert einliest und dan das Servo 
stellt ?
ohne das die sich behindern

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeig dein Programm.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.