Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Programiranje portova

[es] :: .NET :: Programiranje portova

[ Pregleda: 3316 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bokiko
Kostic Bojan
programer
Beograd

Član broj: 55172
Poruke: 77
*.nat-pool.bgd.sbb.co.yu.



Profil

icon Programiranje portova28.05.2005. u 13:21 - pre 230 meseci
Da li je moguce, i kako uz pomoc C# izvrsiti programiranje portova na taj nacin da za odredjeni ulaz koji dobijem od nekog spoljnjeg uredjaja, imam odredjeni izlaz (na pr. na monitoru mi se u real time iscrtava crafikon atmosferskog pritiska za vrednosti koje dobijam od barometra ). Da li postoji neka literatura koja obradjuje tu tematiku???
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Programiranje portova28.05.2005. u 15:15 - pre 230 meseci
To sto ti pitas je moguce (i primenjivano u praksi), ali konkretan odgovor zavisi od mernog uredjaja koji koristis. U svakom slucaju celo merenje se svodi na neki analgni input (barometar), A/D konvertor koji konvertuje izmernu vrednost u diskretnu numericku vrednost u nekom opsegu i interfejs ka kompjuteru koji tu vrednosst "nekako" dobaci u kompjuter.

E sad to "nekako" moze na gomilu nacina. Koji ces izabrati zavisi od broja samplova koji ti trebaju. Ako meris jednom u sekundi serijski port je idealan, interfejs "razbije" 8bitnu ili 16bitnu (ili kakvu god) izmerenu diskretnu vrednost u pojedinacne bitove i nafiluje u serijski port po nekom RS232 protokolu. Tvoj softver prati ulaz sa serijskog porta, skupi vrednost i ti je posle pretvoris u pribliznu analgnu vrednost (znajuci koji je opseg merenja) i iscrtas na ekranu.
Druga opcija koju sam video je upotreba LPT porta, preko njega u jednom cugu moze svih 8 bita da prodje sto ga cini malo brzim (moze da svari vise semplova u sekundi od serijskog porta). Noviji "spori" merni instrumenti koje sam video idu preko USBa ali sto se tice programiranja, simuliraju ili serijski ili paralelni port preko USBa.

Kao i ranije, za veliki broj semplova po sekundi potrebna je posebna merna kartica. Ima ih raznih a i cene su im razne . Googluj za "A/D data acquisition cards PCI" da vidis sta ima na ponudi... Postoje i brzi merni USB instrumenti ali oni su varijanta gornjeg, u prevodu rade pod sopstvenim drajverom. Svaki od ovih instrumenata ima svoj API i ne postoji konretan C# odgovor za njih. Retko, retko sam video da je .NET u igri ovde, ali cesto bude COM objekat koji mozes da iskorstis preko Interopa.

BTW, ako ti ikad padne na pamet da iskoristis A/D konvertor na audio kartici , imaj u vidu da ce vise od +/-20mV da je sprzi, pa moras napraviti reduktor koji ce svesti merene velicine u opseg +/-20mV. Takodje vecina kartica sa kojima sam ja eksperimentisao su imale "normalizator". Tj ako neki period vremena drzis npr konstatnto 5mV, kartica ce se adaptirati i prekalibrisati da joj 5mV bude vrednost 0, posledica cinjenice da je u prirodi zvucni signal uvek normalizovan. To cini audio karticu jedino dobrom za merenje signala koji je vec normalizovan. Sa druge strane, snimanje merenog signala se svodi na kod za snimanje "zvuka"

E sad ti izaberi koja ti tehnika treba, pa da vidimo koji C# kod mozes da iskoristis za ovo. Postoje vec gotove klase za C# koje rade sa serijskim i paralelnim portovima.


Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

bokiko
Kostic Bojan
programer
Beograd

Član broj: 55172
Poruke: 77
*.nat-pool.bgd.sbb.co.yu.



Profil

icon Re: Programiranje portova31.05.2005. u 07:50 - pre 230 meseci
Hvala na opseznom odgovoru
 
Odgovor na temu

[es] :: .NET :: Programiranje portova

[ Pregleda: 3316 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.