Fórum témák
» Több friss téma |
Köszönöm neked is a segítséget, de már közben elindultam a másik irány felé.
don_peter: Hozzászólásodra reagálva áttértem HI-Tech-re hogy ha segítséget kérek/kapok, ne legyenek a fordító eltérés miatt szintaxis hibák. Viszont pár darabba így bele is ütköztem, amit most javítgatok.
Helyes
Amúgy benjami ajánlása egyelőre még bonyolult lenne, ennyi felé nem szabad elmozdulni tapasztalatból mondom ezt...
Uraim, csatoltam egy képet a PICKIT2 programozómról.
Max 3.6v-os PIC-eket tudok majd vele programozni? Elvileg gyári, bár Kínából rendeltem.. Van itthon pár 18F24K20-as PIC-em gondoltam ideje lenne megnézni mit is tud és használni. Egy nRF8001-es Bluetooth chippel akarnám összehozni és tesztelni mivel az is 3.6v-os, így elkerülném a szintillesztést. (ez útobinál tudom, hogy az 5v-os PIC is megy 3.6v-on, de kihagynám, tanulni meg jó ) Idézet: „erre kötnék rá pár fogyasztót , pl rádiót” Na ezért kérdeztem. Egy BC tranyó nem bírja el ha kihajtod a rádiót. De még a FET-et is hűteni kellene. Inkább relével kellene kapcsolni, bár nem értem a lényegét, ha leveszed a gyujtást akkor le szokott mindent kapcsolni az autó (általában). És miért kellene erre PIC? Gyujtáskapcsolóról lehet kapcsolni 12V-os relét, ha már a gyujtáskapcsoló kevés.
Szerintem azért erőlködik, hogy ne "szívja le" az aksit (ha a PLAZA parkolójában vagy az udvaron bekapcsolva hagyja), ha elér egy általa "tapasztalatból" megszabott szintet, akkor ne engedje tovább meríteni ! Ennek érdekében valamilyen komparátor kell, sima gyújtás nem elég!
Lehet, de a 10V elég példajellegű. 11.9 V-nál már mélykisütött az akksi.
Elvileg 12.2V-nál már illene lekapcsolnia. 1-2 tized voltokon múlik az egész. Be kellene néznie valami akksis topikba, hogy szokták ezt mérni mielőtt bármit is PIC-el kapcsolgatna.
Egyetértek, azért írtam, hogy "tapasztalatból megszabott szintet"
A hozzászólás módosítva: Dec 18, 2014
Teljesen lényegtelen ez az értékhatár , mint írtam könnyen állítható megoldás kellene rá. De ahogy kissi írta , pont azért kellene.
Próbáld ki a PICkit2 saját programjával, hogy a VCC kimenetet le tudja- szabályozni 3,3 V-ra! Elvileg a PICkit2-vel egyenértékű klónnak kellene lennie...
"Elvileg gyári..." Hajógyári? (gyk: ötödik dzsunkasoron balról a harmadik)
Igen, gond nélkül szabályoz.. Akkor megnyugodtam.. Köszi.
Annyit még kérdeznék ezel kapcsolatban, hogy a VDD és MCLR közé ugyan úgy mehet a 10K ellenállás? Vagy a 3.6v-os PIC-eknél másként van? Mire kell figyelnem ami esetleg másként van mint az 5v-os PIC-nél? A hozzászólás módosítva: Dec 18, 2014
Sziasztok,
A következő program azt csinálja, hogy automatikusan bizonyos időzítéssel (TMR0) a PORTD- re kirakja a retlw utasitásban lévő bináris kódokat. Pontosabban inkrementálja a PORTA bitjeit és amikor a 7 es helyértéken lévő bit aktív állapotba kerül kirakja a retlw utasítsában levő első bináris kódot (00000001) a PORTD-re. Utána rámegy a következő retlw utasításra és kirakja a b'00000010' és így tovább. Ha végig ment kezdi elölről. Persze a valóságban nem működik, csak a hármas helyértéken lévő bit világít folyamatosan. Esetleg valami ötlet mi lehet a hiba?
Használd a kód gombot! -moderátor- A hozzászólás módosítva: Dec 18, 2014
Minek ez a sok banksel, amikor szinte minden egy bankban van ( ráadásul én még soha nem próbáltam, hogy mit kapok a banksel INTCON-ra, mivel ez minden bankban ott van ). Az viszont biztos, hogy a GIE bitet nem illik az ISR-ben piszkálni ( a retfie visszaállítja).
Idézet: Igen„VDD és MCLR közé ugyan úgy mehet a 10K ellenállás?” Idézet: A PICkit2 saját programját használva az automatikus típusfelismerését ne használd, mert ha azzal kezdi, hogy odalöki az 5V-ot, akkor abból nagy baj lehet. A PIC csatlakoztatása előtt célszerű a típuscsaládot kiválasztani - abból már tudni fogja a helyes tápfeszültséget.„Mire kell figyelnem ami esetleg másként van mint az 5v-os PIC-nél?” Az MPLAB-nál arra kell ügyelni, hogy csatlakoztatás előtt a megfelelő mikrovezérlő típus legyen beállítva.
Átírtam a kódomat közben. Csináltam gombkezelést és időzítést is. Viszont valami még mindig nem jó benne, mert a gomboknál az if-be minden esetbe belefut a programom, pedig a lenyomott gombra kellene várakoznia.
Proteusban meg összedobtam a kapcs rajzot. Viszont amikor futtatom, nem tudom hogy kell kiíratni a változók értékeit, ha lehet egyáltalán, meg nem is csinálja a kívánt funkciókat. Át tudod futni a kódom, hogy mit rontok el? Valamint csatoltam a Proteus projectet, hátha segít.
Sziasztok!
Pic18f26k22 -ben szeretném ha a program csak akkor indulna el ha a Cp be van kapcsolva. Assemblyben programozok. Ha lehetséges akkor hogyan lehet megoldani? Vagy hogy lehetséges hogy a saját program memóriát olvassa? A hozzászólás módosítva: Dec 19, 2014
Az első amit észreveszek, hogy a feltétel után a while() várakozó ciklusban nincs ott a felkiáltó jel.
Ez azt eredményezheti, hogy gomb felengedésénél beragadhat a feltételbe... A többit átnézem, mindjárt..
Sziasztok!
Egy LED fényerejét szeretném csökenteni és növelni PWM segítségével. A programot meg is írtam, de nem akar működni. Az adatlap alapján állítottam be mindent de a LED meg sem nyikkan. Még sosem használtam ezt a PWM-et ezért nem is tudom hogy hol akadhat el a dolog. Több mintaprogramot is kipróbáltam a netről és egyik sem akart menni. A segítséget előre is köszönöm.
Nagyon sok hiba van benne, nem javítottam az összeset, de jó párat helyre tettem.
A tranzisztorok működését nem árt tanulmányoznod mert fordítva kötötted be. Te most nem PNP hanem NPN tranzisztort használsz. Ez lehet sokat segítene neked, legalább is a kapcsolás.. (Cikkekben...ssebb) A regiszterek 8 bitesek, így azokba maximum 0xFF mehet A kontroller főbb regiszter beállítását sem végezted el anélkül nehéz lesz normálisan használni. Ha egy pin-t gombként akarsz használni és a kapcsolásod jó is, akkor se felejtsd el azt a lábat bemenetre állítani... A relé a tekercsén átfolyó áramra reagál, így erre figyelj óda mert élesben már lett volna füst. A buzzer-t kivettem, mert nem volt jól bekötve, de hasonló képen be tudod kötni mint a relét. (vagy mint egy LED-et kapcsolgatnál, szimulátorban nem biztos, hogy meg fog szólalni ez nem azt jelenti, hogy rossz lenne a bekötés, LED-el helyettesítsd, hogy lást a működést) A szimulátorban állíts be a kristályod Kerekijét, és a MCU sebességét is. (az alkatrészre kattints 2szer) Az interrupt tartalmát gondold végig még egyszer mert nem jó, kezd el előröl megírni. A megszakításrésze jó, de a perc és másodperc kezelése rossz.. A stop függvényt kivettem mert rossz és felesleges is. A relé behúzását ne bízd az interrupt-ra mert minden lefutásnál azt is lefuttatja.. Most hirtelen ennyi...Kezd el apránként rendbe tenni. A szimulátorban a változók értékét úgy tudod megnézni, hogy pillanat-állítod a program futását és "PIC CPU Variables" ablakra rákattintasz.. A hozzászólás módosítva: Dec 19, 2014
Sziasztok!
Csatoltam egy képet a pic16F887 adatlapjából, a timer1 blokk diagramját. Miért van az, hogy az oszcillátor részben az invertert, csak akkor lehet aktiválni a T1OSCEN bittel, ha belső oszcillátort használunk órajel kivezetés nélkül? A legtöbb PIC-ben eddig olyat láttam, hogy az invertert csak simán a T1OSCEN-nel lehet aktiválni és kész, nem értem miért van ez a feltétel.
Én még ha gombról van szó nem csak a bemenetre figyelnék (ha a TRIS nincs piszkálva alapból bemenet), hanem ha olyan port a bemenet amely analog port is egyben akkor az ANSEL-el digitálisra állítani az adott lábat.
Memóriából olvasni TBLRD assembly utasítással tudsz. A cp bitek a CONFIG5L regiszterben vannak, aminek a címe 300008h, DS41412F 368.oldal. vigyázz, az 1-es bit jelenti, hogy nincs cp, a 0 azt, hogy van.
A hozzászólás módosítva: Dec 19, 2014
Köszönöm a segítséget. Pár dolgot, amit írtál, azokat közben már megtaláltam és javítottam én is, de sok hasznos tanácsod írtál. Viszont már kezdem átlátni a működését..
A szimulátorban azt hittem, hogy demózás közben is tudom folyamatosan nézni az értékeket a kapcsolási rajznál. Kijavítom az összes hibát és jelentkezem, ha netalántán elakadok. Még egyszer köszönöm!
Köszönöm, ezt már néztem de valahogy nem értem. Túl kezdő vagyok hozzá. Ha szépen megkérlek letudnád nekem írni hogy néz ez ki? sajnos nem tudok angolul és így egy kicsit nehéz.
Teljesen egyet értek veled...., ezért is írtam ezt:
Idézet: „A kontroller főbb regiszter beállítását sem végezted el anélkül nehéz lesz normálisan használni.”
Bocsánat ezen így valahogy átfutottam, csak azt vettem észre, hogy nincs írva, hogy az analog részt is beállítani.
Elnézést még egyszer a figyelmetlenségért!
Több szem többet lát, én csak örülök, ha esetleg amit elírok vagy rosszul tudok azt kijavítják, ezzel is építik a tudásom..
Itt most ez nem áll fent, de ezt nem tudhattad
Ez a program egy 16F628 PIC-re lett irva. Akkor talan azzal kellene kiprobalni, vagy pedig az adatlap olvasasaval egyidejuen ertelemszeruen atirni a regiszterek, valtozok nevet.
Szia!
Kijavítottam a programot, de így sem akar menni. |
Bejelentkezés
Hirdetés |