|
|
| Óra építése TiL305-ös kijelzővel |
|
| Témaindító: lui144, idő: Márc 9, 2010 |
|
|
|
|
|
| Üdv mindenkinek! Szeretnék órát építeni TiL 305-ös kijelzővel mivel van ithon 10 darab. Sajnos nemtudom, hogy hogyan lehetne működésre bírni ezt a kijelzőt, milyen meghajtó IC kell neki, meg hogy egyáltalán hogyan lehetne megvalósítani. Az adatlapból csak annyit értettem meg, hogy 5X7-es alfanumerikus azaz betű és számmegjelenítő kijelző. Az adatlapot mellékelem, meg azt hogy hogyan szeretném megjeleníteni rajta a számokat. (a képet, meg a til 305 adatlapját mellékelem) Nemtudom, mennyire megvalósítható az elképzelésem (azaz, hogy hogyan jelenítse meg a számokat). Éppen ezért szeretném segítségeteket kérni. |
» A fájlok letöltéséhez be kell jelentkezned! «
|
|
|
| A TIL305-ben gyakorlatilag egy LED-mátrix van. Tehát minden, a meghajtáshoz szükséges áramkört saját magadnak kell összerakni. Mivel a meghajtása elég komplex feladat (karaktergenerátor, multiplexelt meghajtás), nem hinném, hogy mikrovezérlő alkalmazása nélkül érdemes lenne hozzáfogni. |
|
|
Hali
Vannak meghajto IC-k (dot matrix drive). Mas kerdes hogy megeri-e. A Maxim gyart tobb valtozatban meghajtokat : MAX6952. De ezeknek a kezelesehez szukseges valami uC. Az ara 8.65$ 1000 darabos vasarlasnal. Esetleg mas megoldas a TTL IC-kkel valo meghajtas. Na ez sem egy egyszeru feladat. Kell hozza egy kerek kosar IC, panelok, sok munka es turelem. Szerintem valami soklabu uC-vel megoldhato. 4 digithez kell 7 sormeghajtas es 20 oszlop. Ez 27 lab. Pl egy 16F887 rendelkezik 36 In/Out labbal tehat meg marad masra is. De ehez kell egy kis elektronikai ismeret, programozasi ismeret. Kezdokent eleg nagy falat.
Udv Vili |
|
|
| Utánanézek, hogy van-e ilyen ic-m az ic-s dobozomban, mivel van összesen 200-300 darab ic-m. A TTL Ic-s megoldást én elvetem, mert sok ic kell hozzá meg nagy panel. Az órát 6 digitesre vagyis másodperc megjelenítősre szeretném megcsinálni. Az Ic-k adatlapjában láttam, hogy hogyan jeleníti meg a számokat 5x7-es kijelzőn. Az első hozzászólásban közreadott képen, ahogy szeretném megjeleníteni a számokat főleg a 3-ast, 4-est és a 0-ást szeretném így megjeleníteni. A többi szám megfelel ahogy a karaktereket megjeleníti a kijelző az ic meghajtásával. Elektronikai ismeretem van. Programozási ismereteim az már jóval kevesebb van. Így hát kezdő vagyok ilyen téren. De ha már belekezdtem akkor véghez is viszem. Bár így a hozzászólások alapján hosszú idő lesz mire elkészül, de nem baj. |
|
|
Szia!
Van egy leírás az Ezermester 1985 év 11-12. számában. Letöltheted innen: Link
A 12. számban lévő áramkört áttervezve használhatod a kijelzőket... |
|
|
| Gondoltam arra, hogy pic-t kellesz majd használni hozzá. Bár nekem az lenne a legjobb ha 1 PIC-el lehessen vezérleni a 6 darab til305-öt. De sajnos programozni nem nagyon tudok. |
|
|
Hali
Esetleg ez a kapcsolas kozelebb visz a megoldashoz : dot matrix drive. A meghajtast nezzed. Ennek a mintajara lehet csinalni 6 digitest is. A vezerles 10 kimenettel lehetseges. Akar egy 18-20 labu PIC is lekezelheti. A neten van sok hasonlo projekt. Keresni kell.
Udv Vili |
|
|
| Ez a kapcsolás lehet, hogy sokat vinne előre. mert igen érdekesen van megcsinálva vagyis gondolom 6 darab 74HC595-ös IC-vel meg lehetne oldani a meghajtást. De mire kell benne az uln2003-AS iC? Meg azt még jó lenne tudni, hogy a til 305-nek a lábai melyik melyik mivel a kapcsolásban 12 lábú kijelző szerepel, a til305-nek meg 13 lába van. (nincs 14-edik láb nincs letörve, hanem egyszerűen ilyen) Meg azt hogy a til 305-ös lábait a 74hc595-ös ic mely lábaira kell bekötni illetve hogy a kijelző lábai mik is azok. Nincs valakinek 1 leírása a til305-ről? főleg, hogy melyik láb melyik és milyen funkciója van? Mert az adatlapból nem sokat értek. |
|
|
Ha lenne 12 db ilyen, akkor én összeraknám 4x3-ba azaz 20x21be és mint a propeller clocknál mutatós órát is tudnál kijelezni.
4x3-ba a másodperc és akár hőmérséklet is kiirható karakteresen.
Amúgy a TI gyárt korrekt leddrivereket. 8/12/16/24 bitest.
A 6db TIL sorban 30 oszlop, ehhez kellene csak 2db 16-os pl: TLC59281... |
|
|
Ha jól emlékszem, az a baj ezekkel, hogy nem tudod úgy egymás mellé tenni őket, hogy a mátrix folyamatos legyen. Azaz mindenképpen megmaradnak az 5x7-es szigetek, karakterhelyek.
Venni persze lehet olyan LED-mátrixot, ami mindkét irányban hézagmentesen illeszthető, de itt pont az lenne a feladat - ahogy a topicnyitót olvasom -, hogy a meglévő kijelzőket kellene felhasználni. Szerintem ezekből csak valami karakteres dolgot lehet összerakni a fent írtak miatt. |
|
|
| Igen... erre vonatkozik a második bekezdés, amikor 6 ilyen van egymás mellett. |
|
|
Hali
A Te kijelzod pont ilyen kapcsolasu, de van benne DP (tizedes pont), azt ez a kapcsolas nem hasznalja. Az oszlopokat a '595 hajtja ahova soronkent kisorozza az adatokat es utana a 2003 bekapcsolja a megfelelo sort (egyszerre csak egyet). Tehat eloszor kisorozzuk a felso sor 30 bitjet, majd bekapcsoljuk a felso sort. Most kikapcsoljuk a felso sort. Utana jon a masodik sor 30 bitje, bekapcs 2. sor, kikapcs 2. sor. Es igy tovabb a 7. sorig. Most elrol kezdjuk; 1. sor, 2. sor ....7. sor. Gondolom erthetoen leirtam. Talaltam meg egy kapcsolast amiben 8 digitet hajt meg :Dot matrix drive. Itt 5 db '595 van 8 digithez. A Te esetedben 4 elegendo (4 x 8 = 32 bit).
Udv Vili |
|
|
Szükséged van egy karaktergenerátorra. Ez lehet ROm Eprom stb. A lényeg az hogy a megjelenitendő szám értéke cimzi a karakergenerátort. Mikor ez a cim megvan letárolod. A karaktergenerátor errr kiad egy bitmintát egy sorra. Ezt végig csinálja minda hét sorra, de még az ehez tartozó karakterhez. Ha ez lefutott akkor a multiplex tovább lép a következő helyiértékre és beolvassa a következő karakter értékét. Igy megy tovább addig amig a kijelző végéreér.
Na remélem letudtam írni érthetően. Ha nem akkor kérdezz nyugodtan. |
|
|
Ha jol ertem, csak szamokat akar kiirni egy 5*7 pontmatrixra. Innentol tok folosleges a kijelzot pontmatrixkent karaktergeneratorral cimezni.
A pontmatrix keruleten 3-asaval osszekoti a vizszintes/fuggoleges vonalra eso pontokat, es csinalt egy 7szegmenses kijelzot, amit meghajt egy bcd/7szegmenses dekoderrel, oszt csokolom. |
|
|
| Tény , hogy ez is egy megolás, de ha olyan karakterképet akar egyszerűbb egy olcsó négydigites kiejelzőt használnia. De gondolom a vezérlés megoldás megismerése volta cél. Ha meg azt megoldotta nem gond a szöveg megjelenités sem. Nem beszélve a tapasztalat megszerzéséről. Az emlitett megoldás hasonlit arra mintha egy Mercédest használnánk talicskának. |
|
|
| Én csak számokat szeretnék kiírni a Til305-ös kijelzőre. Ammennyiben lehetséges, akkor a számokat szeretném úgy kijelezni ahogy a téma elején mutattam a képen. Főleg ezeket a számokat: 0, 3, 4, 6, 7, 9. Nem úgy szeretném kijelezni a számokat, mint ahogy a 7 szegmenses kijelzőn szerepel. Arra ott van a 7 szegmenses kijelző. Én azt szeretném megoldani, hogy a témaindító hozzászólásomban bemutatott képen láthatóan szeretném kijelezni a számokat és megépíteni 1 olyan órát ami, til305-öt használ kijelzésnek és az óra a képen láthatóan jelzi ki a számokat. Csak az a baj, hogy a vezérlést nem tudom megoldani. Meg nemtudom, hogy a Topi féle kapcsolást meg lehetne-e építeni ezzel a kijelzővel persze hőmérő nélkül.Topi féle óra |
» A fájlok letöltéséhez be kell jelentkezned! «
|
|
|
Na igen ez tenyleg talicska , de arra gondoltam, van neki egy zsak ilyen, es tok mindegy milyen formaban, de szamokat akar megjeleniteni. |
|
|
Hja ugy tunik figyelmetlen voltam, nem vettem eszre, hogy te SZEP szamokat szeretnel kijelezni, marad a karaktergenerator ROM, vagy mikrokontroller. (805X, PIC, ATMEL, ARM igeny szerint)
Ha nem akarsz mikrokontrollert, BCD/7 szegmens dekoder helyett lehet hasznalni egy EPROM-ot, az egyszeruseg kedveert az also 3 biten a karakteren beluli oszlopokat kell elszamoltatni 0-tol 4-ig, a kovetkezo 4 biten meg a szamokat 0-tol 9-ig, illetve lehetseges a hexa kijelzes 0-F kozott is.
Tehat 7 bites cimtartomany eleg, 128 byte-os ROM vagy EEPROM szukseges a feladathoz, illetve a miltiplexelt kijelzes ket szamlalobol all, az egyik a karakteren beluli oszlopokat, a masik pedig a digiteket szamolja.
Szoljatok, ha nagy baromsagot irtam.  |
|
|
| Nem baromság, így kell megcsinálni. Ha jól emlékszem, a TTL IC-k között van olyan regiszter file (RAM), aminek külön van írási és olvasási oldala (74170?)m pár ilyet ha beépít az ember, akkor lehet "képernyőmemóriát" csinálni a kijelzőhöz, és az írástól teljesen függetlenül dolgozhat a szintén TTL IC-kből össuerakott képernyőfrissítési áramkör (ami minden digit minden oszlopán végigrohan ciklikusan). A karaktergenerátor helyébe én EPROM-ot vagy flash-t tennék már csak az egyszerűbb kezelhetőség miatt. |
|
|
Nem gond ha nem vetted észre. Olyan lenne a legjobb, hogy ha 1 PIC-ről tudnám meghajtani mind a 6 TIL305-öt. Mert sztem ez lenne a legegyszerűbb (javítsatok ki ha tévedek) . De sajnos nemnagyon tudok PIC-re programot írni. A karaktergenerátorról még nem hallottam. epromot sem használtam még eddig. Mivel az eddigi órámhoz nem kellett használni. Ha valaki tudna segíteni a program megírásában igen örülnék neki. |
|
|
Egymásba ágyazott ciklusokkal meglehet csinálni. Kell egyszer öt kimenet bitmintánk. monjuk A port, Kell a sormeghajtásra 7 ( ha nem használsz dekódert) ha igen akkor elég 3. Dekóder ic 3 ból 8-ra. É még kell a helyiértékkekre is legalább négy kimenet, ha ninc dekóder haználva. ha van akkor csak kettő.
Mgcsinálod a bit mintát a karakterekhez. Pl a 0 iyg néz ki ha balról jobbra van a súlozás. (1,2,4,8,16) első sor
1. 14
2. 17
3. 17
4. 17
5. 17
6. 17
7. 14
ezt a bit mintát kell kiadni egy for next ciklusban .
majd ha ez lefutott akkor vszed a következő helyiértéket és iyg tovább ..
nagyon leegzserűsítva. |
|
|
Célszerű a belős eepromba letenni a mintá és onna beolvasni majd a kötvekező karakter bimintájának a helyét héttel eltolod mindig pl a nulla az eeprom 1. től 7. ig. az egy az már a 8. 14 ig egészen kilencig.
A következő karakter mintája az a 8. memóriaheyltől indul. Vagyis innen kezdve hét cellát olvas be. Majd ha ez kész növeli a helyiérték számlálót. A megjelenitendő karaktert cimét egy ugrótáblából veszi és az eltolássalmegnövelt (7) értékú cellából kezdi olvasni a mintát. |
|
|
| Nem rossz az elképzelés, csak csupán annyi a gond hogy ezt hogyan kivitelezzem??Mik és milyen alkatrészek kellenek hozzá?? Mivel epromot még nem használtam még egyáltalán. |
|
|
| Azt nemtudom, hogy milyen dekódoló IC-t használjak ahoz, hogy ez megvalósítható legyen. Meg ezt hogyan kivitelezzem? |
|
|
Szia!
74HC138 - 3 -ból 8 vonalra dekóder....
74HC139 - 2 db 2 -ből 4 vonalra dekóder...
Szia |
|
|
| Először is meg kell nézni, hogy a til 305- nek milyen igényei vannak? Ledek áramfelvéle ( egysor) ezt összevetni a Pic port paramétereivel. Ha birja, akkor mehet direktbe, ha nem akkor egy tranyóval megtoldani. A vezérléshez elegendő egy port a sornak egy port a helyiértékekenek , valamint egy port a bitmintának. ( Itt a terhelés egy lednyi áram portbitenként) Ennek ismeretében kell a Pic -et kiválasztani. Gyakorlásképpen megpróbálod? Bevonhatnánk a fórum tagokat is a tervezésbe. Persze csak akkor ha van hozzá kedvük. |
|
|
Nos,akkor megpróbálom összefoglalni.Már vilmosd linkelte a példakapcsolást ITT.A 6 kijelző 6X5=30 oszlop,+ az óra-perc -másodperc közé pont vagy kettőspont (0.5-1 másodpercenként villogtatva)= 32. 4 db 8 bites shiftregiszter = 32.Hurrá! (Én legutóbb 4094-et használtam) Plusz kell a kijelző katódjaira 1 ULN2003.(Mivel egyszerre több led van begyújtva,a PIC nem bírja.)Ez összesen 5 plusz IC.
Akkor nézzük a programozást.1 számot 7 sor határoz meg.Ez 7 byte(aminek csak az alsó 5 bitjét használjuk).A 10 szám összesen 70 byte.Ez a kódtáblánk.Kiküldjük sorosan az aktuális érték első sorait a regiszterekbe,a 2003-on kapcsoljuk az első sort,engedélyezzük a regiszterekben az átírást.Majd jön a 2,3,stb. sor.(Egymásba ágyazott szubrutinok,for-next).
Hát,szerintem ennyi lenne a kijelzés. |
|
|
Igen, nagyjából jól összeszedted. Valamiért bennem az maradt meg, hogy mintha úgy indult volna a téma, hogy ne nagyon legyen benne PIC, mert azt nem tudja a kérdező programozni. PIC használata nélkül én a következőt tudnám elképzelni:
- kell két 4 bites számláló, az egyikkel a digitet jelöljük ki, a másikkal a diten belül az oszlopot; pl. 2xSN7493
- a számlálókhoz elképzelhető, hogy kell valamilyen kapu, hogy a megfelelő számlálóállásnál nullázzuk a számlálót (pl. 6 digitnél nem számolunk 8-ig, az oszlopokat is csak 6-ig kell számolni)
- a digit+oszlop információt demultiplexáljuk 30 vagy 36 vonalra, attól függően, hogy kell-e a tizedespont a TIL305-ből; ehhez kell 3xSN74154
- a kijelzőn megjelenítendő információ tárolásához kell 2x74170 (4x4 bit regiszter, külön írási és olvasási oldallal), így 8 digitre, digitenként egy-egy 4 bites információ áll rendelkezésre
- a digitszámlálóval címezzük a "képernyőmemória" olvasási oldalát, a memória kimenete az aktuális digiten megjelenítendő szám (4 bites információ)
- a megjelenítendő szám 4 bitjével és az oszlopszámláló értékével címzünk egy ROM memóriát, amiben a megjelenítendő karakterek képei vannak eltárolva (ide nem tudom, mi lenne célszerű, talán valamilyen 27XX, 28XX, vagy 29XX típusú, párhuzamos memória, az egyszerűség kedvéért jó lenne olyat találni, amit sorosan be lehet írni, de párhuzamosan olvasható)
- a demultiplexelt digit+oszlop jeleket erősítve (tranzisztorok) hajtjuk a TIL305 anódjait
- a ROM kimenetét erősítve (tranzisztorok, soros ellenállások) hajtjuk a TIL305 párhuzamosított katódjait
- az egész működés ütemezéséhez kell valamilyen órajelgenerátor, ezt pl. egy CD4060-ból szépen ki lehet alakítani
- a járulékos logikai kapuzásokhoz saccra két tok (7400, 7402, stb.) elég lesz
Ha jól számolok, akkor durván a következők kellenek: 2xSN7493, 3xSN74154, 2xSN74170, 1x27XX, 2xSN74XX, 1xCD4060, valamint 30(36)+7 db tranzisztor.
PIC (vagy más mikrovezérlő) esetén gyakorlatilag az összes logikai IC, valamint a karaktergenerátor ROM eltűnik, csak a meghajtásra (és esetleg a demultiplexálásra) kell gondot fordítani. Ilyen esetben én meggondolnám, hogy nem demultiplexert használok, hanem teljesítménykimenetű léptetőregisztert (TPIC6B595, TPIC6C595), ilyenekkel gyakorlatilag 3 vezeték felhasználásával bármilyen hosszú sort meg tudok címezni. Igaz, hogy ezek open drain kimenetűek, emiatt a meghajtást közös katódosra kell átformálni, és gyakorlatilag nem oszloponként, hanem soronként kell a kijelző multiplexálását felépíteni, de mikrovezérlő esetén ez nem jelent gondot.
Így összesen kell 3+6 láb a kijelző kezeléséhez a mikrovezérlő oldalon, 6 TPIC (6 digit 42 sora miatt) és 6 tranzisztor az anódok meghajtására. Ebben a megoldásban gyakorlatilag egy 16F84 is használható lenne, mert 9 szabad I/O lába annak is van. Persze valami korszerűbb cuccra kellene inkább tervezni, legalább egy 16F886-ot vagy inkább valamelyik 28 lábú 18F-et tudnám elképzelni.
Lehet még csökkenteni az IC-k számát, ha párosával hajtjuk a digiteket (ez fényerőben is jobb), ekkor 12 vonal kell az anódokhoz 12 tranzisztorral, de elég 3db TPIC. Ebben a megoldásban tehát 12+3 vonal kell a mikrovezérlőtől, ami még mindig nem sok, bőven vállalható.
Megjegyzés: a PIC-es megoldásnál a kijelölt sorban a LED-ek meghajtásához nem feltétlenül kell tranzisztor, elég lehet a PIC maximum 25mA-es kimeneti árama. Persze a nagy mértékű multiplexálás ront a helyzeten, ezért ezt meg kellene vizsgálni a gyakorlatban. |
|
|
Itt a til305 adatlapja
Csak azt nem értem, hogy az adatlaban 14 láb szerepel, az enyémen meg csak 13 láb van (nincs letörve) ezt megmutatom képen is  |
» A fájlok letöltéséhez be kell jelentkezned! «
|
|
|
| Nincs azzal semmi gond, a nem használt lábakat van, hogy ki sem vezetik. A számozásban attól még ott van az. |
|
|