Stránka 1 z 2

Převod 1bit signálu do PC texťáku

Napsal: 10 bře 2017, 11:15
od ZdenekHQ
Mám výstup z komparátoru, kterej potřebuju dostat do PC do texťáku jako "nudli" jedniček a nul. Vzorkovací kmitočet cca 1kHz, není kritickej, stačí mně 1 vteřina záznamu.

Pokud za tu 1 vteřinu bude 100ms na výstupu komparátoru log-1, bude v "nudli" s tisícem znaků 100 jedniček a zbytek budou nuly.

Nevím, jak to rozumně dostat do PC, printerport nemám, dokážu to přes RS232, ale to bych si musel naprogramovat jednočip, na to zas není čas.

Nenapadá vás nějaká fligna, jak to udělat jednodušeji?

Napsal: 10 bře 2017, 11:35
od forbidden
Rozebrat klávesnici a spínat tlačítka 1 a 0? :D Nějaká herní klávesnice by ten 1 kHz snad stihla.
Jen vtip.

Napsal: 10 bře 2017, 12:29
od PvvS
Zkoušel jsem kdysi takhle dekodovat jednu komunikaci,a použil jsem RS232 IR dekoder. Misto IR prijimace sem pripojil optoclen a data z druhyho konca sem tahal tusim pomoci Terminal programu.

Napsal: 10 bře 2017, 12:31
od nokijec
Přes seriový port to jde čtením linek RI,CTS ,DSR a DCD.
Jako inspiraci doporučuju knihu Elektronika s podporou PC.Burkhart Kainka nakladatelství Hel.

Napsal: 10 bře 2017, 12:35
od masar
ZdenekHQ píše:... dokážu to přes RS232, ale to bych si musel naprogramovat jednočip, ...
Proč hned jednočip?
Nestačilo by upravit tento příklad k "obrazu svému"?
:wink:
p.s. Ostatně stejný problém se tu řešil tady.

Napsal: 10 bře 2017, 13:47
od Ondra2
Pokud je zaručená střední úroveň signálu (manchester), tak zvukovka. Pokud není, tak taky zvukovka, ale ve wavu je potřeba detekovat hrany a ty přeložit na log. úrovně (ingerovat). A to lze udělat i v excelu.

Napsal: 10 bře 2017, 14:16
od bum
Také jsem. potřeboval načítat data pro oddělení vstupu počítače jsem použil optočlen. Pro inspiraci zapojení a programy jsou na mém webu v článcích test vstupů výstupu a načítání pulsů vodoměru.

Napsal: 10 bře 2017, 14:35
od PixelOrgy
Zvukovka by sla, ale kdo vi, co s tim obdelnikem udela ta bizuterie na vstupu..

Jakej OS na tom bezi? Na linuxu nebo BSD (a jinych unixech) to pujde v pohode cist z COM portu - typicky ze zarizeni /dev/ttyS0 byva prvni COM (u BSD myslim /dev/sio0).

pak muzes pouzit jednoduse

Kód: Vybrat vše

while read -r vzorek < /dev/ttyS0; do nejaka_operace(vzorek); done

Nebo ve Windows by to melo jit pres PowerShell - objekt System.IO.Ports.SerialPort <parametry>

Napsal: 10 bře 2017, 15:12
od mihal
Asi by to šlo cez riadiace sig.RS232 + MSCOMM32 a VisBasic :twisted:

Napsal: 10 bře 2017, 15:59
od sqad
Ja som na niečo podobné použil FTDI kábel v režime Bit-Bang. Vtedy sa chová podobne ako ten paralelný port (tx, rx, rts, cts a iné sú všetky nastaviteľné ako I/O), z ktorého sa dajú načítavať dáta s periódou definovanou v premennej pôvodne určenej na baud-rate. Aplikácia potom načíta tieto dáta a zapíše do súboru...

http://hackaday.com/2009/09/22/introduc ... bang-mode/

Napsal: 10 bře 2017, 17:45
od ZdenekHQ
Díky za reakce.

Ta myšlenka s delphi, v mém případě přepsaná do pascalu a CTS není špatná. Na pracovním stroji s WIN98nsp to umím (proto ho používám dodnes, jen jsem si změnil vzhled, aby to vypadalo jako Visty. Takže nemusím reagovat na blbý poznámky o starým OS, i když to jsou dnes Visty taky).

Problém nastane, až se soudruzi rozhodnou, že si to chtějí vzorkovat sami a na PC jen s USB s redukcí na RS-232. Tam skončím, nemůžu umět všechno.

Kdežto log přes redukci USB/RS232 do texťáku bude běhat na všem, proto ten procesor.

Napsal: 10 bře 2017, 17:52
od p32
ZdenekHQ píše:Nevím, jak to rozumně dostat do PC, printerport nemám, dokážu to přes RS232, ale to bych si musel naprogramovat jednočip, na to zas není čas.
Četl bych to opravdu jen přes sériový port. Kdysi jsem tak četl ze vstupních bran firem jednotlivá data z paměti krabičky pro bezkontaktní karty. Bylo to levné a spolehlivé, jen to chce definovat začátek a konec pŕenosu. A taky záleží jaký OS na to chceš používat, mě to stačilo v DOSu pod W98.
Původně mě napadl obyčejný HW posuvný registr a po naplnění zobrazení stavu v HEX kódech za sebou. Tzn. bez PC, ale převod do toho PC asi potřebuješ kvůli nějaké pravidelné archivaci a kontrole.

Napsal: 10 bře 2017, 19:29
od bum
Píšeš že program z Delphi přepíšeš v Pascalu v případě že používané PC má sériový port tak to čtení CTS nebo jiného vstupu je v pohodě pod uvedeným OS co píšeš. Pokud máš PC kde máš pouze USB tak při použití redukce USB/COM čti spíše vstup RXD. Také spíše pro sebe píši programy v TP, fungují na PC z příkazové řádky i pod Windows v 32-bitové verzi a co mám v TP na webu tak mám také reakce abych se s TP vrátil do hrobu.

Napsal: 10 bře 2017, 19:54
od frpr666
Arduino ?

Kód: Vybrat vše

int inPin = 7;   // pushbutton connected to digital pin 7

void setup()
{
  Serial.begin(19200);
  pinMode(inPin, INPUT);      // sets the digital pin 7 as input
}

void loop()
{
  val = digitalRead(inPin);   // read the input pin
  if (val)
  {
    Serial.write('1');
  }
  else
  {
    Serial.write('0');
  }
  delayMicroseconds(1000);        // pauses for 1000 microseconds
}

Napsal: 10 bře 2017, 20:01
od weed_smoker
Už delší dobu uvažuju koupit si na podobný účely BS-10 ,máte s tim někdo zkušenost?