Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Analog/Digital Wandler Kategorie: CC-Pro Unit & Appl.Board (von Max - 25.03.2014 20:29)
Als Antwort auf Re: Analog/Digital Wandler von NOOBIE - 23.03.2014 18:16

> > > Dim wert1, wert2 As Single
> > > Dim zeile1(10) As Char
> > > Dim zeile2(10) As Char
> > >
> > > Sub main()
> > >   LCD_Init()
> > >   LCD_ClearLCD()
> > >   LCD_CursorOff()
> > >
> > >   zeile1=" 0.00"
> > >   zeile2=" 0.00"
> > >   Do While (True)
> > >     ADC_Set(ADC_VREF_VCC,0)
> > >     wert1 = ADC_Read()*5.0/1024.0
> > >     ADC_Set(ADC_VREF_VCC,1)
> > >     wert2 = ADC_Read()*5.0/1024.0
> > >     Ausgabe()
> > >
> > >     AbsDelay(500)
> > >   End While
> > > End Sub
> > >
> > > Sub Ausgabe()
> > > Dim einheit(3) As Char
> > >   einheit = " V"
> > >     If wert1>4.99 Then
> > >             zeile1=" HHHH"
> > >     Else
> > >             Str_WriteFloat(wert1,2,zeile2,1)   !!!!Du hast zwei Mal zeile2!!!
> > >     End If
> > >
> > >    If wert2>4.99 Then
> > >             zeile2=" HHHH"
> > >     Else
> > >             Str_WriteFloat(wert2,2,zeile2,1)
> > >     End If
> > >
> > >     LCD_CursorPos(0x00)
> > >     LCD_WriteText(zeile1)
> > >     LCD_WriteText(einheit)
> > >     LCD_CursorPos(0x40)
> > >     LCD_WriteText(zeile2)
> > >     LCD_WriteText(einheit)
> > > End Sub
> > >
> > > hi ich bin totaler neuling im programmieren und entschuldige mich schon mal für die fragen!
> > > also ich brauche für ein schulprojekt den C-Control pro mega128 CAN damit will ich eine spannung
> > > messen und auf dem display anzeigen lassen!
> > > nun mein problem: an adc0 liegen ständig 4,6V an und an adc1 schwankt die spannuing zwischen 1.4V
> > > und 1.7V obwohl ich da nichts angeschlossen habe! adc0 funktioniert überhaupt nicht und wenn
> > > an adc1 gegen gnd eine 1.5V batterie messe zeigt das display 0.00 an. ich weiÃ? absolut nicht mehr
> > > weiter und hoffe ihr könnt mir helfen.
> > > schonmal danke im vorraus
> > > mfg NOOBIE
> >
> > Hallo,
> > offene Ports haben immer einen undefinierten zustand, weil sie wie eine Antenne
> > wirken. Du solltest bei der Fehlersuche auch immer mit einem
> > Msg_Befehl arbeiten. Mit Msg kannst du zB sofort erkenne ob
> > du was misst oder ob du Schmarrn in der Ausgabe programmiert hast,
> > wie in deinem Fall.
> > Komma null ist auch unnötig.
> > GruÃ? Max
> >
> > Dim wert1, wert2 As Single
> > Dim zeile1(10) As Char
> > Dim zeile2(10) As Char
> >
> > Sub main()
> >    LCD_Init()
> >    LCD_ClearLCD()
> >    LCD_CursorOff()
> >
> >
> >    Do While (True)
> >       ADC_Set(ADC_VREF_VCC,0)
> >       wert1 = ADC_Read()
> >       wert1 = wert1 *5/1024
> >       Msg_WriteFloat(wert1)
> >       Msg_WriteText("  wert1")
> >       Msg_WriteChar(13)
> >       ADC_Set(ADC_VREF_VCC,1)
> >       wert2 = ADC_Read()
> >       wert2 = wert2 *5/1024
> >       Msg_WriteFloat(wert2)
> >       Msg_WriteText("  wert2")
> >       Msg_WriteChar(13)
> >       Ausgabe()
> >       AbsDelay(500)
> >    End While
> > End Sub
> >
> > Sub Ausgabe()
> > Dim einheit(3) As Char
> >     zeile1=""
> >     zeile2=""
> >     einheit = " V"
> >     If wert1>4.99 Then
> >        zeile1=" HHHH"
> >     Else
> >        Str_WriteFloat(wert1,2,zeile1,0)
> >     End If
> >
> >     If wert2>4.99 Then
> >        zeile2=" HHHH"
> >     Else
> >        Str_WriteFloat(wert2,2,zeile2,0)
> >     End If
> >
> >     LCD_CursorPos(0x00)
> >     LCD_WriteText(zeile1)
> >     LCD_WriteText(einheit)
> >     LCD_CursorPos(0x40)
> >     LCD_WriteText(zeile2)
> >     LCD_WriteText(einheit)
> > End Sub
>
> >> danke für die antwort Max!
> >> ich habe das programm so geändert wie du es geschrieben hast aber jetzt schwanken die messwerte
> >> beider eingänge zwischen ca. 1.5V und 2,5V ohne dass ich etwas messe! wie kann ich es hinbekommen
> >> , dass wenn ich nichts messe auch 0,0V angezeigt wird? oder messe ich falsch?
> >> mfg NOOBIE

Hallo NOOBIE,
wenn du 0,0V haben willst, dann musst du deinen Eingang mit Masse verbinden bzw eine
Spannungsquelle mit 0,0V anschlieÃ?e.
Offene Eingänge zeigen immer dieses Verhalten, weil die Eingänge sehr hochohmig sind.
Was ist wenn du deine Batterie an die Eingänge hältst?

GruÃ? Max


    Antwort schreiben


Antworten:

Re: Analog/Digital Wandler (von NOOBIE - 5.05.2014 11:37)
    Re: Analog/Digital Wandler (von Max - 5.05.2014 14:38)
        Re: Analog/Digital Wandler (von NOOBIE - 13.05.2014 15:40)
            Re: Analog/Digital Wandler (von Max - 13.05.2014 18:18)
                Re: Analog/Digital Wandler (von NOOBIE - 14.05.2014 15:51)
                    Re: Analog/Digital Wandler (von Max - 14.05.2014 21:44)
                       Re: Analog/Digital Wandler (von NOOBIE - 23.05.2014 18:07)
                          Re: Analog/Digital Wandler (von NOOBIE - 25.05.2014 18:35)