Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Procesory PIC a tisk na tiskárnu přes LPT

 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Jirka



Založen: Jul 01, 2005
Příspěvky: 2031
Bydliště: zbídačený kraj

PříspěvekZaslal: so říjen 20 2007, 15:37    Předmět: Procesory PIC a tisk na tiskárnu přes LPT Citovat

Zdravím,

Mám takový teoretický dotaz. Smile

Zkoušel jste někdo tisknout z procesoru PIC přes LPT port na jehličkové tiskárny nebo termotiskárny? Je to vůbec reálné, případně byly by nějaké odkazy na tuto problematiku?

Zamýšlel jsem tisknout z malého terminálu samolepící štítky s pořadovým pětimístným číslem a PICka by mi do toho zapojení "seděla". Postisku tlačítka by se přičetla jednička a soubor znaků pro tisk (v ASCII) by se odeslal na tiskárnu přes LPT. Tak nějak bych si to představoval.

_________________
*****
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Hop377



Založen: Jun 19, 2004
Příspěvky: 439

PříspěvekZaslal: so říjen 20 2007, 16:03    Předmět: Citovat

Je to realne, staci ked si pozries specifikaciu protokolu centronics a lahko to pochopis.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Crifodo



Založen: Oct 11, 2005
Příspěvky: 15005

PříspěvekZaslal: so říjen 20 2007, 20:05    Předmět: Citovat

někde na webu by měl být ke stažení disassemblovaný výpis ROM Didaktiku Gama a tam je rutina pro Z80 pro obsluhu tiskárny s rozhraním Centronics, asi by se z toho dalo inspirovat. Vešlo se to do pár stovek bajtů.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
eljaro



Založen: Dec 03, 2004
Příspěvky: 441
Bydliště: Krnov

PříspěvekZaslal: ne říjen 21 2007, 7:40    Předmět: Citovat

záléží taky co budeš chtít tisknout ! text půjde podle textovéch sad v dané tiskarně asi to bude docela jednoduché už si to moc nepamatuji ale odešleš esc sekvenci ve které nastavýš tiskárnu do text režimu - zvolíš typ písma a způsob pohybu vozíku uzavřeš inicializaci a začneš sypat text s příslušným generováním konce řádku . U grafiky je to podobné jen se místo typu nastavuje hustota dpi a místo dat tam pošleš 0101 podle toho jak má zrovna tisknout a opět přeskok na další řádek . je dobré projít protokol k tiskárnám - v zásedě takto budeš moci tisknout i Hp s plc3 ten protokol je obdobný jako pro jehličkové. Ruina pro centronix je tady http://www.piclist.com/techref/microchip/Centronix.htm ale zbytek asi musíš nastudovat sám Rolling Eyes
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky AOL Instant Messenger MSN Messenger
Jirka



Založen: Jul 01, 2005
Příspěvky: 2031
Bydliště: zbídačený kraj

PříspěvekZaslal: ne říjen 21 2007, 12:18    Předmět: Citovat

Tak jsem si k tomu stáhl PDFka z hw.cz a nějaký scripta + něco z www.piclist.com/techref/microchip/ .
Zkusím se tím prokousat, snad se v tom "neutopím".

eljaro: potřebuju vytisknout 5-místné číslo, data (formát), co chci poslat na tiskárnu, mám. Co hledám, je způsob jak to dostat z PICky do tiskárny přes LPT -> v podstatě rutinu.
citace:
Sorry to all you MPLAB users that it is in Parallax code.

Ouu, Parallax, ja něpanimaju.

Zatím díky za odpovědi.

_________________
*****
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
eljaro



Založen: Dec 03, 2004
Příspěvky: 441
Bydliště: Krnov

PříspěvekZaslal: po říjen 22 2007, 19:30    Předmět: Citovat

ten paralax nebude takové terno jen přepsat to jejich cje a podobné zkratky to nebude žádná hruza jinak je to zdroják joko každý jiný ta syntaxe je podobná jako u u atmelů tak to jen porovnat a aplikovat do mplabu
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky AOL Instant Messenger MSN Messenger
Josef Chroustal
Neregistrovaný





PříspěvekZaslal: po říjen 22 2007, 21:22    Předmět: Citovat

Já bych to řešil tak,že bych tu konkrétní tiskárnu připojil k PC.Naladil vše tak aby to tisklo tak jak chci.Programově odchytil data.Nasledně bych zjišťoval rychlosti a vše ostatní kolem toho.
Návrat nahoru
jankop



Založen: Apr 04, 2007
Příspěvky: 679

PříspěvekZaslal: út říjen 23 2007, 12:18    Předmět: Citovat

