Sari la conținut
ELFORUM - Forumul electronistilor

mikro C vs basic


Vizitator Chip

Postări Recomandate

Vizitator Chip

pana acu am folosit PIC Simulator IDE cu compilator basic ca sa joc cu leduri si picuri, insa acum am trecut la mikro C si am o problema.in Pic simulator PORTA.i imi accesa bitul i din portul a, sau compilatorul stia ca RB5 este bitul 5 din portul B.Acest lucru nu se mai intampla insa in mikro C. Cum pot sa citesc doar un bit dintr-un port? sau sa il modific daca e de iesire? PORTA.i nu merge, si nici notatia RA1 se pare ca o cunoaste.

Link spre comentariu
  • Răspunsuri 3
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • cirip

    2

Zile populare

Top autori în acest subiect

Cum pot sa citesc doar un bit dintr-un port? sau sa il modific daca e de iesire?

Nu cunosc detalii ale limbajului si as fi surprins sa nu existe o modalitate de acces pe bit, dar daca totusi modalitatea asta nu exista, poti face asa: Citesti portul intreg (8 biti) intr-o locatie temporara, apoi faci AND cu o masca (o valoare pe 8 biti). Valoarea mastii va contine 1 pe pozitia bitului pe care vrei sa il testezi. Daca rezultatul ANDului este 0, atunci bitul testat a fost zero. Daca rezultatul nu este zero, atunci bitul a fost 1.Ca sa fortezi o anumita valoare pe un bit se poate face asa: Citesti portul intr-o locatie temporara. Generezi o masca in functie de ce vrei sa faci. Daca vrei sa setezi un bit al portului, atunci pui 1 pe pozitia bitului ala si zero in rest, apoi faci OR cu locatia temporara si o scrii la loc in port. Daca vrei sa scrii 0, faci 0 pe pozitia bitului pe care vrei sa-l faci 0 si 1 in rest. Faci AND cu locatia temporara si apoi scrii la loc portul.Poate ca pare complicat, dar in realitate e f simplu. Justificarea secventei operatiilor rezulta din tabelele de adevar ale functiilor AND si OR.Cirip
Link spre comentariu

M-ai facut sa ma uit in manual. M-as fi si mirat ca limbajul sa nu permita accesul individual al bitilor. La pagina 35 din manual ai sectiunea "Accessing Individual Bits". Se foloseste numele variabilei (portul in cazu tau), selectorul de membru (.), urmat de identificatorul F0...F7Cirip

Link spre comentariu

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 cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări