OldComp.cz http://oldcomp.cz/ |
|
Paměťová klávesnice pro MK14 http://oldcomp.cz/viewtopic.php?f=89&t=5391 |
Stránka 10 z 13 |
Autor: | microlan [ 07.02.2018, 23:45 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Není tu někdo, kdo by uměl rychleji než já napsat program do windows, který by četl bajty ze souboru, rozdělil je na nible, ke každýmu doplnil 0 za to vložil 4D a skládal do novýho souboru? příklad: 7F > 07 0F 4D |
Autor: | jirka_holub [ 08.02.2018, 00:46 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
to Microlan: ta pametova klavesnice je super to Mikes21: drzim palce at se to povede. |
Autor: | hynek [ 08.02.2018, 09:28 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
microlan píše: Není tu někdo, kdo by uměl rychleji než já napsat program do windows, který by četl bajty ze souboru, rozdělil je na nible, ke každýmu doplnil 0 za to vložil 4D a skládal do novýho souboru? příklad: 7F > 07 0F 4D Zakladni command-line provedeni: Kód: #include <stdio.h>
int main (int argc, char *argv[]) { FILE *fi, *fo; if (argc < 3) { printf ("BIN to MK-14 key convertor\n"); printf ("Usage: %s file.bin file.key\n", argv[0]); return 0; } if ((fi = fopen (argv[1], "rb")) == NULL) { printf ("Can't open file %s!\n", argv[1]); return 1; } if ((fo = fopen (argv[2], "wb")) == NULL) { printf ("Can't create file %s!\n", argv[2]); fclose (fi); return 2; } printf ("Converting %s to %s...\n", argv[1], argv[2]); while (!feof (fi)) { int c = fgetc (fi); if (c < 0) break; fputc ((c >> 4) & 0x0F, fo); fputc (c & 0x0F, fo); fputc (0x4D, fo); } fclose (fo); fclose (fi); printf ("Done.\n"); return 0; } |
Autor: | Mikes21 [ 08.02.2018, 10:58 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Uau, super. Zkousel jsem to sestavit a vygenerovat soubor, slape na prvni dobrou. Dobra prace |
Autor: | microlan [ 08.02.2018, 14:56 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Chjo, dal jsem si předsevzetí, že místo čumění na OC budu programovat ... někdo to má hotové o půl deváté, já se s tím pinožím půl dne... Kód: ; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
include \masm32\include\masm32rt.inc ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« comment * ----------------------------------------------------- Build this template with "CONSOLE ASSEMBLE AND LINK" ----------------------------------------------------- * .code start: ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« call main inkey exit ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« main proc LOCAL hFile:DWORD LOCAL hFilew:DWORD LOCAL getbyte:DWORD LOCAL pocet:DWORD LOCAL delkaSouboru:DWORD LOCAL cloc:DWORD push esi push fopen("MK14.bin") pop eax mov hFile, eax invoke GetFileSize,hFile,NULL mov delkaSouboru, eax .if rv(exist,"file.m14") != 0 ; if file already exists test fdelete("file.m14"), eax ; delete it .endif mov hFilew, fcreate("file.m14") ; create the file mov ebx, 0 smycka: invoke ReadFile, hFile, ADDR getbyte, 1, ADDR pocet, 0 ; čte byty .if !eax print LastError$(), 13, 10 ; good to know if an error occurred .endif print str$(getbyte), " " ;vypíše načtené byte mov eax, getbyte ;mov dl,4 push eax shr eax, 4 ;vyrotuje o 4 dprava and eax, 0Fh ;vymaskuje nejnižší byte mov getbyte, eax mov cloc, fseek(hFilew,0,FILE_END) ; set the file pointer to the end invoke WriteFile, hFilew, ADDR getbyte, 1, ADDR pocet, 0 ;a uloží do souboru pop eax and eax, 0Fh ;vymaskuje nejnižší byte mov getbyte, eax mov cloc, fseek(hFilew,0,FILE_END) ; set the file pointer to the end invoke WriteFile, hFilew, ADDR getbyte, 1, ADDR pocet, 0 ;a uloží do souboru mov eax, 'M' ;dosadí "M" mov getbyte, eax mov cloc, fseek(hFilew,0,FILE_END) ; set the file pointer to the end invoke WriteFile, hFilew, ADDR getbyte, 1, ADDR pocet, 0 ;a uloží do souboru inc ebx cmp ebx, delkaSouboru jne smycka print " ",13,10,0 print str$(ebx), " bytes read", 13, 10 invoke CloseHandle,hFile invoke CloseHandle,hFilew pop esi ret main endp ; ««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««« end start |
Autor: | microlan [ 08.02.2018, 15:14 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Takže tady jsou známé programy pro MK14 v intelHEX: http://www.dougrice.plus.com/dev/seg_mk14.htm převést do bináru a výše uvedenými rutinami do sekvence kláves předřadit adresu začátku dat, např: 00 0F 00 00 54 ; 54 je znak T jako "Term" čímž se ukončí vkládání adresy na konec připojitt 41 ;41 je znak A jako "Abort" ukončení zadávání dat do paměti a za to startovací adresu, např: 00 0F 20 00 mohlo by následovat ještě "G" čímž by se program sám spustil, ale je lepší ho následně odpálit ručně, pro případnou editaci kódu. |
Autor: | microlan [ 12.02.2018, 16:13 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Mikeš píše v jiném vlákně: Citace: Jasne, pak jsem si to uvedomil taky, ze to pouzivas i pro zaznam stisknutych klavesovych sekvenci. Jak to mas vymyslene s opravou, kdyz se preklepnes nebo chces neco opravit? Schema jsem nasel, ale hledal jsem jeste sw do GALu a do CPU. Das to taky k dispozici? Bez toho je ten popis 'nepopis' Je tam i popis toho galu. Kdyby se vlákna nezasírala (tím rozhodně nemyslím Mikeše) tak by se tam daleko lépe orientovalo. Obsah GALu tam samozřejmě je, ale asi ne poslední verze. Důležité je, že hodně GALů vlastní Danhard a myslím, že je rád prodá už naprogramoané, jak už jsm jednou psal. SW do procesoru taky pošlu, jak bude chvilka. //Kdyby tak byla možnost, to vlákno promazat od OT. |
Autor: | microlan [ 12.02.2018, 22:39 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Zpráva od danharda, naprogramovaný GAL20V8 za světovou cenu 30 Kč. Kdo má zájem, ozvěte se u mně, objednám to v Jesenici hromadně a rozešlu s DPS, případně i s naprogramovaným 89S52, pokud to někdo neumí. Vzhledem k neustálému nabalování vlákna, se začínají důležité informace ztrácet v balastu, umístil jsem technické informace na jedno místo: Paměťová klávesnice pro MK14 |
Autor: | microlan [ 13.02.2018, 10:22 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Chybička se vloudila, teď při hledání dodavatele EEPROM jsem zjistil, že je ten odvod určen pro 3,3V napájení, co na to zkušení vývojáři, jak dlouho to bude takhle fungovat? |
Autor: | microlan [ 14.02.2018, 10:33 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Důležitá informace. Vzhledem k výše uvedené chybě, která vznikla mojí neznalostí, se omlouvám všem zájemcům o tuto klávesnici. Bohužel není na trhu žádná alternativa pro napájení 5V, kterou by se dala paměť klávesnice nahradit. Jedinou čistou cestou by bylo vytvořit 3,3V napájecí hladinu a do SPI obvodů zařadit "level shift" obvody, což sice není nic složitého, ale vzhledem ke skutečnosti, že se mě nechce utrácet další peníze za nový film na DPS, tak to nechám tak, jak to je. Zatím to funguje a vzhledem k faktu, že to běží na 125 kHz s odběrem při čtení pod 3 mA (obvod umí 100 MHz s odběrem cca 25 mA) tak se nebojím výkonového přetížení obvodu. jediné co mu hrozí je asi průraz některého gejtu. To se nechám překvapit a beru celou situaci jako experiment s napěťovým přetížením FLASH pamětí. Další řešení je udělat do soklu malou desku s diodovým omezením napájení a s příslušnými úpravami úrovní. 3. možnost, je že někdo navrhne a nechá udělat nové desky, já už se tomu věnovat nechci. //navíc, jediné co hrozí je asi chybovost obvodu po určitém čase, takže mít po ruce nový kus se zálohou a jede se dál. |
Autor: | danhard [ 14.02.2018, 11:32 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Bych to nehrotil, když to funguje a brouk je studenej Můžeš zkusit škrábnout napájení před blokovacím kondem a zařadit dvojitou smd diodu, třeba bav99. S úrovněma nemusíš dělat nic, ty k sobě pasujou. |
Autor: | microlan [ 14.02.2018, 11:53 ] | ||
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 | ||
Dík, že jsi mně to potvrdil, hned se mě bude líp spát O mě nejde, ale chce to pár lidí realizovat, tak abych jim nezpůsobil nějakou újmu. Je to fakt studený, tady je důkaz. Foceno při čtení. //kdo nezná rozložení součástek, tak A25L080 je pod jádrem procesoru, mírně vlevo.
|
Autor: | danhard [ 14.02.2018, 12:05 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Na 5V napájení jenom menší 23LCV1024-I/P Ale ani 5V, ani DIP8 pouzdro už není v módě. |
Autor: | microlan [ 14.02.2018, 12:47 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Bych tu pitomou módu... Ještě uvažuju, že stejně 99% programování (zapisování) bude z PC, čili při standardních podmínkách napájení. Tam si myslím že je největší problém, při tom zápisu a mazání. |
Autor: | danhard [ 15.02.2018, 11:13 ] |
Předmět příspěvku: | Re: Paměťová klávesnice pro MK14 |
Taky by šla udělat redukce na smd provedení a ta by na sobě měla možnost bav99 a 100n v napájení. |
Stránka 10 z 13 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |