Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   991 / 1319
(#) Hp41C válasza marek hozzászólására (») Jún 30, 2011 /
 
Szia!

- 16F877 A port - nincs belső felhúzó ellenállása, a bemenet CMOS, a komparálási szint 0.15 * Vdd illetve 0.8V (4.5V < Vdd < 5.5V). A bemenet árama max. 5uA.
- A lehúzás is majdnem ugyan olyan jó, mint a felhúzás. Az egyetlen eltérés, hogy kisebb a zavartartalék, azaz kisebb zavarjal át tudja billenteni a bemenetet. Használj kisebb értékű (1 .. 2 k) ellenállást és egy kis szűrőkondenzátort.
- Ha van még szabad ST bemenet, akkor érdemesebb azt használni, mert a komparálási szint 0.2 * Vdd ill 0.8 * Vdd lesz...
Egyszóval, működni fog...>>
(#) edison14 válasza Szamy hozzászólására (») Jún 30, 2011 /
 
Mivel csak az ADRESH értékét olvastam ki és használtam ezért a kiolvasott érték csak 8 bites tehát max 255 lehet. A kapcsolási rajzot te is könnyedén elkészítheted mivel mindent kommenteztem és felül megtalálod a bekötését a kijelzőnek. Az NTC bekötését csatolom, ha jól tudom a PORTA0-ra van kötve a középkivezetés. 25 foknál az NTC-m 4,7K-s ezért a feszültségosztó kimenetén pont a tápfeszültség felel lesz tehát 2,5V. Tehát már csak annyit kellett csinálnom, hogy az ADRESH értékét osztottam 5-el ekkor megkaptam egy számot melyből már meg tudom határozni a számokat a kijelzéshez maradékos osztással és sima osztással. A képlet nagyon egyszerű volt bár először csináltam ilyent egy kis logikával rá tudtam jönni hogy mivel is kellene osztani vagy éppen szorozni. Csak számolgatni kell ez az egész.

ntc.png
    
(#) janikukac hozzászólása Jún 30, 2011 /
 
Sziasztok! Kész a pic-es strobim, most a programján változtatnék. A jelenlegi állás:

Idézet:
„#include "C:\PIC programozasaim\stroboszkop\strobika.h"


void main()
{

setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC);
setup_vref(FALSE);
setup_oscillator(OSC_4MHZ);

while(1)
{
Output_high (PIN_A5); //A portA 5-ös kimenete legyen H szintű
Delay_ms(40); //Várakozz most 40ms-ot és nincs feladat
Output_low (PIN_A5); //A portA 5-ös kimenete legyen L szintű
Delay_ms(40); //Várakozz most 40ms-ot és nincs feladat
}
}”


Azt szeretném rajta változtatni, hogy szünetmentesen és megállás nélkül villogjon, addig míg ki nem húzom az USB-ből.

Hogyan oldjam meg? Most szünetenként megáll, majd kikapcsol az egész, amig újra ki és vissza nem dugom..
(#) vicsys válasza janikukac hozzászólására (») Jún 30, 2011 /
 
Akkor ott valami baj van. A program jó, nem állhat le.
(#) janikukac válasza vicsys hozzászólására (») Jún 30, 2011 /
 
Akkor csak a tranzisztor lehet a vacak. Most egy 548-as van benne, mert a 2n3904-el el sem akart indulni. Majd veszek másikat bele. Ja, meg egyelőre 2 led van rajta..
(#) Hp41C válasza janikukac hozzászólására (») Jún 30, 2011 /
 
Szia!

Az USB szabvány szerit a készülékeknek a kommunikáció kezdetén jelezniük kell az áramigényüket. A későbbiekben egy áramkorlátos táplálást kapnak. Kommunikáció nélkül csak korlátorott áramot adnak ki az alaplapi illesztők. Valószínűleg a felvillanás árama meghaladja a határt, a port lekapcsolja a táplálást.
(#) janikukac válasza Hp41C hozzászólására (») Jún 30, 2011 /
 
Aha, értem. köszönöm .
(#) janikukac hozzászólása Jún 30, 2011 /
 
Hp41C kipróbáltam egy 4,5-ös elemmel. Tényleg igazad van ! Így megy szépen !
(#) icserny hozzászólása Júl 1, 2011 /
 
Hogy mik vannak! Arduino kompatibilis 32-bites fejlesztői kártyák

A ChipCAD honlapján is hirdetik, tehát előbb, vagy utóbb itthon is kaphatók lesznek a DILIGENT PIC32 mikrovezérlőkre alapozott, Arduino kompatibilis fejlesztői kártyák.

A ChipKIT Uno32 kártya központi egysége a Microchip PIC32MX320F128 mikrovezérlője. (ChiCAD ár: 5.190 Ft+áfa)

A chipKIT Max32 pedig, amely PIC32MX795F512 mikrovezérlőt tartalmaz, az Arduino Mega kártya babérjaira tör. (ChiCAD ár: 9.530 Ft+áfa)

Érdekesség, hogy a kártyák nem csak hardveresen kompatibilisek (a shield kártyák csatlakoztathatósága révén) az Arduni kártyákkal, hanem ugyanaz a programnyelv és fejlesztői környezet is használható hozzájuk, könnyű indulást ígérve a kezdőknek.

Természetesen, annak sincs akadálya, hogy az MPLAB C32 fordítójával és PICkit3 programozóval "hagyományos" módon programozzuk a kártyán lakó mikrovezérlőt.
(#) trudnai válasza icserny hozzászólására (») Júl 1, 2011 /
 
Amugy ezt mar egyszer megirtad ide De tenyleg jopofa egy dolog ez!
(#) icserny válasza trudnai hozzászólására (») Júl 1, 2011 /
 
Idézet:
„Amugy ezt mar egyszer megirtad ide”
Valóban. Mindenestre akkor még csak a Microchip honlapján láttam, most pedig már a ChipCAD is "beárazta".
(#) pagaby hozzászólása Júl 4, 2011 /
 
Sziasztok!

Egy PIC18F14K50 segítségével ismerkedek az AD átalakítással. Referenciafeszültségnek a belső 2,048V-ot használom.

Az miért van:
ha negatív referenciaforrásnak a VSS-t használom (ADCON1 NVCFG = 00) akkor hibásan mér,
ha viszont negatív referenciaforrásnak a VREF- -t használom (ADCON1 NVCFG=01) és a VREF- lábat lekötöm GND-re akkor meg jól mér.

Az analóg bemenet elé a gyári ajánlás szerinti kapcsolás van megépítve, azelőtt pedig egy ellenállásokból felépített feszültségosztó van.
(#) icserny válasza pagaby hozzászólására (») Júl 4, 2011 /
 
A PICCOLO projektben mindenhol VSS-t használtam referenciának és nem volt gondom vele. Nézd meg az azokban taláható ADC konfigurálást, hátha találsz valami eltérést a sajátodtól!
(#) wolf84 hozzászólása Júl 4, 2011 /
 
Sziasztok!

Olyan kérdésem lenne valaki foglalkozott már 18fxxk22 spi modulal? pontosabban ssp2 modul részel.
ssp1 modul tökéletesen müködik, természetesen ssp2stat stb.. átírva mindegyik regiszter a megfelelőre. persze bekimeneti konfiguráció is helyesen van beállítva, a portb felhúzó ellenállás is tiltva van.
ha kell majd csatalom forrást is...
Nincs már semmi ötlettem
Válaszokat előre is köszi!
(#) Attila86 válasza pagaby hozzászólására (») Júl 4, 2011 /
 
Szia!

Ez nem hiba, hanem teljesen normális (de parazita!) jelenség. Pont ezért találták ki a PIC AD-ját úgy, hogy van külön VREF- is. A PIC-re kötött dolgok felé folyó árama PIC-ből folyik vagy abba folyik el, a táplábakon keresztül. Ez feszültséget ejt a tápvezetékeken és hogyha a külső referencia negatívja nem közvetlen a PIC VSS lábára van kötve, akkor a mért jel is ugrálni fog. Vagyis igazából nem a jel ugrál, hanem a PIC AD-ja és ebből adódik az ugrálás. Ugyan ez igaz egyébként nem csak a referenciára hanem magára a mérőjelre is. Kár hogy azt sehol nem írják Microchip-ék hogy a bemenő jel negatívjának a VSS-t vagy a VREF--t tekintik. Bár ki lehet mérni végül is. Ezért örültem én nagyon amikor megláttam hogy (például) a PIC18F25K80-nak differenciális bemenetű AD-ja van...
(#) kszabi hozzászólása Júl 4, 2011 /
 
Üdv Urak!
Tegnap egész nap szívtam egy számomra új problémával.
Soros porton kellene adatot küldeni, fogadni egy PIC33 fj 256 mc 710 -el
Az a gond, ha a rx lábra kivülről o érkezik, vagy gnd-re húzom akkor resetbe viszi az egészet.
Ez csak akkor van így ha az UARTEN be van kapcsolva, I/O ként ez nem történik meg.
Az adatirány bit 1-be van írva.
Korábban egy másik PIC-el csináltam ilyet, ott nem jelentkezett. A kód részleteket onnan másoltam.
Mi lehet a gond? Valamit be kell kapcsolni amiről nem tudok?

Üdv mindenkinek kszabi
(#) pagaby válasza icserny hozzászólására (») Júl 4, 2011 /
 
Az oldalon lévő programokat vettem kiindulási alapként.

A PIC-cel próbaképpen feszültségmérést valósítok meg 0-40V-ig, az eredményt egy LCD kijelzőről olvasom le. A mért feszültséget így kapom meg: Vref*20*ADRES[10bit]/1023.

A PIC feszültségmérési tartománya feszültségosztó ellenállásokkal van kibővítve, amiket egy potméterrel kalibrálok. A PIC belső referencia feszültsége (2,048V) rá van kapcsolva a CVref kimeneti lábra. Az feszültségosztó beállításakor a CVref lábon megjelenő ref feszültséget egy követőerősítőn keresztül a feszültségosztó bemenetére kapcsolom, majd a potmétert addig állítom míg a helyes érték 2,048V jelenik meg eredményként. Amikor azonban nagyobb feszültséget mértem pl: 24,5V-ot (2 műszerrel ellenőriztem) eredményként 25,6V jelent meg. Próbaképpen a képletben a Vref értékét is módosítottam , növeltem csökkentettem, de ugyanúgy rosszul mér.
Ha a VREF- bemeneti lábat k kb. 20cm-es vezetékkel kötöm le a GND-re akkor meg jól mér.
Nem értem miért nem mindegy hogy tokon belül szoftveresen vagy tokon kívül 20cm vezetékkel kötöm le a vref- -t 0V-ra, Így egy láb "pocsékba" megy.
(#) pagaby válasza Attila86 hozzászólására (») Júl 4, 2011 /
 
A belső 2,048V feszültségreferenciát használom.
(#) Attila86 válasza pagaby hozzászólására (») Júl 4, 2011 /
 
A helyzet attól még ugyan az. A belső referenciát sem mindegy hogy hova kapcsolja rá. Ha a VSS-re akkor ugyan úgy jelentkezik a probléma, mert akkor meg a referencia negatívja és a bemenő jel negatívja nem közös.

Amúgy az áramkörben amivel épp most foglalkozom (egy forrasztóállomás) én is egy analóg lábat felhasználtam arra hogy csak úgy natúrban lekötöttem a földre.
(#) Attila86 hozzászólása Júl 4, 2011 /
 
Milyen beállításokat használjak a 4MHz-es belső oszcillátorról futó PIC18F25K80-on, hogy a PWM felbontása 10 bit lehessen? Az adatlapban leírt számításokat nem teljesen értem egyenlőre, a konkrét példa amit leírtak (egy kis táblázatban), az pedig 40MHz-es órajelre szól. Könnyítés hogy a PWM freki bármekkora lehet mert jó nagy integráló tag van utána, de ha a lehet akkor minél kisebbnek kellene lennie.
(#) Hp41C válasza Attila86 hozzászólására (») Júl 4, 2011 /
 
A PR2 legyen 256-1, ekkor a PWM felbontása 10 bites lesz.
(#) Attila86 válasza Hp41C hozzászólására (») Júl 4, 2011 /
 
Oké, köszönöm!
(#) Attila86 hozzászólása Júl 4, 2011 /
 
Még egy kérdés: Hogyan állítsam be az AD-t?
Mindig Icserny EZEN hozzászólását veszem alapul. Most akkor 4MHz-ről van szó, tehát Fosc/2-nek kell lennie az 1,28us-os Tad-hoz. Ez 1Tacq-val kevés, kettővel meg már sok hogy az Icserny által írt határok közt legyen.
(#) icserny válasza Attila86 hozzászólására (») Júl 4, 2011 /
 
Idézet:
„Még egy kérdés: Hogyan állítsam be az AD-t?”
Úgy állítsd be, ahogy az adatlap mondja! Lásd pl. Table 23-1!
(#) icserny válasza icserny hozzászólására (») Júl 4, 2011 /
 
Még egy adalék: meg kell nézni az adatlapban Table 31-26-ot is, mert TAD minimális értéke a referencia feszültségtől is függ! (0.8 us vagy 1.4 us)
(#) Attila86 válasza icserny hozzászólására (») Júl 4, 2011 /
 
Hmm... 2,048V lesz a belső referencia, úgyhogy ha jól értem Fosc/2 és 4TAD-kell lennie.
(#) dickheadz hozzászólása Júl 4, 2011 /
 
Építettem 1 PIC-es áramkört 12F675-tel, amit autóban használok törtem is a fejem a kérdés feltevése előtt, h melyik topicba írjak - pláne Watt #1016094 hsz.a után... Csak annyi a működése, h 1 lábon jelsorozatot dekódol, 1 másikon pedig annak megfelelő sorozatot küld ki. Ha csak a gyújtást adom rá, akkor elvileg sokáig működik.Viszont elindulás után menet közben egy idő után nem reagál.
Belső 4 megás oszcillátort használok: lehet, h pár perc után annyira elmászik a frekvencia, h emiatt nem jó? Azután gondoltam erre, mikor legutóbb még az autóban kikapcs/bekapcs (csak az áramkörnek) után sem működött, de másnap már megint jó volt.
Nézegettem az adatlap idevágó részét (INTOSC FREQ vs. Temp.) a 114. oldalon, de a "sigma" -kkal nem tudok mit kezdeni..erről nem találtam semmi infót.
(#) vicsys válasza dickheadz hozzászólására (») Júl 4, 2011 /
 
Van egy olyan érzésem, hogy a tápon bejutó zavarjel akasztja ki a PIC-et...
(#) dickheadz válasza vicsys hozzászólására (») Júl 4, 2011 /
 
Első gondolatom nekem is ez volt, ezért cseréltem le a PIC-et (előtte 16F84 volt - ebből van 1 csomó ). Próbapanelen próbálgatva az áramkört (gyors ki/be kapcsolgatásokkal stb), F84 elég hamar feladta, a 12F viszont elég jól bírta - be van kapcsolva a BODEN is.
Ha járó motornál resetelem az áramkört (akár többször is), az sem használ.
(#) dickheadz válasza dickheadz hozzászólására (») Júl 4, 2011 /
 
Plusz tanulmányoztam potyo 2 autós cikkét is itt, így már eleve beépítettem pár zavarszűrő 100n -s kondit a PIC-nél közvetlenül, illetve a táprésznél.
Következő: »»   991 / 1319
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