To by nebylo účelné. Komunikace s běžnou tiskárnou je velmi primitivní a je dokonale popsána. Odeslat pár znaků je triviální úloha. Pro základní komunikaci je třeba 9 výstupních bitů a 1-2 vstupní.
Odešlu na výstup jeden byte dat a potvrdím ho signálem STROBE.
A čekám, až mi tiskárna potvrdí přijetí dat signálem ACKNLQ (nebo BUSY). Pak odesílám další byte. Ostatní signály mohu ignorovat.
Napsat rutinu pro tohle je otázkou několika řádků kódu. A pokud nechci tisknout obrázky, tak daty budou přímo ASCII kódy číslic. Nevím co řešíte.
Mimochodem, spoustu jehličkových tiskáren lze při zapnutí kombinací tlačítek převést do módu, kdy tiskárna tiskne hexa číslice všech kódů, které dostává. Pro ladění to není k zahození.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
Jirka



Založen: Jul 01, 2005
Příspěvky: 2031
Bydliště: zbídačený kraj

PříspěvekZaslal: ne říjen 28 2007, 11:04    Předmět: Citovat

Jak tím listuju, tak by to mělo jít jednoduše, na http://lpt.hw.cz/ je to pěkně popsané. Až mi přijdou objednané součástky, tak se do toho pustím.
_________________
*****
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Jirka



Založen: Jul 01, 2005
Příspěvky: 2031
Bydliště: zbídačený kraj

PříspěvekZaslal: so listopad 24 2007, 0:39    Předmět: Citovat

Tak jsem se k tomu konečně dostal a funguje to.

zapojení:
kód:
; PIC16F628 a krystal 4,00MHz
;
;**************************************************************************
;*                                  PIC16F628                             *
;*                             --------\/--------                         *
;*                vstup nACK  -|RA2          RA1|-  výstup STROBE         *
;*               vstup ERROR  -|RA3          RA0|-  vstup BUSY            *
;*                  tlacitko  -|RA4ck       osc1|-  \ Krystal 4,00MHz     *
;*                       +5V  -|MCLR        osc2|-  /                     *
;*                        0V  -|Vss          Vdd|-  +5V                   *
;*                data bit 0  -|RB0/INT  PGD/RB7|- data bit 7             *
;*                data bit 1  -|RB1      PGC/RB6|- data bit 6             *
;*                data bit 2  -|RB2          RB5|- data bit 5             *
;*                data bit 3  -|RB3          RB4|- data bit 4             *
;*                             ------------------                         *
;*                                                                        *
;**************************************************************************

Hexa kód znaku, který chci tisknout. vždy připravím do W a potom zvolám tuto rutinu:
kód:
odesli  movwf   PORTB           ;přesuň data na port
        btfsc   PORTA,0         ;kontrola BUSY, jestli je v 0
        goto    $-1             ;není v 0 -> vrať se
        bcf     PORTA,1         ;je v 0, shoď STROBE
        nop
        nop
        nop
        nop
        nop
        bsf     PORTA,1         ;nahoď STROBE
        btfss   PORTA,2         ;kontrola nACK, jestli je v 1   
        goto    $-1             ;není v 1 -> vrať se
        return                  ;je v 1, návrat pro další znak


Jen mi pořád vrtá hlavou, jestli správně kontroluji signál nACK, tedy ve správný okamžik. Jestli ho nekontroluji ještě předtím, než přejde do nuly, ale když jsem to zkoušel jako posloupnost nejdřive 0, pak 1, tak to netisklo. Signál ERROR zatím nevyužívám. To dodělám, až zase budu mít čas si s tím "hrát".



cmdfig1.jpg
 Komentář:
komunikace v SPP módu - lpt.hw.cz

Stáhnout
 Soubor:  cmdfig1.jpg
 Velikost:  11.98 kB
 Staženo:  95 krát


_________________
*****
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Atlan



Založen: May 10, 2004
Příspěvky: 4507
Bydliště: Košice

PříspěvekZaslal: ne prosinec 30 2007, 21:38    Předmět: Citovat

skus definovat STROBE skor program bude prehladnejsi.... bcf strobe je lepsie ako bcf porta,1 s popisom
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Jirka



Založen: Jul 01, 2005
Příspěvky: 2031
Bydliště: zbídačený kraj

PříspěvekZaslal: ne prosinec 30 2007, 23:08    Předmět: Citovat

To jsou detaily, každý je zvyklý na jiný způsob zápisu.
Jinak už testuju tisk i přes RS-232.

_________________
*****
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra.
Nemůžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Nemůžete připojovat soubory k příspěvkům
Můžete stahovat a prohlížet přiložené soubory

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.15 sekund