Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Nešto oko in-out kod PIC
Hvala ocigledno da nisam dobro proucio datasheet Big Grin .

Mene je konkretno interesovao INT pin sve do 0.8v na tom ulazu MCU ce detektovati kao nulu tek preko te vrednosti ce se desiti interrupt jer ce se detektovati uzlazna ivica.
Reply
(12-29-2017, 04:10 PM)Milan94 Wrote: Hvala ocigledno da nisam dobro proucio datasheet Big Grin .

Mene je konkretno interesovao INT pin sve do 0.8v na tom ulazu MCU ce detektovati kao nulu tek preko te vrednosti ce se desiti interrupt jer ce se detektovati uzlazna ivica.

Nije bas tako. Pragovi zavise od napona napajanja. Npr. ukoliko je napon napajanja u opsegu od 4.5V - 5.5V, gornji prag za logicku nulu je od 0.8V do nule. Za logicku jedinicu pri datom opsegu napona napajanja, minimalna vrednost je 2V. Sve izmedju 0.8V do 2V je nedefinisano stanje i ne zna se kako da li ce MCU to da protumaci kao "0" ili "1".
I
Reply
Vojin je napomenuo jednu veoma bitnu stvar!

Ulaze koji nemaju šmit triger nije baš najpovoljnije koristiti za signale "kolebljive prirode".
U takve spadaju recimo neka punjenja ili pražnjenja RC članova na input pinu u svrhu tajmovanja, kapacitativne tastature ili slično... Kada je MCU brz i ta RC vremena relativno dugačka, onda se u opsegu margine šuma (između garantovanih pragova, shvaćenih kao sigurno L ili sigurno H stanje), može ubrizgati buka od SMPS napajanja ili mrežnih 50Hz i napraviti rafalni signal umesto jednog konkretnog. Kada se obični TTL inputi koriste za takve stvari onda je potreban i kakav-takav softverski filter...

U te svrhe je daleko bolje koristiti inpute sa šmit triger (koje taj PIC ima) gde su pragovi tačni, imaju histerezis i ne dovode do pogrešnih okidanja.

Pozdrav
Reply
(12-29-2017, 04:10 PM)Milan94 Wrote: Hvala ocigledno da nisam dobro proucio datasheet Big Grin .

Mene je konkretno interesovao INT pin sve do 0.8v na tom ulazu MCU ce detektovati kao nulu tek preko te vrednosti ce se desiti interrupt jer ce se detektovati uzlazna ivica.

Ja situaciju vidim ovako:

Kada si konfingurisao INT pin kao interupt pin, njemu je ulazna logika automatski ST ili smit triger.
Naponske nivoe za Smit triger input kolo, po tabeli u prilogu, ja vidim na sledeci nacin:

Ako ti je napajanje recimo 5V i ulaz se nalazi na 0V, logicka nula ce biti na portu (ulaznom baferu).
Nadalje svi naponi od nula volti pa do 0.8xVdd ce se u input buferu videti kao logicka nula, tek kad napon preturi preko 0.8x5V=4V dolazi do okidanja na logicku jedinicu.

I ovo 0.8X je minimalna vrednost, a moze biti i veca. (prag okidanja ka logickoj jedinici)

Slicno tome, kada je u input buferu logicka jedinica svi naponi izmedju Vdd i 0.2xVdd ce se tretirati kao logicka 1, tek kad napon padne ispod 0.2x5V=1V dolazi do okidanja na logicku nulu.

Ovo 0.2x je specificirana maksimalna vrednost, ali moze biti i manja. (prag okidanja ka logickoj nuli)

Kako ja kontam situaciju, na ovaj nacin sa ST dobijamo robustnost na sumove i smetnje...... tako da sve sto landara izmedju 1v i 4v nece promeniti prethodno stanje. 


Ako sam omano, ispravljajte me. 


U svakom slucaju, lako se da proveriti potenciometrom na INT pinu.


Attached Files Thumbnail(s)
12-31-2017, 01:33 AM

Reply
@Vlajko, u potpunosti si u pravu. To je princip rada Smit-Trigera. On ima histerezis i zahvaljujuci tom histerezisu, mozemo reci da imamo vecu imunist na smetnje. Ono sto je Macola pricao je da kada se koristi obican TTL ulaz, onda je preporucljivo da se ispred njega stavi ST kolo. Npr. 74HC14. Jos je jedna preporuka, da se na ulaz ST-a postavi RC kolo kako bi se filtrirale VF smetnje iz okoline. Na ovaj nacin je dobijen bas robustan ulaz. Moze can i TVS zastita da se doda i to je onda pravilno isprojektovano kolo za sve zastite.
Reply
Zavisi sve kako se osmisli, zavisi koji je ulazni naponski nivo i zavisi koja se brzina ulaznog signala ocekuje/trazi.
Na osnovu toga se prilagodjava ulazni stepen.

Sto se veca brzina ulaza trazi to su vece komplikacije i mora se dobro uzeti u obzir sve kompenente koje se tu dodaju, posebno TVS jer imaju poveci parazitivni kapacitet koje mogu prilicno da uspore tranzicije, za takve slucajeve se ipak ide na Schotky diode koje klampuju ulazni napon na VCC a sam VCC je klampovan preko TVS (3V3 ili 5V) ka GND.

Za spore ulaze moze i preporucljivo je stavljati R/C filtere cije su FC recimo 2-3x iznad granicne ucestanosti koja se ocekuje na ulazu. Za ovako "spore" ulaze moze i da se stavi TVS dioda za zastitu.
Reply
(12-31-2017, 01:57 AM)Vlajko Wrote: Ja situaciju vidim ovako:

Kada si konfingurisao INT pin kao interupt pin, njemu je ulazna logika automatski ST ili smit triger.
Naponske nivoe za Smit triger input kolo, po tabeli u prilogu, ja vidim na sledeci nacin: ...

Vlajko,

Sasvim dobro si zapazio tu osobinu kod PIC16F1938.  

Uobičajreno "nasleđe" kod skoro svih multinamenskih PIC kontrolera su predispozicije portova i namene pinova na njima.
Zadržavaju se osobine koje su pojedini pinovi i portovi imali na starijim PIC i samo se eventualno nadograđuju naprednije i nove mogućnosti preko tih starih.

Čitav B port je kod najveće većine PIC kontrolera zadužen za eksterni interapt, ali nisu svi pinovi tog porta sa šmit triger baferom.

Samo RB0 ima šmit triger u ulozi običnog digitalnog ulaza kao eksternog interrupta.
Ostali iz B porta, koji imaju šmit bafere, imaju ih samo kada su priključeni na specijalizovane module poput : CCP2, TG1, programiranje i debugovanje.


.pdf   40001574C.pdf (Size: 274,18 KB / Downloads: 7)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)