Převodník digi disp. to BIN
Jde nějak jednoduše elegantně vyřešit převodník ze segmentové digitální číslovky (a,b,c,d,...g) do binárky (TTL)?
Příklad 1 -> b,c -> 0001; 2 -> a,b,g,e,d -> 0010 atd.
Díky
Jde nějak jednoduše elegantně vyřešit převodník ze segmentové digitální číslovky (a,b,c,d,...g) do binárky (TTL)?
Příklad 1 -> b,c -> 0001; 2 -> a,b,g,e,d -> 0010 atd.
Díky
Zpět do poradny Odpovědět na původní otázku Nahoru
Elegantně? Jednoduše? Co takhle programem nahraným do jednočipu? Raději vysvětli o co jde, bez dalších informací jde těžko radit...
Celej problém? Budiž.
Mám 500 úrovní rozlišených po 1mV. K dispozici 4 vstupy a 4 výstupy, paralelní, logické (TTL úroveň). Měřit frekvenci nelze - U/F tedy vůbec nehrozí.
Nápad byl tedy takový, dát tam A/D převodník s výstupem na segmenťák a display jakoby přečíst po dekadických číslovkách - binárně, mezi číslovkama se přepínat dvěma výstupama.
Jestli někdo vymyslíte lepší variantu jako procpat 500 napěťových úrovní skrz 4 bity, sem s tím.
Dat tam desetibitovej AD s paraelnim vystupem, 9xNAND a vycitat po treba trojicich? zbyde ti 1 vstup a 1 vystup na bublifuk a pokud neni rychlost kriticka, tak by to melo bejt v cajku
Napadá tě sehnatelnej obvod za rozumnou cenu? To byl původní nápad, než jsem zjistil, že neni tak snadné ho sehnat. Našel jsem jen 12bit a za cenu cca 700Kč. AD s výstupem na segmenťák jde sehnat všude a stojí necelý kilo. Bohužel bez hromady hradel si ten převodník představit nedokážu. Rychlost není vůbec kritická, hodnotu mi stačí získat v F=1Hz i méně, takže času je pomalu na kafe . Kdyby tam seděl člověk a z toho segmeňtáku to opisoval, tak mi to teoreticky stačí taky .
a co tohlemcp3202-bi-p-p320-066
Ma to neco jako spi, clock muze bejt 10kHz-500kHz, bude te to stat 2 vystupy a jeden vstup, obsluzna rutina jde napsat prasacky a rychle.
no, seriák se mi moc nelíbí byť úspra I/O by byla docela fajn, nemám s tím ale vůbec zkušenost, nyní uvažuji nad 7135-p320-008, ale časovat si to jedním výstupem (jednoduchej cyklus tj. paralelně načíst 4bity a jedním poslat impuls na CLOCK, načíst, impuls...), ale faktem je, že netuším, jestli je to reálné, takhle ten obvod znásilnit
Nehledej v tom zadnou slozitost. Shodis CS a nasleduje stavova masina while-switch-case, kdy mezi stavy jde CLK nahoru a
1) nahodis Din startbit a sestupna hrana
2) nahodis Din 1, ze chces cist kanal(0 by byl rozdil) a sestupna hrana
3) nahodis Din 1, ze chces MSB first a sestupna hrana
4) sestupna hrana(mala pauza) a prijde ti na Dout nulovej startbit
5-17) sestupna hrana a precist bit z Dout, pricist a orotovat
CS opet nahoru
Po vzestupnej a sestupnej hrane par NOPu. Casovani je hrube nekriticky, viz aplikacni poznamka, takze nejakej interrupt mezi te trapit nemusi, zvlast pokud bude rychlej
A je to.
Vymenit uC za nejaky s AD prevodnikom.
Inac samozrejme ze sa da dekodovat 7segment, podla tabulky a postupnym nasobenim. Je to ale somarina, to skor pouzit nejaky seriovy interface. Idealne (aj cenovo) je zmenit uC.
k semisegmentovce snad existuje převodník BCD nejsem si jistý ale snad (SN7440)
K segmentovce ano, ale ne od ní , potřeboval jsem to opačným směrem, je to extrémně prasácké řešení. Mám už vymyšlen jiný postup na to jak to udělat paralelně, levně a jednoduše, je jen otázka jestli se nakonec spíše nevidám cestou seriového přenosu a ty I/O si neušetřím. Kéž bych nebyl naučen vše řešit paralelními I/O a "číslicovkou" .
postrádám nějak smysl. a co použít multiplrxer osmičkový na výstupu by pak byl kód v seriové podobě a ten uložit do registru.
Je to tím, že nejde sehnat AD 10bit paralelní převodník , vyčíst ho po částech už je sranda. Asi to udělám 12bit sériovým převodníkem a proženu ho přes SIPO).
Třetí a nejlákavější varianta, všechno s čím nyní pracuju vyrvu, hodím do koše a za litr koupím Arduino, které poslouží mnohonásobně lépe . Umí číst analogově, má dostatek paralelních výstupů a umí i PWM . Nemusím se s ničim bastlit a bude to hotový za odpoledne.
minule som kupoval nejaky atmel, stal 5eur (=125Kc) a mal vsetko, asi 20 I/O z toho 8 A/D, 3casovace, comparator, kopec RAM, Flash, EEPROM, atd. Za polovicu (2-3eur) sa da zohnat mensi uC s A/D prevodnikmi atd.
Napr. http://www.conrad.de/ce/de/product/154273/ATMEL-AV R-RISC-Microcontroller-Atmel-ATMEGA48-20AU-Gehaeus eart-TQFP-32-Clock-Speed-20-MHz-Flash-Speicher-4-k B-Speicher-
za 2,50eur (ca. 65Kc) alebo podobnu variaciu, je ich dost vela podobnych. Alebo ti je malo 10bit? To potom ale musis riesit dost zasadne aj rusenie a stabilitu referencneho napatia a podobne srandy.
resp. na ceskom GME
atmega48-20pu-p432-190
alebo
atmega8-16pu-p432-201
apod. Je nezmysel riesit to mimo uC (cenou, miestom, spotrebou, komplikovanostou, atd)