mars01 Postat Iunie 25, 2015 Partajează Postat Iunie 25, 2015 (editat) TRUE !!! Asa imi trebuie cand ma grabesc si lucrez printre picaturi (sunt la servici). Merci Liviu, daca tot fac un gest, macar sa fac ceva corect. Atasat programul compilat la 4MHz, frecventa oscilatorului intern. Restul ramane la fel. LE: sunt curios daca o sa mearga. M-am uitat putin prin el si in functia de initializare a LCD-ului are un delay initial cam mic, 20ms. In datasheet-ul la HD44780 este trecut un delay de 40ms. LLE: scuze, delay-ul este bun pentru cand se lucreaza in logica TTL (5V). Stiam eu ceva, dar cele 40ms delay sunt necesare cand se lucreaza in logica 3.3V ceea ce nu este cazul aici. LLLE: Si varianta in care foloseste un cristal de cuartz cu frecventa 20MHz. Morse_generator_INTOSC_4MHz.zip Morse_generator_HS(cuartz)_20MHz.zip Editat Iunie 25, 2015 de mars01 Link spre comentariu
yo7but Postat Iunie 25, 2015 Partajează Postat Iunie 25, 2015 Buna seara, Multumesc pentru ajutor, intradevar are cuart extern de 20 MHz. As mai avea o rugaminte, daca se poate, as mai dori un fisier in care sa fie selectata teastatura "QWERTY". Atasez comentariul de pe sit-ul respectiv cu modul de selectare : "The firmware is currently written for a PS/2 keyboard with an AZERTY layout, but you can easily convert it to a QWERTY layout. Each layout has its own array with keyboard data: const char keyCode[]. You need to comment/delete the version you don't need" Eu, daca nu ma pricep la scris programe, am dat copy paste si l-am salvat cu extensia ASM. Miine ma apuc sa fac montajul electronic si o sa va anunt daca si cum functioneaza. Este un generator de semnale morse semnale generate de la o tastatura PS2 si un LCD 2x16 pentru vizualizare. Inca odata mii de multumiri. Link spre comentariu
mars01 Postat Iunie 25, 2015 Partajează Postat Iunie 25, 2015 (editat) Buna seara, In fisierul atasat gasiti si fisierul sursa in care am comentat vectorul cu caracterele tastatura AZERTY si am decomentat pe cel corespunzator tastaturii QWERTY, cat si fisierul compilat pentru PIC16F628A, cu oscilator cu cuartz 20MHz. Mult succes! Marius Morse_code_generator_HS_20MHz_QWERTY.zip Editat Iunie 25, 2015 de mars01 Link spre comentariu
yo7but Postat Iunie 26, 2015 Partajează Postat Iunie 26, 2015 Buna dimineata, Multumesc @mars01 sper ca miine sa-l pot testa. Am sa revin cu detalii. Link spre comentariu
yo7but Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 Azi am testat montajul si functioneaza perfect. Inca odata mii de multumiri. Link spre comentariu
mars01 Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 (editat) Cu placere, dar multumirile trebuie sa mearga la cel care a conceput totul. Eu nu am facut mare lucru, doar am creat un proiect, cateva mici modificari si am compilat. Felicitari pentru montaj! Cele bune. Editat Iunie 28, 2015 de mars01 Link spre comentariu
yo7but Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 Salut, Eu am multumit la toata lumea cu ajutorul carora am realizat acesta aplicatie. Cum spuneam nu ma pricep sa scriu programe dar am observat ceva. Inainte de a posta pe forum am trimis un e-mail autorului (din Belgia) solicitindu-i cele doua fisier in hex (pt. azerty si qwerty". azi am primit cele doua fisiere cu care am programat mc si din pacate nu functioneaza niciunul. Ce am observat : - cele doua fisiere au lungimi diferite azerty are 5036 iar qwerty are 6664 ; - programul de scris este ICPROG. in momentul incarcarii fisierului in bufer apar bifate urmatoarele setari : oscilator : RC CLKOUT iar bifate WDT, MCLR, BODEN si LVP. Intrebarea mea este daca-i normal acest lucru ? Multumesc. Link spre comentariu
mars01 Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 (editat) Salut, Nu am folosit ICPROG dar sursele de clock pt PIC16F628A sunt: [*] RC oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, Resistor and Capacitor on RA7/OSC1/CLKIN [*]RC oscillator: I/O function on RA6/OSC2/CLKOUT pin, Resistor and Capacitor on RA7/OSC1/CLKIN [*]INTOSC oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN [*]INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN [*]EC: I/O function on RA6/OSC2/CLKOUT pin, CLKIN on RA7/OSC1/CLKIN [*]HS oscillator: High-speed crystal/resonator on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN [*]XT oscillator: Crystal/resonator on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN [*]LP oscillator: Low-power crystal on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN Daca apare selectat RC Clockout inseamna ca a fost setat sa foloseasca oscilatorul RC intern (cum l-am compilat si eu la inceput) iar semnalul de clock (divizat cu 4) este prezent pe pinul RA6. WDT bifat inseamna ca a fost activat timerul pentru WatchDog (ceea ce inseamna ca daca in soft nu se face resetarea acestui timer in timp util, procesorul se reseteaza la nesfarsit fara sa execute nimic concret, poate doar o parte din program). MCLR bifat inseamna ca a ales ca pinul RA5 sa fie fie pin dedicat pentru RESET. BODEN - a activat brown out detector; daca procesorul detecteaza ca tensiunea de alimentare este sub un anume prag, face automat reset LVP - inseamna ca programarea se face in low voltage. Fara sa intru in detalii, nu este ceva de dorit. Toate aceste setari nu sunt necesare si probabil ca autorul nu a fost atent cand a efectuat compilarea. Fara modificari in surse, fisierele oferite de autor sunt intr-adevar inutilizabile (din cauza WDT-ului, restul nu sunt chestii prea grave). Cele bune, Marius Editat Iunie 28, 2015 de mars01 Link spre comentariu
Liviu M Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 (editat) Eu nu vad nicaieri in cod partea de setare a bitilor de configurare.Din cate tin eu minte, la picc era o declaratie de genul __CONFIG(WDT_OFF & MCLR & LVP_OFF...). Editat Iunie 28, 2015 de Liviu M Link spre comentariu
mars01 Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 (editat) Pentru compilatoarele Hi Tech asa era, si intr-adevar lipsea. La compilatoarele Microchip XC se foloseste #pragma config ...., directiva __CONFIG este considerata "deprecated", si am adaugat eu configurarile necesare. Se poate vedea in fisierul .c din arhivele atasate pana acum. Editat Iunie 28, 2015 de mars01 Link spre comentariu
Liviu M Postat Iunie 28, 2015 Partajează Postat Iunie 28, 2015 Eu stiu ce zici tu, comentam doar referitor la "rautatea" autorului. Care n-a fost rau, pur si simplu n-a pus nici un fel de configuratie in surse (presupun ca ce vede yo7but sunt setarile default ale softului lui de programare). Probabil ca autorul face si el setarile in softul de programare. Link spre comentariu
yo7but Postat Iunie 29, 2015 Partajează Postat Iunie 29, 2015 Acele setari apar in momentul incarcarii unuia din fisiere iar mc are cuart extern de 20 MHz. Atasez link-ul de unde am realizat montajul : http://www.bvsystems.be/morseSoftware.php Link spre comentariu
yo5qax Postat Iunie 30, 2015 Partajează Postat Iunie 30, 2015 Va salut Am facut si eu acest montaj (multumesc lui @mars01 pentru translatarea in hex a acestui program) si intradevar functioneaza dar la o viteza prea mare pentru un incepator in ale telegrafiei autorul spune in partea a treia la finalul teoriei ca viteza de transmitere se poate controla cu ajutorul tastelor F1.......F12 dar nu se intampla nimic apasand aceste taste cum trebuie procedat ? multumesc pentru un eventual raspuns. Link spre comentariu
mars01 Postat Iunie 30, 2015 Partajează Postat Iunie 30, 2015 (editat) Buna ziua, Din pacate, in codul pe care l-am compilat, in functia processCode() care proceseaza tastatura sunt tratate ca si caractere speciale: Backspace, Enter si Escape. Nici vorba de tastele F* Poate ca este vorba de o alta versiune a codului. LE: Acum am citit pe pagina autorului: Possible ImprovementsMy firmware certainly needs some extra optimisations. Here are some things that still needs to be done: [*]Add an option to change the speed of the code. The speed could be selected by pressing one of the F1 ... F12 buttons Asadar vorbim de "posibile inbunatatiri", deci aceasta optiune nu a fost implementata la acel moment. LLE: nu sunt familiar cu subiectul. ce inseamna ca viteza este prea mare? Linia si punctul dureaza prea putin sau intervalul de timp dintre ele este prea scurt? Editat Iunie 30, 2015 de mars01 Link spre comentariu
yo5qax Postat Iunie 30, 2015 Partajează Postat Iunie 30, 2015 @mars01 multumesc pentru promtitudine,aveti drptate autorul spune "inbunatatiri posibile" Possible ImprovementsMy firmware certainly needs some extra optimisations. Here are some things that still needs to be done: [*]Add an option to change the speed of the code. The speed could be selected by pressing one of the F1 ... F12 buttons. [*]The parity of the incoming keyboard data is ignored. This means that incorrect data won't be detected. [*]The software counts the number of received bits. Every eleventh bit, an incoming keycode is composed. The PIC could 'miss' an incoming bit. This would cause the PIC to mix parts of different keycodes into a single keycode. A possible solution is to use a timer that resets the bitcounter after a certain time-out. o zi buna! Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum