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

Re: Wie benutzt man den ADC6 und ADC7 vom Mega32 ? Kategorie: CC-Pro Unit & Appl.Board (von Hannes - 7.02.2008 9:32)
Als Antwort auf Re: Wie benutzt man den ADC6 und ADC7 vom Mega32 ? von PeterS - 6.02.2008 19:08
Ich nutze:
C-Control Pro Mega32, eigenes Board

Hallo Peter,

es funktioniert. Danke für den Tip.





> Hallo Hannes,
>
> auch ohne USB wird A.6 und A.7 im Bootloader als Output initialisiert (eigentlich falsch, aber nicht tragisch).
> Bitte probier mal aus, ob ein "Port_DataDir(PortA, 0);" vorher hilft. Würde mich freuen ein Feedback von Dir
> zu bekommen, ob das dann geklappt hat.
>
> Gruss Peter
>
> > Hallo,
> >
> > ich möchte den ADC6 und ADC7 des Mega32 verwenden. Ich habe ein eigenes Board ohne USB
> > und Tastatur, somit sollte ADC6+7 zur freien Verwendung stehen.
> > Mit dem u.a. Programm bekomme ich allerdings nur brauchbare Werte von ADC0, ADC1 + ADC5
> >
> > Wie funktioniert ADC6 + 7 korrekt?
> >
> > Danke
> >
> >
> >
> >
> >
> >
> > void main(void)
> > {
> >
> >     word ADC_Wert;
> >
> >     SPI_Disable();
> >
> >     while(1)
> >     {
> >         ADC_Set(ADC_VREF_VCC, 0);       // ADC0
> >         ADC_Wert= ADC_Read();
> >         Msg_WriteWord(ADC_Wert);
> >         Msg_WriteChar(0x20);            // Space
> >
> >         ADC_Set(ADC_VREF_VCC, 1);       // ADC1
> >         ADC_Wert= ADC_Read();
> >         Msg_WriteWord(ADC_Wert);
> >         Msg_WriteChar(0x20);            // Space
> >
> >         ADC_Set(ADC_VREF_VCC, 5);       // ADC5
> >         ADC_Wert= ADC_Read();
> >         Msg_WriteWord(ADC_Wert);
> >         Msg_WriteChar(0x20);            // Space
> >
> >         ADC_Set(ADC_VREF_VCC, 6);       // ADC6
> >         ADC_Wert= ADC_Read();
> >         Msg_WriteWord(ADC_Wert);
> >         Msg_WriteChar(0x20);            // Space
> >
> >         ADC_Set(ADC_VREF_VCC, 7);       // ADC7
> >         ADC_Wert= ADC_Read();
> >         Msg_WriteWord(ADC_Wert);
> >         Msg_WriteChar(0x20);            // Space
> >
> >         Msg_WriteChar(0x0D);            //CR
> >
> >         AbsDelay(1000);
> >
> >     }
> > }


    Antwort schreiben


Antworten: