AVR644p Wandelt am ADC2(Pin A2) keinen Wert

Gast #1895930
Lesenswert?
• ▲
▼
Hallo, ich habe eine Sharpsensor an dem PA2 des 644p.
Bloss er wertet keine Wert aus mit meinem selbstgestrickten Bascom 
Programm.
Mit diesem Bascombefehlen klappt es:
$regfile = "M644pdef.dat"
$crystal = 16000000
$hwstack = 32
$swstack = 32
$framesize = 64
$baud = 19200

Dim Adcv As Word

Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , 
Databits = 8 , Clockpol = 0
Open "COM1:" For Binary As #1

Config Adc = Single , Prescaler = 8 , Reference = Avcc
Start Adc

Enable Interrupts

Waitms 500

Do

Waitms 300

Adcv = Getadc(2)
Print #1 , Adcv

Loop
End

aber mit meinem selbstgestrickten kommt nur "O" zum Terminal, woran 
liegt das:
$regfile = "m644pdef.dat"
$framesize = 32
$swstack = 32
$hwstack = 64
$crystal = 16000000
$baud = 19200

Declare Sub Adc_init()
Declare Sub Adc_read()

Dim A_h As Word
Dim A_l As Byte
Dim Adc_ergeb As Word
Dim W As Byte

Config Com1 = Dummy , Synchrone = 0 , Parity = None , Stopbits = 1 , 
Databits = 8 , Clockpol = 0
Open "COM1:" For Binary As #1

Call Adc_init()

Do

 Waitms 300
 Call Adc_read()
 Print #1 , Adc_ergeb
 Waitms 100

Loop

End

Sub Adc_init
   Set Admux.refs0
   Reset Admux.refs1                       ' interne Referenzspannung 
nutzen

   Set Adcsra.adps0
   Set Adcsra.adps1
   Reset Adcsra.adps2                      ' Frequenzvorteiler

   Reset Adcsra.adate                     ' Single

   Set Adcsra.aden                        ' ADC aktivieren

   Set Adcsra.adsc
   While Adcsra.adsc = 1                  ' eine ADC-Wandlung
   Wend
End Sub

Sub Adc_read()
   Reset Admux.mux0                        ' PA2 ???
   Set Admux.mux1

   Set Adcsra.adsc
   While Adcsra.adsc = 1                  ' eine ADC-Wandlung
   Wend

   A_l = Adcl0
   A_h = Adch0 * 256
   Adc_ergeb = A_l + A_h
End Sub

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.