Fórum témák
» Több friss téma |
Azért jól látszik a címkézgetés előnye: a kikommentelt 2 sor miatt a goto $-5 csak a piszok szerencsének köszönhetően nem okoz problémát . Figyelmedbe ajánlom a banksel utasítást, mert sokkal érthetőbb egy "banksel TRISIO", mint a bitek billegtetése.
Idézet: „goto $-5 csak a piszok szerencsének köszönhetően nem okoz problémát” Nem úgy van az! Az direkt olyan! Idézet: „Figyelmedbe ajánlom a banksel utasítást, mert sokkal érthetőbb egy "banksel TRISIO", mint a bitek billegtetése” Én jobban szeretem a biteket. Megnézem mit kell beállítani, a Setup részt úgy szervezem, hogy az egy bankba lévőket beállítom egyszerre. Kicsit végig kell gondolni, de cserébe nem kell annyit gépelni. Idézet: „... Én jobban szeretem a biteket. Megnézem mit kell beállítani, a Setup részt úgy szervezem, hogy az egy bankba lévőket beállítom egyszerre. Kicsit végig kell gondolni, de cserébe nem kell annyit gépelni” A kód későbbi olvashatósága, illetve más kontrollerre való adaptálás esetén könnyebb, ha nem kell a biteket visszafordítani mnemonikká.
Biztos ki is jött volna ha elég ideig hagyom futni, de nem hagytam!
Bár a megszakításban a 24. sor csak biztosíték, hogy esetleg valamiért elérné akkor törlődjön. Normál esetben nem tud eljutni odáig, mert a főprogramban is nullázom ha elvégezte a dolgát. Még azon gondolkodom, amit sonajkniz javasolt. Mivel más feladatot nem szánok a PIC-nek nem lenne muszáj erőltetni a megszakítást, polling-gal is megoldható lenne. Mi a véleményetek? Elég stabil ez így? Mert a stabilitás a fő szempont!
A banksel előnye:
- mindig helyesen állítja be a RAM kiválasztást - használható mind a hagyományos mind a továbbfeljesztett midrange kontrollereken A banksel hátránya: - Hagyományos midrange kontrolleren mindig mind a két kiválasztó bitet állítja (ha kell, ha nem) A
Szerintem ez is csak a gyakorlott szemnek jó. Nekem az RP0-t ugyanúgy meg kell néznem az adatlapban, mint az 5-öt.
Többször írtam át programot az egyik PIC típusról másikra. Két dolog okozta a problémák zömét:
- Egyes FSR -ek eltérő bankban vannak (pl. EEPROM vagy az A/D regiszterek). A banksel megoldja a problémát, bár egy kicsit terjengős. - Azonos regiszterekben más bit pozíción van ugyan az a funkció: pl. ADCON0 16F88 : ADCS1,ADCS0,CHS2,CHS1,CHS0,GO,--,ADON 16F684 : ADFM,VCFG,--,CHS2,CHS1,CHS0,GO,ADON A mód beállítására még odafigyel az ember, hiszen alapvetően máskép kell csinálni, de csak egyszer az inicializáló részben. A csatorna kiválasztást végigkövetni már jóval bonyolultabb feladat, bárhol lehet a programban.
A fenti részlet mind a két típuson a CH5 -öt választja ki... A hozzászólás módosítva: Máj 22, 2015
Lehet, hogy gyakorlatlanságomból adódóan, de engem zavarni szokott, hogy ha a BANKSEL makró paramétereként olyan regiszternevet adok meg, ami több bankban is elérhető, akkor néha elsőre nem látom át melyik bankban is vagyok éppen. Persze ez csak akkor szokott megtörténni, ha nagyon belegabajodtam a kódba, és nem figyelek erre.
Én PIC18-on kezdtem a programozást. Ezért hideglelős lettem, amikor egy PIC 12-esnél beleszaladtam a bankváltókba. Végül azt a megoldást alkalmaztam, hogy az adatlapról kinyomtattam a baktérképet, és a programban MOVLB 0xn-t alkalmazok bankváltásra, ahol "n" a bank száma.
No igen, a dolog ott kezd érdekes lenni, amikor a változókat is szétosztja az ember a bankok között. Ilyenkor a "banksel TamasPWM" igen kényelmes tud lenni.
Üdv.
Milyen szabály van a különböző feszültségű tápok GND közösítésére. Digitális bemenetek leválasztására opto-val történik, viszont ADC mérés esetén szükséges a mérendő táp GND-jének közösítése. (még analóg előfokozat is elképzelhető, külön kell analóg és digitális GND? hogyan?) Az erősáramú földelő vezetővel (EPH) összeköthető? vagy kötelező?
Próbálkoztál már 18F2680 -nal? CAN FSR 0x0D00 .. 0xE5F között van. Sőt a 24FxxDAyyy -ban a kiterjesztett adatmemória is lapozós...
A hozzászólás módosítva: Máj 26, 2015
Na ezért választottam eddig olyan 18F-es PIC-eket, amikben nincs ennyi periféria.. Bár erre lehet megoldás az "ablakos" módszer, ahol ki lehet jelölni az acces(?) RAM terület elejét és végét.
Még mindig PIC12F675 a témám. Az AN0 és AN1 csatornákat használom ADC-re, sima 10k poti feszültségosztóként bekötve. A gondom az, hogy ha be van kötve a poti, akkor nem lehet programozni, mert az AN0 az ICSPDAT és az AN1 az ICSPCLK láb is egyben. Mit javasoltok, hogy lehessen kiépített ICSP csatin programozni? Szeretném majd a végleges formában SMD-ből megcsinálni.
Az sem rossz, de jobb lenne valami elegánsabb megoldás.
Esetleg egy soros 1k-s ellenállás a potiról az AN láb felé.
Erről jut eszembe, amit én kérdeztem: a I2C és a programozó lábak nem férnek össze . Programozni tudom, de az I2C nem megy (bár gyanakodtam, hogy a 4,7k lehúzó ellenállást nem fogja szeretni a I2C).
Hát sanszos, mivel az I2C is lefelé húz. Bár ha órajelen van akkor még lehet jó de adatvonalon biztos hibát okoz.
Egyiken sem jo, mert mindket vonal nyitottkollektros meghajtasu, ezert felfele csak ellenallas huzza oket. Es mindket vonalat tudja mindket eszkoz (master es slave) lehuzni. Ugyanis a slave eszkoz is meghuzhatja az SCL-t, mert igy tudja nyujtani az atvitelt.
Elvileg, ha a potit középállásba teszed, hagyja magát programozni.
Sziasztok! Biztos hogy volt ezerszer ez a kérdés olvasom is a topikot de egy csomó link már semmire nem mutat gyári pickit3-am van építettem hozzá próbapanelt pic16f628a ba kellene a programot beégetni az elektronikával nincs problémám a szoftverrel már inkább. Bármilyen programot töltök le eddig annyit sikerült elérnem hogy "a célpont nem található" Winpic-et is letöltöttem de azt meg a windows om nak nem tetszik mert "digitális aláírást követel" Kérlek segítsetek honnan mit töltsek le és merre induljak?
De ha pickited van miért nem a microchip progit használod? Mplab X vagy van hozzá valami IPE nevű dolog ami csak az égetésre, olvasásra használatos.
Azt is feltettem de akkor se találja a kontrollert. Full kezdő vagyok pic terén... Na meg a szakmai angollal is vannak bajok.
A tápfeszültséget érdemes nem a PICkit3-ra bízni.
Tápja van a PIC-nek? A pk3 alapértelmezetten nem ad tápot.
PK3-al nekem is meggyűlt a bajom.
3 lépésben kellett frissíteni a filmvare-jét. Hívd fel a chipcad ügyfélszolgálatát, (persze gép előtt ülve) és lépésről-lépésre végigvezetnek a folyamaton. Fel kellett telepítssek egy régebbi MPLabot, először azzal kellett frissíteni, malyd pedig az MPLabX-el. Mindezt egy frissen vásárolt új PK3-al. A régi PK2-esemmel soha nem volt bajom.
van persze usb ről kap. De olyan próbapanelt csináltam hogy jumperrel állíthatom hogy külső tápot kapjon.
Van egy épített pk2-őm is Vicsys féle. Azzal próbálkozzak inkább? De ha hü*e vagyok hozzá akkor is bírnak ott segíteni
|
Bejelentkezés
Hirdetés |