cirip Postat Iunie 18, 2005 Partajează Postat Iunie 18, 2005 Ai doua variante:1)Testezi bitul de overflow al timerului. Cand il vezi ca e setat, trimiti bitul. Metoda iroseste o gramada de timp al procului.2)Configurezi sa primesti intrerupere cand timerul se da peste cap (overflow). Procul sare la intrerupere si trimite bitul. Intreruperile iti vor da cadenta de trimitere a bitului.Cirip Link spre comentariu
pavcostel Postat Iunie 18, 2005 Partajează Postat Iunie 18, 2005 Salut! Incearca la http://www.willem.org! Este un forum cu vechime in programari, cu soft, adaptoare, programator, free sau de cumparat. Contine si ceva linkuri spre alte programatoare mai simple. Oricum lista de discutii este f. cuprinzatoare. Cu stima, Costel Link spre comentariu
Vizitator elvi-ionut Postat Iunie 18, 2005 Partajează Postat Iunie 18, 2005 Multumesc pt link.Cat despre variante cred ca doar prima ramane, pentru ca din cate am citit rfPIC12C509AF nu are implementat sistem de intreruperi. Link spre comentariu
cirip Postat Iunie 19, 2005 Partajează Postat Iunie 19, 2005 Am ramas mac! Habar n-aveam si nu mi-am inchipuit ca mai face cineva proc fara intreruperi. Ai dreptate, nu are intreruperi. Hm! Da' bag seama ca nici bit de overflow n-are (sau nu-l vad eu). Cred ca tre' sa faci intarziere ciobaneasca prin numararea oilor sau a ciclilor de ceas, ce ai la indemana. In timpul asta nu mai faci nimic altceva. Chiar sunt curios cum folosesti timerul.Cirip Link spre comentariu
Vizitator elvi-ionut Postat Iunie 19, 2005 Partajează Postat Iunie 19, 2005 As putea folosi secventa ? ........... ; initializareloop ...... ; citire de la porturile de intrare..............................btfss TMR0, 1goto loop............; trimit bitbcf TMR0, 1 Si cum as putea sa codez 4 intrari in format ASCI (de ex 0000 -> 30h) pe care apoi sa-l trimit la portul de iesire? Link spre comentariu
cirip Postat Iunie 20, 2005 Partajează Postat Iunie 20, 2005 Nu prea cred. Asa cum ai scris testezi bitul 1 (numaratoarea incepe de la 0) a lui TMR0. Bitul 1 clampane de 128 de ori intr-un ciclu complet al lui TMR0. Eu as testa TMR0 daca e zero. Asta se face usor cu TSTF TMR0, apoi faci B(N)Z ... unde vrei. Ce parere ai?Cirip Link spre comentariu
Vizitator elvi-ionut Postat Iunie 20, 2005 Partajează Postat Iunie 20, 2005 Ai dreptateSi scuze, dar ce inseamna B (N) Z? :oops: Link spre comentariu
cirip Postat Iunie 20, 2005 Partajează Postat Iunie 20, 2005 BZ=Branch if ZeroBNZ=Branch if Non ZeroO folosesti pe aia care iti convine in context.Nu le vei gasi in setul de instructiuni din foaia de catalog. Uita-te in doc asamblorului la sectiunea "12-Bit/14-Bit Instruction Width Pseudo-Instructions "Cirip 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