Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   699 / 1320
(#) potyo válasza geri12 hozzászólására (») Márc 11, 2010 /
 
10F220-al pl. egyet sem...
(#) geri12 válasza potyo hozzászólására (») Márc 11, 2010 /
 
Na igen!

Igazából én arra volnék kiváncsi hogy lehet-e egy F877A-val 12db-ot. A port persze elég lenne rá, csak azt nem tudom hogy lehetne-e olyan gyorsan váltani hogy ne vibráljon és a számok ne "csúsznak össze"--ennél jobb kifejezést nem találtam.
(#) Attila86 válasza geri12 hozzászólására (») Márc 11, 2010 /
 
A szegmensek számát összeadod a digitek számával és megkapod hogy hány I/O láb kell. A multiplexálás frekvenciája már nem igazán probléma mert a PIC igen gyors.
100Hz-en már nem villódzanak a kijelzők. Ha mondjuk 8db digitet szeretnél akkor ez 800Hz-et jelent.
(#) potyo válasza geri12 hozzászólására (») Márc 11, 2010 /
 
Lehet. Nem a PIC sebessége a korlát a ráakasztható kijelzők számának, hanem a lábak száma. Digitek vagy szegmensek száma (amelyikből több van) plusz 1 láb kell legalább a meghajtásra. Ha másodpercenként 100-szor kapcsolsz egy kijelzőt, akkor 12 kijelzőnél 1200-szor kell egy másodperc alatt arrébbkapcsolni. Az arrébbkapcsolás meg mondjuk a megszakítás lekezelésével együtt 25-30 utasításciklust foglal el, vagyis 4MHz-es órajelnél is 5% alatti processzoridőt visz el a 12 kijelző kezelése.
(#) Braf válasza potyo hozzászólására (») Márc 11, 2010 /
 
Akkor sem értem, miért megy asm-ban és miért nem c-ben. Minden esetre akkor berakok valami lat regiszter szerűséget c-ben.

A bank váltás kódja benne volt a késleltetésben, így azt is töröltem véletlen mikor kiszedtem a komplett késleltető rutint, hogy ne legyen átláthatatlan a program.
(#) potyo válasza Braf hozzászólására (») Márc 11, 2010 /
 
Adatlap TABLE 5 táblázatának RB4 sorában az Analog oszlopban látsz-e valamit?
(#) geri12 válasza Attila86 hozzászólására (») Márc 11, 2010 /
 
4543-as kombinációra gondoltam, és akkor elég 4db láb a szegmensekre. Illetve marad +12 láb a digitre.
(#) geri12 válasza potyo hozzászólására (») Márc 11, 2010 /
 
hmm! Sajnos a 7 szegmenses 12db kijelző feltétel. Ráadásul ezek mellé még valami gombot/érzékelőt is akanak rakni. Akárhogyis nézzük, sok port kell.
(#) Attila86 válasza geri12 hozzászólására (») Márc 11, 2010 /
 
Igen, akkor három lábat megspórolsz. Cserébe egy IC-vel nagyobb lesz a nyák/többe fog kerülni/bonyolultabb lesz stb. Mérlegelni kell hogy mi a fontosabb. Illetve ha a PIC kezeli a szegmenseket közvetlen, akkor lehet más karaktereket is kijelezni. Nekem például szerencsém van mert PA a monogramom...
(#) potyo válasza geri12 hozzászólására (») Márc 11, 2010 /
 
Felesleges a 4543, önmaga nem elég egy szegmens meghajtására áram szempontjából, ha akarod, hogy világítson is a kijelző. Akkor már inkább TPIC 6595N, de nyolc apró bipoláris tranzisztor is tökéletesen megfelelő. A digitek meghajtására ugyanígy kell valami, arra is bipoláris tranzisztor tökéletes. Lábból elég 13 is, ha kicsivel bonyolultabb nyáktól nem ijedsz meg. A 16F877-nek van 33 IO célra használható lába, a maradék 20 csak elég lesz gomboknak meg érzékelőnek. De ha csak a klasszikus multiplexelést csinálod, akkor is 20 láb kell a kijelzőnek, marad 13 a gomboknak meg szenzornak.

Én is ilyen multiplexeres kijelzős cuccal kezdtem a PIC-es pályafutásomat, de még ma is itt vannak a fiókban az akkor vásárolt valami hasonló 4xxx-es IC-k, mert nem volt rájuk szükség.
(#) geri12 válasza potyo hozzászólására (») Márc 11, 2010 /
 
Igaz!

Közben beugrott hogy az kevés. Van egy kapcsolásom még technikusi korszakomból, amiben a 4543 után ULN2003 van. De így már lényegesen nagy nyák lenne, ami nem előnyös. Egyelőre parkolópályára teszem a dolgot, mert még nem bólintottak rá véglegesen. Ez valami számláló lenne, amire valami érzékelő és reset kapcsoló kerül. Mondjuk azt nem értem minek ennyi digit...
(#) Braf válasza potyo hozzászólására (») Márc 11, 2010 /
 
Oh, tényleg! Ezt eléggé benéztem.. ANSELH = 0; után már megy RB4 = !RB4; utasítás is.


Más:

MPLAB- ot hogyan lehet rábírni hogy szimpla buildnál a config bitek is kerüljenek bele a hexbe?
Most ez a legfrissebb nem teszi bele, csak ha file-exportal csinálom a hexet a fordítás után. Régebbi (8.15 volt fent ezelőtt) beletette szimpla buildnál is. (PK2 őt akarom használni a külső programjával)
(#) potyo válasza Braf hozzászólására (») Márc 11, 2010 /
 
Rakd a konfig beállítást is a kódba, akkor benne lesz a kapott hex-ben is elvileg. Bár ezzel az utóbbi MPLAB-al még nem csináltam semmit, nem értem rá mostanában picezni.
(#) szilva válasza potyo hozzászólására (») Márc 12, 2010 /
 
Sok digitnél az lehet az akadály, hogy az 1 egységre jutó időben akkora árammal kellene megpumpálni a kijelzőt, amit már adatlap szerint nem lehet.

Pl. lehet olyasmiket látni adatlapokban, hogy a folyamatos áram a szegmenseken maximum 30mA (üzemszerűen 20mA), impulzusszerűen pedig maximum 100mA (mondjuk 100us-os impulzusra megadva). Ha 12 digitre osztjuk el, akkor a 100mA-es csúcsáram az 1/12-ed résszel, azaz 8.3mA DC-vel ekvivalens. Lehet, hogy az adott kijelzőnél ez már kevés fényerőt fog eredményezni. Ilyenkor nincs mit tenni, mint legalább két félre szétbontani a kijelzősort.

Valószínűleg a 12 nem olyan sok, hogy ez az eset fennálljon, főleg, hogy a szemünk fényerőérzékelését a multiplexelt kijelzők átverik. Azaz nem olyan fényesnek fogjuk látni a 100mA-es, 1/12 idejű multiplexelt kijelzőt, mintha DC 8.3mA-rel hajtanánk a szegmenseket, hanem attól sokkal fényesebbnek.

Én egy hatos kijelzősort építettem nemrég, abban Kingbright SA52-es zöld kijelzők vannak, a közös anódokat tranzisztorokkal hajtom, de a szegmenseket közvetlenül a PIC hajtja 33 ohm-os ellenállásokkal (elvileg 10mA körüli áram). Ennek ellenére nagyon fényesnem látszik, nappal is látható. Itt egy fotó róla, pedig a fotózás miatt az asztali lámpa szinte telibe világítja, mégis olvasható (kéne elé ablak is, hogy a kijelző "arca" ne legyen ennyire zavaró): Bővebben: Link
(#) watt válasza szilva hozzászólására (») Márc 12, 2010 /
 
Nekem is pont az jutott eszembe, hogy a szegmenseket is tranyókkal, vagy maghajtó IC-vel kell meghajtani egy bizonyos digitszám felett... Meg az is, hogy egy ilyen kapcsolást elég óvatosan szabad csak debuggolni!
(#) geri12 válasza szilva hozzászólására (») Márc 12, 2010 /
 
Belinkeltem egy képet! Tehát 12db kijelző esetén ez nem lenne jó? Mármint az hogy egy az egyben a portra kössem a szegmensek lábait. Gondolom a driver IC vagy tranyó az esetembe nem maradhat el. Jól gondoltam akkor tegnap, a nyák nagyobbacska lesz.

example.gif
    
(#) alap válasza geri12 hozzászólására (») Márc 12, 2010 /
 
Sziasztok
Tudna valaki olyanba segiteni a MCS8051 hez keresek programot amivel irni olvasni tudnám. Halottam A KELI nevü progirol

üdv
(#) geri12 válasza alap hozzászólására (») Márc 12, 2010 /
 
Willem EPROM programmer!

De ehez kell az égető áramkör is!

http://mpu51.tripod.com/eprom/eprom.html
(#) watt válasza geri12 hozzászólására (») Márc 12, 2010 /
 
Próbáld ki egy szegmenssel! Ha jól világít, akkor nem kell meghajtó. De biztos, hogy kisebb ellenállás kell, mint 270ohm. De próbáld ki!
(#) geri12 válasza watt hozzászólására (») Márc 12, 2010 /
 
Oké! Majd egy próbanyákon megnézem.

Köszi!
(#) szilva válasza alap hozzászólására (») Márc 12, 2010 /
 
Kicsit konkrétabban kellene kérdezni, mert az MCS51 egy család. Van MCS51-es kontrollere az Intelnek, a Dallasnak és az Atmelnek is (meg még ki tudja, hány gyártónak), és mindet máshogy kell programozásilag megszólítani.
(#) geri12 válasza szilva hozzászólására (») Márc 12, 2010 /
 
Szerintem intelre gondolt. (8051)
(#) szilva válasza geri12 hozzászólására (») Márc 12, 2010 /
 
Abból is van sok, EPROM-os, egyszer programozható, meg hasonlók.
(#) potyo válasza geri12 hozzászólására (») Márc 12, 2010 /
 
Mondjuk, hogy jó, de a meghajtó tranzisztoroknál a bázisellenállásokat meg lehet spórolni, ha közös kollektoros (másnéven emitterkövető) kapcsolásban hajtod. Az említett rajzon ez úgy nézne ki, hogy a 2N3906 helyett valami NPN tranzisztor (pl. BC546), aminek a bázisa direktben megy a PIC lábára, kollektora megy az 5V-ra, és az emittere megy a kijelző közös anódjára. Ugyanezt az alsó oldalon is, csak ott PNP tranzisztorral (BC556), kollektor megy a GND-re, és az emitterek mennek egy-egy soros ellenállással a szegmensvezetékekre, bázis meg szintén direktben a PIC-re. Nálad így 20db bázisellenállást spórolhatsz meg. Közös katódos kijelzőnél meg értelemszerűen megcseréled a két oldalt.
(#) kissi válasza szilva hozzászólására (») Márc 13, 2010 /
 
Szia !

A 33 ohm nem kicsi ( 330 ohm akart lenni vagy nem 5V-ról dolgozol?) ?

Steve
(#) watt válasza kissi hozzászólására (») Márc 13, 2010 /
 
Ha jól értettem 6 felé osztja és a LED-ek nyitófeszét ki kell még vonni, akkor marad 3,6V ami LED-enként így 18mA effektív, 100mA impulzus.

De lehet, hogy tényleg elírta!
(#) MaTe193 hozzászólása Márc 13, 2010 /
 
Üdv mindenkinek!

Meg szeretném építeni Ezt
Az égetőt,DE újfajta az alaplapom és nem tudom elég-e neki annyi amennyit ez kiad,vagy inkább csináljak neki külső pl:dugasztápot?Alaplapom típusa:ASUS P5P41D.

Várom a válaszokat!
(#) watt válasza MaTe193 hozzászólására (») Márc 13, 2010 /
 
Keress rá a JDM szóra!
(#) MaTe193 válasza watt hozzászólására (») Márc 13, 2010 /
 
Pontosabban?
(#) szilva válasza watt hozzászólására (») Márc 13, 2010 /
 
Nem írtam el, ha jól emlékszem, tényleg 33 ohm-okat tettem be (de maximum 75 ohm). Az eredeti PICkit2-ből vettem az ötletet, a merészséget (ott talán 10 ohm van a kapcsolásban!).

Ezeknek a LED-eknek 2V körüli nyitófeszültségeket szoktak megadni, a digitkapcsoló tranzisztorokon is esik legalább fél volt, így maximum 2.5V-ra kell számolni a 33 ohm-ot, ami elvileg ~75mA, de a kimenet karakterisztikája miatt sokkal kevesebb. Annak idején itt a fórumon is volt róla szó, találtunk is olyan áram-feszültség grafikonokat, amik alapján a 33 ohm-os terhelésnél még a PIC 25mA-ében is benne van a kimenő áram. Ha sikerül, megnézem szkóppal a 33 ohm-okon, hogy a valóságban mennyi az annyi, de tippem szerint 20mA sincs.

Persze lehetne elegánsabban is csinálni, főleg, ha 16F-fel dolgozik az ember, mert ott az ennyire terhelt kimenetnél felléphetnek az RMW hibák is. Én 18F-fel dolgozom, és a szegmensekre épp ezért egy teljes portot használtam fel, amit mindig csak teljes byte-tal írok.
Következő: »»   699 / 1320
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