Fórum témák

» Több friss téma
Fórum » PIC kezdőknek
 
Témaindító: Placi84, idő: Okt 3, 2005
Témakörök:
- A PIC ÖSSZES Vdd és Vss (AVdd és AVss) (tápfeszültség) lábát be kell kötni!
- A táplábak mellé a lehető legközelebb 100nF-os KERÁMIA kondenzátorokat kell elhelyezni.
- Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre.
- Külső kvarc használatakor 4MHz-ig XT, a fölött pedig HS konfigurációt kell beállítani.
- Stabilizált tápegységet kell használni, a kapcsoló üzemű "telefon töltő" adapterek okozhatnak hibákat.
- Programozáshoz, használj lehetőleg PICKIT2 vagy 3 programozót. Kerülendő a JDM (soros porti) programozó.
- A PIC adatlapja (PDF), tartalmazza a lábak kiosztását és a PIC minden paraméterét. Az adatlap ingyen letölthető!
- Egyes PIC típusoknál az RA4 nyitott nyelőelektródás (Csak lefelé húz L szintre, H szintet nem ad ki!)
- Ha a PGM lábat digitális ki-/bemenetnek használod, az alacsony feszültségű programozási lehetőséget le kell tiltani.
Lapozás: OK   402 / 1210
(#) qbit válasza Hp41C hozzászólására (») Ápr 15, 2013 /
 
Sziasztok! A programrészlet, ami nem azt adja, amit a DVM-mel mérek:
  1. #define USE_OR_MASKS            //"VAGY" művelettel egyesíthető makrók legyenek
  2. #include "piccolo_all.h"
  3. #include "timers.h"
  4. #include "adc.h"
  5. #include "ja_tools.h"    // ez az ftoa függvény (saját fejlesztés)
  6. #include "ja_8x7segm.h"  // ez kezeli a LED-es kijelzőt (saját fejlesztés)
  7.  
  8. #include <delays.h>
  9.  
  10.  
  11. #define CH_FORWARD      ADC_CH0         //a potméter AN0-ra csatlakozik
  12. #define CH_BACK         ADC_CH1        
  13.  
  14. char * pfs;
  15. char c;
  16. unsigned int v;
  17. float f;
  18.  
  19. #pragma udata
  20.  
  21. extern char s[20]; // Itt van karakteresen a szám ja_tools.h-ban
  22.  
  23. void Init_ADC(void)  {
  24. #if defined(__18F4550)
  25.         TRISAbits.TRISA0 = 1;                   //RA0/AN0 legyen bemenet
  26.         TRISAbits.TRISA1 = 1;                   //RA1/AN1 legyen bemenet
  27.         OpenADC(ADC_FOSC_64 | ADC_RIGHT_JUST | ADC_20_TAD,
  28.                 CH_FORWARD | ADC_INT_OFF | ADC_REF_VDD_VSS,
  29.                 ADC_2ANA);                      //Az első két csatorna (AN0 és AN1)
  30.                                                 //legyen analóg
  31. #else
  32.    #error "A választott mikrovezérlőt nem támogatja a PICCOLO projekt!"  
  33. #endif
  34.  
  35. }
  36.  
  37. /** Egy analóg csatorna kiválasztása, és megmérése. Az ADC kezeléséhez
  38.  *  a C18 perifériakönyvtár függvényeit használjuk.
  39.  *  A Read_ADC() függvény blokkoló típusú: kivárja a mérés végét (~46 us).
  40.  * \param chan a kiválasztott csatorna ADC_CH0, ADC_CH1,... stb. előredefiniált makrója.
  41.  */
  42. unsigned int read_ADC(unsigned char chan) {
  43.     SelChanConvADC(chan);                       //Csatornaválasztás és konverzió indítása
  44.     while (BusyADC());                          //Megvárja a konverzió végét
  45.     return ReadADC();                           //Visszatérési érték a konverzió eredménye
  46.  
  47. }
  48.  
  49. void main(void) {
  50.         unsigned int b;
  51.         pfs=&s[0]; // a megjelenítendő string
  52.  
  53.         Init_ADC();
  54.        
  55.  
  56.     while (1) {        
  57.                 Delay10KTCYx (60);
  58.                 b=read_ADC(CH_FORWARD);
  59.  
  60.                 f=5.0*b/1024;
  61.  
  62.                 ftoa(f,pfs,8,2); // stringgé alakítja a számot (8 jegy, 2 tizedes)
  63.                 showstr(pfs); // kiteszi a stringet a kijelzőre
  64.     }
  65.        
  66. }


Köszi a fáradozást!
A hozzászólás módosítva: Ápr 15, 2013
(#) icserny válasza qbit hozzászólására (») Ápr 15, 2013 /
 
A b=read_ADC(CH_FORWARD); konverzió eredményét kellene ellenőrizni, mert nem tudni, hogy a későbbi skálázásnál mit csinál a programod. Mellesleg a float típust jó volna kiküszöbölni. Nem hiszem, hogy nélkülözhetetlen volna. Számold át az eredményeket inkább millivoltokba! 32 bites (long) változó kell hozzá.

fesz = b*5000L/1023L;

Ezt könnyen kiírathatod a PICCOLO projektben található outdec() függvénnyel...
(#) Hp41C válasza qbit hozzászólására (») Ápr 15, 2013 /
 
Szia!
Idézet:
„float f;
f=5.0*b/1024;”


Szia!
Ez egy a magassabb szintű nyelvet használók tipikus hibái közül. A fordító előbb elosztja a b értékét az egész számként értelmezett 1024 -gyel, majd float számot csinál belőle és megszorozza 5.0 -val. ... Mert így rövidebb a kód, a szorzás és az osztás egyenrangú művelet.
Írd inkább így:
Idézet:
„f=5.0*b/1024.0;”

vagy
Idézet:
„f=(5.0*b)/1024;”

Idézet:
„f=5.0*b; f/=1024;”

Idézet:
„f=5.0*(float)b/1024.0;”

Idézet:
„f=((float)(5*b))/1024.0;”
...
A hozzászólás módosítva: Ápr 15, 2013
(#) Poostmaster válasza mps hozzászólására (») Ápr 15, 2013 /
 
Úgy néz ki, reménytelen eset. Kár a szót pazarolni rá.
Ez egy életképtelen kapcsolás, ráadásul hiába mondod neki, hogy 10k, kicseréli 5-re.
Kondi sincs benne egy szál se. Minek a kvarc, ha nem működik?
(#) Dokikaa válasza Poostmaster hozzászólására (») Ápr 15, 2013 1 /
 
Üdv!

A kapcsolás egy gyors vázlat volt, amit eaglebe este összeraktam, h ne lehessen belekötni( de sikerült). Szerintem lényegtelen h 5k vagy 10k....gondold át kicsit. A kondi csak a stabilitást állítja az oszcillátornak, felesleges, nem mp pontos megszakítást csinálok..(egyébként a nyákon rajta van)
Visszatérve a problémára, az volt hogy a gépet alvó állapotba raktam, és mikor visszaléptem, az ott megnyitott projektet próbáltam feltölteni, és nemtetszett neki(windows(Y)).
Viszont így új probléma lépett fel. Rátöltöm a programot, hogy az alsó 5 ledet kapcsolja be, amint végez az égetéssel, felvillanak a ledek 1 pillanatra, majd újra sötétség van.
A program:
  1. include "p18f242.inc"   ; A processzorfüggő deklarációkat tartalmazó include fájl                                                                    
  2.    
  3.     CONFIG     CP0=OFF
  4.         CONFIG     OSCS=ON, OSC=XT;oszcillátor bekapcsolása, 4mhz alatt xt, felett HC
  5.    ;CONFIG     BOR=ON, BORV=25
  6.         CONFIG     WDT=OFF
  7.  
  8.         org     0x0000
  9. Rst_vect                                         ; Reset vektor, tápbekapcsoláskor, resetkor innen indul
  10.         goto    Start                ; a program végrehajtása
  11.  
  12.         org     0x0008
  13.  
  14. Start
  15.     MOVLW    B'00000000'
  16.     MOVWF    TRISC
  17.    
  18. MAIN
  19.     MOVLW    B'00011111'
  20.     MOVWF    PORTC
  21.         goto     MAIN
  22.  
  23.         end


Esetleg erre valakinek valami 5 let? (Hogy beletudjanak kötni az emberek, 20k-s ellenállást raktam be állandóra az ~MCLR láb és a Vdd közé).

Köszönöm a segítséget.
A hozzászólás módosítva: Ápr 15, 2013
(#) mps válasza Dokikaa hozzászólására (») Ápr 15, 2013 /
 
No: először is, ha kérdezel valamit, pontos rajzot tegyél fel mert nagyon nem mindegy mi, hogyan van.
Aztán: nem mindegy az az ellenállás, nem végtelen terhelhetőségű a pk2 kimenete, a 12V sem, ha pedig nincs meg akkor nem tud programozó módba lépni a proci, ha túl kicsi a tápon keresztül is tudna érdekeset művelni egy nagyobb terhelhetőségű vpp-vel.
Kondi a kvarcnál: ez nekem fel sem tűnt, sőt még a kvarc sem (csak kéne egy szemüveg), viszont nem csak a pontosságot állítja be, van amelyik be sem indul anélkül, kvarca válogatja.
De én nem is erről beszéltem, hanem a tápon lévő kondiról, ez is csak egy digitális áramkör, a jelváltásoknál jó nagy árammal, amit valamiből fedezni kell, ha nincs közel a lábnál kondi akkor csak a messze lévőből tudná, ha a hozzávezetésnek nem volna induktivitása ami gátolja az áram gyors növekedését.
Szóval egy áramkör működésébe sok minden bele szól, ezeket illik betartani vagy nem feltétlenül fog megfelelően működni. Lehet, hogy egyszer egyszer sikerül, de amikor nem akkor csak keresgetheti az ember a hibát.
(#) tom75 hozzászólása Ápr 15, 2013 /
 
Hello!
Tudtok abban segíteni, hogy a textool csatlakozót, hogy lehet univerzálissá tenni?
14/18/28/40pin-es pic-hez is használható legyen?

köszi
(#) vicsys válasza tom75 hozzászólására (») Ápr 16, 2013 /
 
A keskeny közepűt kell vásárolni és abba mindegyik belemegy.
(#) Hp41C válasza tom75 hozzászólására (») Ápr 16, 2013 /
 
Szia!
Még egyszer:
Nem javasolt a programozási lábakon (Vdd, AVdd, Vss, AVss, MCLR, PGD, PGC, PGM) kívül más lábakat is bekötni a programozás ideje alatt. A programozó többször ki be lépked a programozási üzemmódból, letiltott MCLR -re és belső órajelre konfigurált kontroller el is indulhat, a lábakat kimenetté teheti - esetleg pont ott, ahol a másik a foglalatba illeszthető tok a tápfeszültséget, földet kapná.
Erősen ajánlott az áramkörön belüli programozás (tépfeszültség szűrés és a belső stabilizátor beállítása, a Vcap bekötése mind megoldott a panelen.) Ha nem valósítható meg, akkor lemezes foglalattal felépített egyedi adaptereket lehet használni - ahány tökozási variáció van, annyi adapter kell (kb. 20 - 30). Mindegyiket jó láthatóan meg kell jelőlni, mely típusokhoz alkalmazható.
A hozzászólás módosítva: Ápr 16, 2013
(#) tom75 válasza Hp41C hozzászólására (») Ápr 17, 2013 /
 
Próbára/fejlesztéshez egy új áramkör kipróbálásához csak kéne valami fejlesztőkörnyezet, hogy ne kelljen mindent megépíteni többször.
(#) Hp41C válasza tom75 hozzászólására (») Ápr 17, 2013 /
 
Erre a célra legalkalmasabb a breadboard. Ahogy írtam, lehet egyedi adaptereket is készíteni...
(#) Doky586 válasza tom75 hozzászólására (») Ápr 17, 2013 /
 
(#) cross51 hozzászólása Ápr 17, 2013 /
 
Sziasztok!
Egy kis segítséget szeretnék kérni ADC be mert itt is kerestem kerestem máshol is de nem tudtam működő programot írni.
  1. list   p=16f1513    
  2. #include <p16f1513.inc>
  3.  
  4.     __CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOREN_OFF & _CLKOUTEN_OFF & _IESO_OFF & _FCMEN_OFF
  5.     __CONFIG _CONFIG2, _WRT_OFF & _VCAPEN_OFF & _STVREN_OFF & _BORV_LO & _LPBOR_OFF & _LVP_OFF
  6.  
  7.     RADIX   HEX
  8.  
  9.     ERRORLEVEL -302, -303
  10.  
  11.  
  12.     CBLOCK      0x20    
  13.         Time
  14.         Time1
  15.     ENDC
  16.  
  17.     ORG     0x000
  18.  
  19.  
  20.  
  21.     BANKSEL TRISB
  22.     MOVLW   B'00000000'
  23.     MOVWF   TRISB  
  24.     BANKSEL LATB    
  25.     CLRF    LATB
  26.     BANKSEL ANSELB
  27.     CLRF    ANSELB  
  28.  
  29. MAIN:
  30.     MOVLW   B'10000000'
  31.     MOVWF   LATB
  32.    
  33.     CALL    Delay_ms
  34.     CLRF    LATB
  35.    
  36.     CALL    Delay_ms
  37.  
  38.     GOTO    MAIN
  39.  
  40.  
  41. Delay_ms:
  42.     BANKSEL Time
  43.     BANKSEL Time1
  44.     MOVLW   0xFF
  45.     MOVWF   Time
  46.     MOVLW   0x5
  47.     MOVWF   Time1
  48.  
  49.     DECFSZ  Time, f
  50.     GOTO    $-1
  51.     DECFSZ  Time1, F
  52.     GOTO    $-3
  53.     RETURN
  54.     END

itt egy egyszerű program ezt hogy tudom megtenni hogy mondjuk a Time1 ADC-be menjen és azzal tudjam változtatni ?
Köszi.
(#) proba válasza cross51 hozzászólására (») Ápr 17, 2013 /
 
Az ADC Analóg Digital Converter rövidítése szerintem. Így semilyen változó értékét nem igazán tudom hova tudnád beírni. Ez a modul arra való, hogy a portlábakon feszültséget mérj vele, és ezt valami változóban feldolgozd.
Neked a DAC modul kellene, ha változótól függő kimenő feszültséget szeretnél kapni.
(#) cross51 válasza proba hozzászólására (») Ápr 17, 2013 /
 
Akkor pontosan hogy mi is kéne van egy poti mely adc vel megy a pic be és így be tudom állítani egy led villogási sebességét és azt tudom majd másra is használni de ezt bárhogy is próbálkoztam nem jöttem rá hogyan lehetne megírni.
(#) sherlock válasza cross51 hozzászólására (») Ápr 18, 2013 /
 
Nem tudom, mennyire muszáj neked a szuperoptimalizált assembler kód, kezdetnek leeht jobb volna ha c-ben írnád meg. Szerintem nagyon sok példa van neten, de ha nem is lenne, az adatlapban lépésenként leírja, miket kell csinálni ahhoz, hogy egy AD mérést végezzen az ember. Nézd csak meg, az ADC fejezetnél lesz egy ilyen leírás: 16.2.6 ebből az adatlapból.
(#) icserny válasza cross51 hozzászólására (») Ápr 18, 2013 /
 
Idézet:
„hogy tudom megtenni hogy mondjuk a Time1 ADC-be menjen és azzal tudjam változtatni ?”
Szerintem pont fordítva: egy ADC konverzió után az ADCMEM feldolgozott (pl. felszorzott) értékét kellene beleírni a Timer-be, s megvárni, amíg túlcsordul.
(#) djadji hozzászólása Ápr 18, 2013 /
 
Hello!

PICkel szeretnék állítható feszültségű tápot készíteni. Az elképzelés a következő: PIC PWM jelet adna ki, ami egy tanzisztoron keresztül (BT137) vezérelne egy LM338T-t, ami ennek megfelelően adná ki a kívánt a feszültséget.
A kérdésem az lenne, hogy ez nem fog e gondot okozni, ha érzékeny eszközt kötök rá? PL egy 2,3 Vos kimenet esetén (a max 23V lenne a 338ból) 100Hz-es PWMmel valójában 1 ezred másodpercig 23Vot ad le, és 9 ezred másodpercig 0Vot. (kb ez a helyzet egy 100HZ-es 10%os kitöltöttségű PWM esetén).
Ez nem okozhat gondot bizonyos érzékeny eszközöknél? A 2,3 és a 23 között elég nagy a különbség.. még ha rövid időre is de mégiscsak 10szeres a "csúcs" (pl lehet rá kötni 5V-nál egy PICet?) VAgy valamit rosszul gondolok?
VAgy jobb lenne ha a PICből referencia feszültséget csikarnék ki, és azzal vezérleném? akkor nincsenek ilyen csúcsok... Vagy ennek nincs jelentősége 1 ezred sec-nél?

Korábban igértem kódot, de sajnos már letöröltem a gépről. Most a PWM-mel szeretném megoldani ugyanazt, így a korábbi gondom okafogyottá vált.
A hozzászólás módosítva: Ápr 18, 2013
(#) vicsys válasza djadji hozzászólására (») Ápr 18, 2013 /
 
Talán ha egy kondival simítanád/átlagolnád...?
(#) djadji válasza vicsys hozzászólására (») Ápr 18, 2013 /
 
Mekkora kondi kellene? Gondolom a PIC kimenő PWM jelére kellene kötni (és a GND közé).
De fogalmam sincs mekkora kellene. Ilyesmire rendszerint 100mF-os kerámiát látok. Az jó lenne?
Valamint azt sem tudom, hogy milyen frekvencia kellene a PWMre? ÉN most 255-t használok, mert nekem úgy az egyszerű leolvasni egy potiról, de elég ez? Honnan lehet megtudni mit érdemes használni? Saccográffal?
(#) sherlock válasza djadji hozzászólására (») Ápr 18, 2013 /
 
Szia!

Nem akarok akadékoskodni, de mi a lényege a PICnek ebben a kapcsolásban? Méri a kimenő feszültséget, majd csinál az alapján valamit (kijelző, valami) ?
Ha csak ennyi, akkor ajánlanám, hogy inkább használd a 338at az adatlapban megadott üzemmódban. Akkor leoszthatod egyszerűen egy AD bemenetre a kimenő feszültségét a 338-nak, s feldolgozod, kiiratod, stb.
Ennek a cifra PWM + szűrés nek nem nagyon látom értelmét, de lehet nem veszek észre valamit.
(#) djadji válasza sherlock hozzászólására (») Ápr 18, 2013 /
 
Ez volt az eredeti elképzelés, amit te leírtál. De valamiért nem akart működni. Amikor bekapcsoltam a harmadik AD-t akkor furán viselkedett a másik ADC. Ezért úgy terveztem, hogy a PIC PWM jele alapján íratom ki a jelenlegi feszültséget, és ez szabályozza a 338-t.
De ezzel a tekercs dologgal úgy érzem én is, hogy kicsit túl van/lesz bonyolítva.
(#) vicsys válasza sherlock hozzászólására (») Ápr 18, 2013 /
 
Nem biztos, de gondolom, hogy nyomógombos/rotary encoderes szabályzást (vezérlést) szeretne+ feszmérés, stb...
djadji!
Szerintem első körben egy 1k+100nF-ot próbálj ki. Minél magasabb a frekid, annál kisebb kondi kell. A 255-öt nem értem. 255Hz vag kHz?
(#) sherlock válasza djadji hozzászólására (») Ápr 18, 2013 /
 
Áh, tehát az az időbeszúrás két mérés közé végül nem segített.
Én azt nem nagyon értem, hova kerülhetne be egy ilyen áramkörbe egy tranzisztor, amivel vezéreled a LM338-at..
Hamarabb megoldódik az AD baj, minthogy így kikerüld az ügyet, legalábbis szerintem. Milyen PIC-ről van szó?
(#) djadji válasza vicsys hozzászólására (») Ápr 18, 2013 /
 
225 Hz lett volna. Byte-ban olvasom be a poti állását (egyenlőre azzal vezérlem) és így nem kell semmit számolta5tnom. 255-ös freki, és 255 a max kitöltés (100%). Elég a 255Hz? vagy nagyobb kellene?
Köszi, kipróbálom amit írtál. Megnéztem mi az az alul áteresztő szűrő, kipróbálom.
Bár most zavarban vagyok, hogy melyik az egyszerűbb megoldás.
Köszönöm!
(#) Báddzsó válasza djadji hozzászólására (») Ápr 19, 2013 /
 
Üdv, ezt a pwm-el LM338-at vezérlős dolgot szerintem felejtsd el!
Hogy érted, hogy a 3. ADC-t kapcsoltad be? Minek 3?
LM338 kimeneti feszét leosztod egy feszültségosztóval, hogy 0V és a pic tápfesze közé essen. (0-5V) pl egy 27k 5,1k. Azt kötöd egy ADC-s pic lábra. Az adatlapban megadott módon lekérdezgeted a megfelelő frekivel és kész. Néhány PIC errata-ját érdemes elolvasni, mert most találkoztam olyanokkal amelyeknél nem minden esetben működhet az ADC megfelelően!
(#) djadji válasza Báddzsó hozzászólására (») Ápr 19, 2013 /
 
Most megint nekimentem a dolgonak és a következőt tapasztaltam. (a kódot megint elflejtettem feltölteni, de dálután megcsinálom).
Ez egy forrasztó állomás lesz, aminek a tápját szeretném használni arra is, hogy egy változtatható feszültségű táp is legyen benne.
ADC0 méri egy potiról érkező feszt, ez határozza meg, hogy mennyi legyen a páka hőfoka. (poti fesz osztóként van bekötve 0-5V közé)
ADC1 méri a pákából érkező feszültséget, ez mutatja meg milyen meleg valójában.
Ha kell bekapcsolja, ha kell kikapcsolja a fűtést, és közbe kiírja a két hőfokot egy LCDre.
Ez eddig működik!
PWM-mel így működne:
ADC2 (ez a "harmadik"): Egy potiról érkező feszültséget mér (fesz osztóként 0 és 5V közé van kötve ez is), és ennek megfelelő kitöltöttségű PWM jelet állít elő. Ez megy a 338T vezérlő lábára (ide kellene majd egy erősítő, mert ez 100%on csak 5V-ig megy, és így a 338-ból nem kapok 23V-ot, csak alacsonyabbat), ami ennek a PWM jelnek megfelelően adja ki a feszültséget 1,2 és 23 V között (jeleneleg csak 6V körülig megy max, de ez most lényegtelen).
EZ IS MŰKÖDIK!
Viszont!:
HA a 338-t közvetlenül vezérlem analógon a potival, és a 338 kimeneti feszültségét egy fesz osztón keresztül bevezetem a ADC2-re (22K és 5K, kb 4,4V lesz a max), akkor megbolondul a PIC. Az ADC0 nem mér semmit, csak 0-t mutat, vagy fel le ugrál.
ÉS ugyanazt a kódot használom!!!
Magyarul: ha az ADC3ra egy potit kötök 0-5V között akkor szépen méri a feszt, működik! (PWM változat), ha ugyanide, ugyanazzal a kóddal a 338 kimenetét kötöm (fesz osztón keresztül) akkor pedig megbolondítja a másik ADC csatornát.
Ezt nem fogom fel.
PIC16F886
HA kéritek feltöltöm a kódot is, de az ugyanaz mindkét esetben, csak az véáltozik, hogy mit kötök a ADC2-re.
(#) kistee válasza djadji hozzászólására (») Ápr 19, 2013 /
 
Szia,

Csak tipp: az LM338 kimenetére és az ADC3 bemenetre tettél szűrőkondit? 10-100 nF körülit. Esetleg egy kb. 10 kohmos (vagy amekkora a poti ellenállása) lezárással is lehetne próbálkozni. A tünetek alapján gyanús, hogy az LM338-ról jön valami nagyfrekvenciás zavarjel.

Szerintem...

Az LM338-cal én is megjártam. Vettem egy modellirányító adót és hozzá vevőt. Ki akartam próbálni, de nem volt itthon elegendő mennyiségű ceruzaelem, csak a vevőbe jutott. Mondom sebaj, itt van az asztalomon a stabilizált táp (LM338 alapú), majd arról járatom az adót. Bekapcsoltam és a szervók össze-vissza rángattak, nem tudtak megnyugodni. Amikor lett elem az adóba is, megszűnt a jelenség...
A hozzászólás módosítva: Ápr 19, 2013
(#) mps válasza djadji hozzászólására (») Ápr 19, 2013 /
 
Van szűrőd a PWM kimeneten?
(#) sherlock válasza djadji hozzászólására (») Ápr 19, 2013 /
 
A kód az lehet ugyanaz, de a baj akkor jelentkezik, ha az ADC2 lábra teszel valamit, s az komparátor referencia is, és AD negatív referencia is. Lehet ezek nincsenek kikapcsolva jól?
A komparátorok például MINDIG felülírják a port funkciókat, ha nincsenek kikapcsolva, de úgy látom, az is, az AD -Vref és CVref-el együtt kikapcsolva indul POR resetkor.
Marad az, hogy a kódot megnézzük.

István

Módosítás: közben láttam, hogy potival megy jól az ADC2! úgyhogy ez itt fennebb nem lényeges, csak a kódra kiváncsi rész
A hozzászólás módosítva: Ápr 19, 2013
Következő: »»   402 / 1210
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem