PIC A/D - Multiplexa?

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

PIC A/D - Multiplexa?

Inlägg av arte »

Hej,

I mitt projekt http://elektronikforumet.com/forum/view ... hp?t=20756 så behöver jag mäta spänningen på många potentiometrar.

PICen har 10 inbyggda AD omvandlare men jag kanske behöver flera.
Då antar jag att man skall multiplexa?

Ifall jag ansluter tre 8-kannals multiplexrar så kan jag mäta spänningen på 24 potentiometrar och bara offra 9 digitala utgångar?

Jag är lite osäker ifall jag har tänkt rätt men:

7 bitars AD omvandling tar ca 7us


24 * 7us = 0.168 ms att sampla alla 24 portar?

(Det är viktigt att kontrollen inte *laggar*)

Det är en PIC18F4550
Senast redigerad av arte 21 september 2007, 15:35:06, redigerad totalt 1 gång.
Användarvisningsbild
speakman
Inlägg: 4838
Blev medlem: 18 augusti 2004, 23:03:32
Ort: Ånge

Inlägg av speakman »

Du kan ju använda seriella AD-omvandlare med. t.ex. SPI-buss. Då går det åt MISO, MOSI, CLK + en CS per krets.

Varför sånna tidskrav? 0.168ms? Otroligt snabbt...
Även om det "laggar" ett par ms så är det väl knappast något som örat skulle höra?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> PICen har 10 inbyggda AD omvandlare

Vilken "PIC" ???
Dessutom har praktiskt taget alla (normala) PIC modeller *EN* ADC.

> 8-kannals multiplexrar

Analoga eller digitala ?

> och bara offra 9 digitala utgångar?

Som används till vadå ?

> 7 bitars AD omvandling tar ca 7us

Varför just 7 us ? Hur har du kommit fram till det ?
Och vad menar du med en "7 bitars AD omvandling" ??

> 24 * 7us = 0.168 ms att sampla alla 24 portar?

Inkluderar det acquisition time ?
XorXaX
Inlägg: 409
Blev medlem: 27 maj 2004, 09:44:16

Inlägg av XorXaX »

Tror också att det skulle vara bättre att använda A/D-omvandlare
på SPI-bussen i stället om du ska ha flera stycken.

Och en liten rättelse :)
Antar att det är PIC18F4550 du menar eftersom du skriver
om den i den adnra tråden.

PIC18F4550 har 13 st ingångar multiplexade till en 10-bits
A/D-omvandlare. Vill du ha bättre nogranhet än 10 bitar finns
PIC18F4553 som är identisk med 4550 fast den har en
12-bits A/D-omvandlare multiplexad på 13 ingångar.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Inlägg av arte »

speakman:, XorXAX

Seriella AD omvandlare är bra.
Men då kommer det gå upp i pris lite grand, spelar iförsiginte så stor roll.
Det kanske är *så man gör*.

Har väldigt många IO pinnar men *bara* 10 av dessa är AD.
Så jag kan offra IO pinnar rätt friskt.

sodjan:
18F4550 är det vi pratar om, glömde skriva det :)

Skall mäta en spänning över en potentiometer = analoga.

offra 9 digitala utgångar till multiplexern (3 per multiplexer)

Behöver inte 10bitars upplösning utan det räckermed 7.
10bitars omvandling tar 11TAD
7bitars omvandling tar 8TAD

Conversion: 7TAD
Acquistiontime: 4TAD
0.7us*11 = ungefär 7us

Men man kanske måste göra 10bitars omvandling?

Ifall en kovertering tar dubbelt så långtid så spelar det ingen roll, bara det inte tar 100ggr mera :)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> 7bitars omvandling

Hur gör du det ? Jag är ganska övertygad om att alla
omvandlingar ger 10 bitar.

> offra 9 digitala utgångar till multiplexern (3 per multiplexer)

Många muxar har en "enable" eller "Chip Select".
Då blir det 3+3 = 6 pinnar.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Inlägg av v-g »

En extern A/D omvandlare kostar mer än de flesta PIC'ar. Iaf om man kollar på ELFA.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Inlägg av arte »

Sodjan:

> 7bitars omvandling
>Hur gör du det ? Jag är ganska övertygad om att alla
>omvandlingar ger 10 bitar.

Nä du har nog rätt där. Kollade på fig. 21-4 på sidan 267. Fick intrycket
att man kunde välja antalet TAD cycles.
Min Tosc är också 50ns då måste TAD väljas till 16*Tosc så en Tad är 0.8us.
Så omvandlingen tar lite längre än 7us.

> offra 9 digitala utgångar till multiplexern (3 per multiplexer)
>Många muxar har en "enable" eller "Chip Select".
>Då blir det 3+3 = 6 pinnar.

Det blir några extra pinnar, det tänkte jag inte på.

Vad sägs om denna. Billig och 16 Kanaler
Användarvisningsbild
Zyxel615
EF Sponsor
Inlägg: 1839
Blev medlem: 9 november 2005, 21:20:43
Ort: Kiruna

Inlägg av Zyxel615 »

Nej det blir inte extra pinnar. Tre datapinnar som delas mellan samtliga MUXar, plus en "enable" per MUX. Alltså 6 pinnar totalt.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Inlägg av arte »

Zyxel615 skrev:Nej det blir inte extra pinnar. Tre datapinnar som delas mellan samtliga MUXar, plus en "enable" per MUX. Alltså 6 pinnar totalt.
Ja just det! Så blir det ja....

Blir nog 3 stycken 16st kanalers tror jag, 4+3 pinnar då...

tack för hjälpen.
Användarvisningsbild
speakman
Inlägg: 4838
Blev medlem: 18 augusti 2004, 23:03:32
Ort: Ånge

Inlägg av speakman »

Åsså var det forumets regler...
J10
Inlägg: 531
Blev medlem: 6 december 2004, 15:25:30

Inlägg av J10 »

Behöver man inte mer än ett visst antal bitar upplösning så kan man iaf på PIC16 avbryta omvandlingen manuellt vid önskat antal omvandlade bitar. Tiden från start till stop får man då hålla koll på själv.

"After the A/D conversion is completed or aborted, a 2 TAD wait is required before the next acquisition can be started." Sid 269 i PIC18F4550 databladet.

Tolkar jag som att det går att avbryta omvandlingen men det verkar inte stå vad som händer om man avbryter eller hur man gör det men jag tvivlar på att den skulle vara sämre än PIC16 och slänga bort datan bara.
Värt ett försök.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Är det något du har testat eller är det din tolkning av databladet ?
J10
Inlägg: 531
Blev medlem: 6 december 2004, 15:25:30

Inlägg av J10 »

Givetvis har jag testat men bara i PIC16.

Det var inte så mycket "Avbryta" som jag minns det men väl ändra omvandlingshastigheten mitt i.

"23.7.1 Faster Conversion - Lower Resolution Trade-off" i "PICmicro Mid-Range MCU Family Reference Manual" beskriver detta.

Hittar inget motsvarande dokument för PIC18 så jag låter det vara osagt hur man eventuellt skulle göra där.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Gissningsvis så är ADC modulen i princip samma så gissningsvis
så fungerar samma "trick" även på PIC18...
Skriv svar