hallo,

ik heb zo een avr bordje met een attiny 2313
en ik heb een audio installatie in mijn auto
om te programmeren gebruik ik bascom

nu was mijn vraag kan ik de waarde van mijn batterij binnen lezen via de analoge ingang van de attiny, een programma maken zodat ik op de lcd de waarde kan af lezen (2cijfers voor, en 1 na de komma).

en kan iemand mij opweg helpen om dit programma te schrijven

mvg kristof

De 2313 heeft geen analoge ingang. Je kan een externe ADC gebruiken of een andere AVR.

@smoerijf

oei sorry,
maar op pinnetje 13 en 12 stond AIN1 en AIN0 ik dacht dat het analoge ingang 0 en 1 was blijkbaar niet dan
en zou het dan met een atmega32l wel lukken?

alvast bedankt

Ja, die kan dat wel, op de ADCx pinnetjes.

AIN0/1: Analog comparator, Kun je gebruiken als 'opamp', maar kun je geen spanning met meten alleen vergelijken.

@smoerijf

ah ok bedankt voor de info

ik ga even kijken in de voorbeelden die bij bascom staan, om de analoge waarde in te lezen, en om te zetten,...

mvg kristof

Als je de aanname doet dat de batterij spanning niet echt fluctureerd, kun je misschien met die comparator en een (gefilterde PWM uitgang) ook op de ATTiny2313 wel een 8bit ADC nadoen.

Het sample-and-hold gedeelte van een ADC sla je dan over, en door het PWM niveau te varieren en de verandering van de uitgang van de comparator in de gaten houden, kun je wel een indicatie krijgen van het signaal niveau. Blijft een beetje behelpen, maar is misschien wel leuk om eens te proberen :)

Als je de aanname doet dat de batterij spanning niet echt fluctureerdt

Assumption is the mother of all fuck-ups.

Mee eens; voor een serieuze toepassing is dat ook niet geschikt! Maar het blijft een leuk en leerzaam hobbyprojectje, wat best redelijk (maar niet betrouwbaar!) zou kunnen werken...

Op 8 oktober 2009 18:47:25 schreef smoerijf:
Ja, die kan dat wel, op de ADCx pinnetjes.

AIN0/1: Analog comparator, Kun je gebruiken als 'opamp', maar kun je geen spanning met meten alleen vergelijken.

Precies. Dus je kunt een spanningsdeler maken op de batterij en AIN0 daarmee aansluiten. Vervolgens maak je een PWM circuit dat een elco via een weerstandje van spanning voorziet en die sluit je op AIN1 aan. Zolang de comparator 1 geeft, schroef je voorzichtig de PWM dutycycle omhoog. Net zolang dat ie zo nu en dan 0 en 1 geeft. Alternatief:


   enable_outpin;
   for (i=0;i<1024;i++)
      outpin = comparatoroutput;
      tot += comparatoroutput; 
   tristate_outpin;
   show (tot); //  10 bits = ongeveer 1:1000 resolutie.. 

Volgens mij gaat dat wel werken. :-) (afhankelijk van hoe om je ain 0/1 aangesloten heb moet je mischien de comparatoroutput inverteren).

Voor dit soort truuks zit nu net die comparator er in.... :-)