Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   1209 / 1320
(#) Attila86 válasza Zsolt2 hozzászólására (») Feb 3, 2016 /
 
Megnéztem debuggerben a TMR5 és az OC1TMR értéke mindig egyenlő, egyszerre futnak.

A kód amit írtál, az PWM módban működteti az OC modult. Ez nekem sajnos nem jó, mindenképpen kettős komparálású módban kell mennie. Az oka ennek az, hogy a timer5 PR5 regiszterével a frekvenciát, az OC1R és az OC1RS különbségével a kitöltési tényezőt, az OC1R és az OC1RS-nek a nulla és a PR5 értéke közt elfoglalt "helyével" pedig fázistolást állítok.
(#) Attila86 válasza Attila86 hozzászólására (») Feb 3, 2016 / 1
 
Köszönöm mindannyitoknak a segítséget, de nem volt semmi hiba a kódban. Csak én voltam a hülye. Rossz lábra akasztottam rá a szkópot.
(#) ktamas66 válasza Attila86 hozzászólására (») Feb 3, 2016 /
 
Én elsőre biztosan kerülném az OC1R=0 beállítást, mert az adatlapban ez különleges esetként van kezelve (kimaradhat az első impulzus ).
(#) Attila86 válasza ktamas66 hozzászólására (») Feb 3, 2016 /
 
Igen ezt én is olvastam, de nekem ebben az áramkörben nem probléma ha kihagy egy impulzust.
(#) messer hozzászólása Feb 3, 2016 /
 
Sziasztok!

Egy impulzus szünet kód modulált jelsorozatból szeretnék információt kinyerni 16F877-el Úgy néz kí 75ms-ként jönnek a bájtok egy sorozat az 5bájtot tartalmaz majd 75ms szünet. Egy magas szint úgy néz ki hogy 36Khz-el van modulálva tehát 500us-ig 36Khz majd 500us szünet ez a "0" 500us-ig 36khz majd 1000us szünet ez az "1". Tehát a szünetek hordozzák az információt. Szerintetek melyik perifériát érdemes használni 16f877-en a capture compare modult? Van javaslatotok hogyan építsem fel a dekódolást?
A hozzászólás módosítva: Feb 3, 2016
(#) Hp41C válasza messer hozzászólására (») Feb 3, 2016 /
 
Egy TSOPxx36 demodulálná a jelet. Egy timer megszakítással lehetne mintavételezni a demodulált jelet.
(#) messer hozzászólása Feb 3, 2016 /
 
ki szeretném hagyni az infra közeget közvetlen szeretnék az adó kontroller infra led meghajtó kimenetére csatlakozni. valami jó szellemes megoldás kellene. Azt már kigondoltam, hogy a 75ms-os szünetek alkalmasak a szinkronizálásra mindig megvárok egy szünetet így megkapom a szünet utáni első bájt első bitjét. csak szeretném használni a pic valamelyik beépített modulját.
(#) pajti2 válasza messer hozzászólására (») Feb 4, 2016 / 1
 
Szia!

Kettő timert érdemes használnod. Most nem néztem meg a pic adatlapját, de biztos van timer, aminek belső órajel helyett kívülről adhatsz impulzust. Oda beküldöd azt a jelet, ahogy van. Kelleni fog egy másik timer is, hogy az időt mérni tudd valamivel (pld 250 uSec időszeletenként le tudj futtatni egy állapotgép függvényt). Ha a timer "moccant" az előző állapothoz képest, akkor tudod, hogy az aktuális időszeletben voltak impulzusok, valahol érintőlegesen még az 500 uSec-nyi impulzus csoport idejét "látja" a pic-ed. Ha nem volt változás az előző timer értékhez képest, akkor már a szünetet érzékeled, és annak mérni kell az idejét. Egyszer csak újra változott a számlálód, akkor már véget ért a szünet. Összeraksz egy állapotgépet, hány impulzus ütem után hány szünet ütemet érzékeltél, és dobálod a biteket valami kimeneti streamre szinkronnal, vagy pld uarton, vagy tovább belső feldolgozásra, amire éppen szükséged van. Jó szórakozást
(#) messer hozzászólása Feb 5, 2016 /
 
Köszönöm szépen ötletes megküzdök vele
(#) pajti2 hozzászólása Feb 12, 2016 /
 
Szükségem lenne egy usb-ről vezérelhető spi portra, illetve nagy halom vezérelhető logikai jelre - amiből spi-t gyárthatok. Nem kell sebesség, akár 1 bit / sec is bőven elég, de az spi protokollt teljesíteni kell, és jó lenne olyan cucc, ami mechanikailag egyben van, hogy mobil környezetben is használni lehessen. Pld amit dugaszpanelben összepakolok usb csati meg pic és valami tüskesor, működni az is tud, de nem a leghandybb mechanikailag. Azon filozom, hogy valamikor használtam a pickit 2-t logikai teszternek (vagy van pickit 3-am is, ha az ledokumentáltabb), de az az mplab saját felületén keresztül volt, most pedig nem a szokványos célra kell (mint pld flasht programozni), hanem "háziszabványos" eszközzel kellene kommunikálni. Elvileg alkalmas lehet a feladatra, gyakorlatilag pedig semmi doksim nincsen róla, hogyan tudom usb-n keresztül vezérelni a jeleit, illetve lekérdezni a bemeneti bit aktuális értékét. Tud olyan doksiról valaki?
(#) cross51 válasza pajti2 hozzászólására (») Feb 12, 2016 /
 
Vagy az MCP2210-es USB to SPI protocol konverter, de itt problémát okozhat a driver.

Vagy MLA, itt van USB HID vagy CDC program de ezt tapasztalatból tudom, hogy "undorítóan" néz ki.

Vagy nem SPI-t használsz hanem UART-ot és bármelyik ebay-es USB to UART protocol konverter.
Vagy a PIC-ador-ban használt 18f14k50-es mint USB to UART konverter.

De ez az utóbbi két lehetőség mind UART-os.
(#) ktamas66 válasza pajti2 hozzászólására (») Feb 12, 2016 /
 
Esetleg érdemes lehet megnézni a PICkit Serial Analyzer-t.
(#) Bakman válasza pajti2 hozzászólására (») Feb 12, 2016 /
 
USB -> FTDI 232 modul -> kontroller -> SPI és egyéb kimenetek, ha kellenek. Kb. ez a legegyszerűbb szerintem.
(#) Hp41C válasza cross51 hozzászólására (») Feb 12, 2016 /
 
Egy 16F1454, 16F1455, 16F1459 (még quartz sem kell hozzá), 18F14K50, 18F2550 stb. és egy kis program megoldja.
(#) cross51 válasza Hp41C hozzászólására (») Feb 12, 2016 /
 
A 16f1455-el tisztában vagyok mivel ezt használtam, nem is az áramköri része az undorító, hanem ha valaki szeretné megérteni azt az USB-s stack-et amit a Microchip volt kedves megírni. Na az szerintem borzasztó, mert még az bit ellenőrzéseket is rutinoknak definiálják(#define), nekem nagyon össze vissza volt, de ennek lehet így kell kinézzen.

Jó pár hónapomba telt, hogy a Microchipes stack-ből megírjam a sajátomat.
(#) pajti2 hozzászólása Feb 13, 2016 /
 
Köszönöm a válaszokat. Amennyire leszűrni tudtam belőle, ti sem ismertek előre dobozolt cuccokat a témában, szóval a legjobb lehetőségem a pickit-ről programozói doksit szerezni.

Egyébként a mechanikai kiszerelés a legnagyobb problémám, mert halom rendetlenség közepette is kezelhetőnek kell maradnia (kólatócsa az asztalon, potyog valami fémreszelék, párszor leesik a földre, szerintem ti is láttatok már ilyet ). Ezért lenne jobb egy pickit 2 / 3-at működésre bírni (ami egyébként már megvan, és be van dobozolva normálisra), mint másik áramkört építeni. Ha építeni kellene, amúgy nulla problémám lenne bármelyik usbképes picet felhasználni, és c# alatt ott az usb generic driverhez legyártott komponensem - nem kell még cdc sem, a generic bőven elég, és az a support normális még a 16f-ekhez is. Viszont a bedobozolással bajban lennék.
(#) pajti2 válasza ktamas66 hozzászólására (») Feb 13, 2016 /
 
Igen, én is arra gondoltam, viszont az lenne a fontos, hogy ha nem az mplab-ot használom, hanem előkapom a .net / c#-t, le tudjak programozni egy olyat. Na nem a gui-t, hanem az adatfogalmat. Ahhoz kellene nekem egy doksi a pickitről, hogyan kommunikál az usb-n keresztül.
(#) Hp41C válasza cross51 hozzászólására (») Feb 13, 2016 /
 
A 16F1454 -en a CDC nekem néhány nap alatt működőképes lett, azóta is megy rajta a MODBUS (paritás kezeléssel)... Bővebben: Link
(#) cross51 válasza Hp41C hozzászólására (») Feb 13, 2016 /
 
Használni nem nehéz, (véleményem szerint) én nehezen megérthetőnek tartom.
(#) Attila86 hozzászólása Feb 14, 2016 /
 
Van tapasztalatotok a PIC-ek A/D-jának referenciájának tűrését illetően?
dsPIC33E sorozatú példánnyal szeretnék mérni analóg jeleket és a referenciát gondoltam hogy egy mezei TL431 adná ami ugye 2,5V-os. A PIC adatlapja azt írja, hogy az A/D referenciájának a minimuma 2,5V, a maximuma pedig 3,6V. A TL431 adatlapja szerint pedig egészen pontosan 2,495V+-1% a névleges feszültsége amit ő ad, 50ppm/°C-kal. Szerintetek megelégszik vele az A/D?
(#) pajti2 válasza Attila86 hozzászólására (») Feb 14, 2016 /
 
-Ha nagyon preciziós elvárások nincsenek, és gondolom, nincsenek, nyuszit nem lőnek azzal a 2.5v-al, jó lesz a 2.495 is.

-Azt a tl431-et is át lehet szabályozni másmilyen feszültségre külső ellenállásokkal, van rá példa is a cucc adatlapján.

-Bármi más stabilizátort is használhatsz, ha éppen nincs kedved ellenállásokkal vacakolni, mondjuk egy 3.3v-os stabot.

-Én ugyan jó régen nem mélyedtem bele a/d problémákba, de mintha az a referencia fesz csak a kiegyenlítő hálózat táplálására kellene, ergo akár utólag szoftveresen is kompenzálhatsz a mérési kimeneten. Talán lesz egy kicsike torzítás, de nem a világ vége.

Válassz kedved szerint.

Ui.: vakon van egy tippem, hogy az utolsót fogod választani, mert áramkörrel vacakolni sosincs annyira fun, mint millivoltokat számolgatni napokon keresztül néhány ezrelékes torzítás _talán_ kiküszöbölésére
A hozzászólás módosítva: Feb 14, 2016
(#) Attila86 válasza pajti2 hozzászólására (») Feb 15, 2016 /
 
Precíziós elvárások éppenséggel lennének mert műszer lenne belőle. Na mindegy, majd kipróbálom aztán kiderül. Legfeljebb tényleg kap még két ellenállást a TL431.
(#) messer hozzászólása Feb 19, 2016 /
 
Sziasztok. 5V-os pic-et szeretnék 3,3V-os gsm modemmel összekapcsolni usart kommunikációval szerintetek, ha a pic tápot leveszem 3,3V-ra működhet a dolog vagy mindenképpen szint illesztés kell?
(#) usane válasza messer hozzászólására (») Feb 19, 2016 /
 
Ha a PIC megy 3,3V.ról akkor nincs gond. PIC-en múlik. Ha nem megy csak 5V-ról akkor kell a szintillesztés. Milyen típusú PIC?
A hozzászólás módosítva: Feb 19, 2016
(#) messer válasza usane hozzászólására (») Feb 19, 2016 /
 
16F877 adatlap szerint :
Idézet:
„Wide operating voltage range: 2.0V to 5.5V”

akkor elméletileg megy a dolog igaz debuggolni nem lehet mert mplab megreklamálja...
(#) usane válasza messer hozzászólására (») Feb 19, 2016 /
 
Akkor mennie kell.
(#) potyo válasza messer hozzászólására (») Feb 19, 2016 /
 
Azért ellenőrizd le, hogy nem véletlenül csak az LF verzió működése garantált-e 4V alatt
(#) Bakman válasza messer hozzászólására (») Feb 19, 2016 /
 
Az nem működik 3.3 V-ról. Az LF változat igen, de az pedig csak 10 MHz-ig.
(#) usane válasza Bakman hozzászólására (») Feb 19, 2016 /
 
Nem dolgoztam ezzel a típussal, de ez sehol sincs említve. Adatlap szerint ez is megy.
De potyonak igaza van, le kell ellenőrizni.

Szerk:
Igazad van. Ez egy alul dokumentált típus. Electrical characteristics alatt van jelölve. A sima csak 4V-ig megy. Vagyis kell neki a szintillesztő.
A hozzászólás módosítva: Feb 19, 2016
(#) messer hozzászólása Feb 19, 2016 /
 
Köszönöm szépen az infokat mit javasoltok szint illesztéshez? oda vissza?
Következő: »»   1209 / 1320
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem