Fórum témák
» Több friss téma |
AtomCity esetleg neked van valami ötleted a memo vezérlésre?
Csak CPLD-t használok az FPGA-t csak érintőlegesen ismerem. VHDL-nyelven lehet a legegyszerűbben a hardver leírást elkészíteni benne. Egyáltalán nem hasonlít a mikrovezérlőkre. Ebből következik hogy a digitális alap áramkörökkel tisztába kell lenni mielött az ember bele kezd.
Az hogy a memória hogy épül fel hardveresen az teljesen mindegy. A lényeg hogy a megfelelő időben a megfelelő szintű fesz kerüljön a lábakra. A számlálót hagyományos IC-k ből is össze lehet állítani. Keress visza a topikban. Sok példát fogsz találni.
Az alapáramkörökkel tisztába vagyok!
Más... Hogyan csináljátok? - Van pl 60Msps és pl 30Mhz-et mérek. Akkor ez azt jelenti hogy a 30Mhz-es jel 1 periódusából 2 mintát fog venni az ADC. Ez alapján hogyan lehet eldönteni hogy az most szinusz vagy 3szög jel? Pl ha a rajzprogram ami kapja a bemenő jeleket úgy rajzol hogy x/y tengelyre teszi az értékeket pl pont formában és 1 egyenessel összeköti őket. Akkor a szinuszból is 3szöget fogok látni? Más... Hogyan csináljátok? Azt értem hogy mintavételi órajel ketyeg, telik a memória, betelt jelet érzékel a vezérlő. A vezérlő leállítja a mintavételi frekit és átkapcsolja a memória i/o lábait a vezérlőre és a memóriaát átkapcsolja kiolvasásba közbe nullázza a számlálót és elkezd számolni, közbe nyeri kifele az adatot a memóriából és küldi soros porton vagy usb-n. ha küldte akkor kezdi előről. Az adatküldés alatt elveszlődik a sok sok jel?
"Van pl 60Msps és pl 30Mhz-et mérek. Akkor ez azt jelenti hogy a 30Mhz-es jel 1 periódusából 2 mintát fog venni az ADC. Ez alapján hogyan lehet eldönteni hogy az most szinusz vagy 3szög jel?"
Sehogy! 60MS/s-el kb. 3MHz-es jelet lehet vizsgálni. Én a pontok lineáris összekötését támogatom. Az egyéb közelítő négyzetes, szinuszos görbékkel való összekötés becsaphat. Vannak trükkök. Az úgynevezett ekvivalens mintavétel ami egy gyors triggerrel kombinálja a mintavételt, azonban ez inkább marketing mint hasznos funkció. Nem szakértő kezekben ez becsapós eredményt adhat vissza. "Az adatküldés alatt elveszlődik a sok sok jel?" Pontosan így van. Ezért célszerű egy bazi nagy memóriát használni.
-Hello, kb ez lesz a helyzet, ezért kell a mintavételi frekinek kb 10 szeresének lennie a vizsgált legnagyobb frekvenciának.
-Ahogy leírtad, az is helyes, de ha periódikus jeleket vizsgálunk, az adattranszfer alatt elveszett idő nem probléma. (Legalábbis én ezért egyáltalán nem aggódom.) Ha meg lényeges, lehet triggerelni... -Kérdezted még a számlálót: lehet TTL szinkron számlálókból is. (SN74xx161)
Akkor most pl az ADS830 60Msps ezzel csak egy 6Mhz sávszélességű szkópot csinálhatok? elég tré. Akkor pl a gyári szkóp hogy rajzolja ki a jelet? Láttam olyat pl hogy 100Mpsp a mintavétel és 25Mhz-es. Ez is akkor 4 mintát vesz a 25Mhz 1 periódusából? Nah arra a képre kíváncsi lennék amit egy gyári kreál különböző hullámalakokkal...
Köszönöm skacok az infókat. Ha valami nyűgöm van akkor csipogok majd
Esetleg egy kis irodalom
"Akkor pl a gyári szkóp hogy rajzolja ki a jelet? Láttam olyat pl hogy 100Mpsp a mintavétel és 25Mhz-es."
Vagy ekvivalens mintavétellel vagy szinusz burkolóval mért. Mindkettő hamis eredményt adhat vissza. Nem véletlenül használnak GS/s sebességű mintavételeket manapság.
60 MHz-es órajelet egyik 161-es TTL számláló sem tud kezelni. A leggyorsabb 74S161-es is csak max. 40 MHz-es órajellel tud működni.
A 74F161A TA = +25°C-on tipikusan 120MHz, min. 100MHz ! Nem az a leggyorsabb, ezt benézted. Ezenkívül lehet keresni ECL-ben is számlálót, azok meg tudnak akár több száz MHz-et is lazán.
Valóban az F sorozatról elfelejtkeztem. Emlékeztetlek a TTL sorozatról volt szó. Az ECL említése pedig már a ki-mit tud kategóriájába esik, de ide nem illeszkedik. Ugyanis az ECL csak illesztő áramkör segitségével tudja kezelni az adott memoriát. Ami a szkópot illeti a gyors memória kezelést véleményem szerint csak FPGA-val oldható meg az adott sebességnél.
Akkor a 74ACT161? az remélem tudja a 40Mhz-et???
Mi van akkor ha olyan alacsony frekit kell mérni aminek az egy periódusa nem fér bele a memóriába. Azt hogyan csináljátok? Milyen PC programmal lehet logikai ic-ket szimulálni, ami jó is? pl NI multisim? vagy inkább a Tyna-t ajánljátok hozzá?
Látom foglalkoztál a témával. Sorban mutatsz rá a problémákra. Ehhez kell az órajelet osztani vagy csak X.-ik mintát letárolni a SRAM-ba. Az utóbbi a jobb megoldás ugyanis ezek a gyors A/D átalakítók nem hajlandók a lassú mintavételre. (használd a SRAM engedélyező lábát)
Egyébként csak pénz és idő kérdése ha gyorsabb mintavételű szkópot akarsz készíteni mint 60MS/s. Ehhez meg kell sokszoroznod a mintavételező áramkörök számát és párhuzamosan eltolva mintavételezni. Ekkor jön elő az FPGA és CPLD előnye, mert ezekkel rugalmasan lehet kialakítani az áramkört, azaz nem kell újra megépíteni az új panelt ha egy késleltetés nem megfelelő. (Fogadjunk az lesz a következő kérdésed hogy hogyan kell az elő és utó trigert megvalósítani)
bbatka igen foglalkozom vele.... én nemm LCDre akarom kitenni a jelet hanem a számítógépen soros porton akarom megjeleníteni a jelet... vagyis ilyesmiféle USB szkópot szeretnék. Túl drágának tartom a 16 rugót egy LCDre. A 74ACT161 125Mhz-et bír adatlap szerint.
Azt nem tudom lehet-e kapni, de ez tud 100 MHz -et
Most tulajdonképpen a CLPD az tele van logikával és úgy kötöm össze őket ahogy akarom elvileg ez a lényege, és hogy jó gyors Akkor mi az FPGA? Mivel tud többet? Meiket könnyebb programozni? Melyiket érdemes használnom?
Ahogy olvasgatom a fórumot, én az analóg résztől félek a legjobban.
Itt a 74AC161 / 74ACT161 adatlapja Ez 167 / 125 Mhz tipikus órajelet bír, ami még magasabb az F sorozatnál is. Ha gyors TTL kell az A és F sorozatokból érdemes nézni, az újak sokszor LV-sek (1,8-3,3V Ucc). Viszont egy egy boltban sem láttam készleten. Próbáltam nézni ajándékba bontott paneleken nálam, de nem látok egyet sem. A többiben sajnos nem tudok segíteni.
Teljesen igazad van. Egy notebook-nál nincs jobb megjelenítő. Így is úgyis meg kell írni számítógépre is a programot. Gondolok itt pl. FFT-re.
Az analóg résztől ne félj. Keresd vissza az LM7171-el megvalósított kapcsolásom. Van egy kis finomítani való rajta, de szerintem nem problémás.
esetleg ha alacsonyabb frekit mérek akkor pl össze lehetne rakni nagy memóból egy olyasmit ami az összes mintát küldi a gépre és a gép szoftvere meg pl 10-10-10 mintát átlagol és még pontosabb értéket kapnánk és ebből lenne egy minta. Ez mennyire jó ötlet?
Nem beszélve arról hogy a gép fejlesztőkörnyezete meg (Történetesen én a C#-et fogom válaszani.) tele van rajzoló függvényekkel. Amivel szép szinuszokat lehet rajzolni a minták alapján. A kijelző szép nagy, színes és már van.... Nem kell megint megvenni.
2 csatona 250Msps - ez megvalósítható? de ha csak 100Msps.... majd meglátom. attól függ mennyivel fog többe kerülni. Ha meg lehet oldani akkor milyen CLPD-t ajánlottok a célra? Vagy esetleg FPGA. Milyen memóriát? Milyen ADC-t? Nem elég kvarc generátor fix órajelnek? Jobb lesz egy vezérelhető látom. Mi a típusa annak amit ajánlottok a célra? Lehetőleg olyat mondjatok ami van a TME-nél.
Nem rég vettem egy kicsit komolyabb szkópot OWON MSO7102TD. Van beépített FFT kezelése. Ezt azért írom mert nagyon hasznos. Rádió frekis gitárjeladók építésével küzdök vagy két éve. Most végre az FFT-nek hála mérni tudom a keverési frekvenciák értékét. Végre látom hogy pl. a szűrő tekercs értékének megváltozása milyen változást okoz a kimenő jelben. Egy szóval az FFT kezelést majd ne hagyd ki a programodból, mert nagyon hasznos.
"Ha meg lehet oldani akkor milyen CLPD-t ajánlottok a célra? "
A kiválasztott A/D és SRAM feszültségétől függ. Az újabb CPLD-k dual edge módban megduplázzák a frekvenciát. Azaz a ChipCAD-nél kapható olcsó 50MHz-es oszcillátor modulból rögtön 100MHz-et kapok. Ezek a 3,3V-sak. Az 5V-sak sajnos nem tudják a dual edge módot.
*******.. Üdv újra.
Az ADS830E adatlap szerint max 60Mhz-et bír. Ehhez teszek egy 60Mhz órajel generátort és ez fogja a memória órajelét is szolgáltatni. Memória cím léptetését 74ACT161-el oldanám meg. Akkor hogy én az alacsony frekvenciát is tudjam szkóppal nézni akkor el kellene tárolni 1s mintát ami ugye a mintavételezésből adódóan 60 000 000 (60 millió) x 8bit lenne. 60 millió x 8 = 480000000 bit 60000000 byte 58593 kbyte 57Mbyte Ha nagyon pro akarok lenni akkor kb 60 Mbyte memória kellene bele Na * ehejett inkább maradok a memória órajelének a leosztásánál így több idő alatt telik meg a memória és a mintavételezés ideje is egyértelműen nyúlik vele. Egyszóval: Az ADC órajele marad és a memórián lassítok. Ez borzalom..mellőzd az msn szlenget ha kérhetem !
(Egyenlőre még nem akarok CLPD-t és FPGA-t használni.)
Memóriának: K6R4016C1D-UI10 SRAM 5V 256kx16 10ns TSOP44II gondoltam ebből is 2-őt. mind 2őnek az alsó 8bit-be az 1. csatorna mintáit írni, a felsőbe a 2. csatornáét. Úgy kellene megelkonom a logikát hogy 1 memória engedélyezve, számlálók indulnak. Elég csak az egyik memóriának megcsinálni a számlálókat és akkor nem kell dupla ic mert ugye bár akkor dupla bit szám is kellene. Amikor végéhez ért a számláló akkor memória1 tiltás és memória2 engedélyezés. Számol elölről és ha kész akkor a uC felé pl egy magas szinttel jelzi hogy megtelt. Akkor a uC letiltja az ADS830-at és átkapcsolja a memóriát kiolvasásra. Közbe a saját órajelével olvassa ki az adatokat a memóriákból és küldi a notebooknak ahol meg gyakorlatilag akármit csinálhatok már vele. A bemeneti osztót a gépi programból akarom állítani, emiatt reed relék alkalmazása lesz, vagy nem tudom hogy a 4066-os kapcsoló alkalmas lenne erre a célra, hogy a bejövő jelet kapcsolgassa a megfelelő ellenállás osztóra?
"A bemeneti osztót a gépi programból akarom állítani, emiatt reed relék alkalmazása lesz, vagy nem tudom hogy a 4066-os kapcsoló alkalmas lenne erre a célra, hogy a bejövő jelet kapcsolgassa a megfelelő ellenállás osztóra?"
Relét használj.
Szia SUNCORGO
Érdeklődve olvastam fejtegetéseidet és kettő kérdésem lenne ezzel kapcsolatban: 1. Honnan fogja tudni a meg nem nevezett uC, hogy megtelt a memória? 2. Mennyi idő alatt tudja feldolgozni a kapott információt és leállítani a memóriát? Ugyanis ez alatt az idő alatt már újrakezdi a számlálást.
Szia jano36! Olyasmi elven akarom megcsinálni a memória vezérlőt mint egy monostabil kapcsolás. Egy H impulzussal indul és ha a memó megtelt, akkor ez a folyamat leállítja önmagát, vagyis egy logika kell oda ami leválasztja az órajelet a memóriákról. Ezután már a memória teljes vezérlését egy Atmega8-ra fogom bízni ami átkapcsolja a memóriákat read módra, nullázza a számlálókat és saját órajelet adva a számlálóknak kiolvassa az adatokat és küldi a notebookra usb soros port konverteren keresztül az atmega USART-ját használva. Ha felküldte a gépre az adatokat akkor számlálókat nullázza és a memóriákat visszaállitja write módba, és egy pl H impulzussal újra órajelet ad a számlálóknak, és kezdődik elölről minden.
Ezt a kapcsolásod leltem de én ebben nem találtam LM7171-es analog részt.
Itt a számláló. 1111 1111 1111-nél áll meg. Hiába kapja az órajelet nem kezdi elölről/nem csordul túl.
Újraindítani az ENP lábak felhúzásával lehetséges. |
Bejelentkezés
Hirdetés |