Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Az elképzelés jó lehet, de lehet, hogy kicsit vesztesz a felbontáson. Hő mérésnél nem lesz akkora tragédia. A kivonásoknál nézd meg az adatlapot, mert a carry-t kicsit "furcsán" kezeli a PIC, de egyébként jó a módszer. Ellenőrizni kell a nullaszint kivonásánál is, hogy nem lett-e negatív az érték.
Idézet: „Azt nem is tudom hogyan kell. Mármint az analóg funkciókat kikapcsolni.” Vedd elő az adatlapot és nézd meg az I/O portokat (5. fejezet) valamint az AD modult (11. fejezet)! Az I/O portoknál egy rövid példakód is található az A port beállítására.
Nagyon köszi!
Csak akkor lép át laphatárt ha túllépem a 8bitet. Nem? És az 256 érték után van.
A laphatár átlépése a PIC 256 memóriarekeszes egységeinek átlépését jelenti: vagyis az utasítás lefordítódik egy memcellába, aminek a címe pl. YZ00H .. YZFFH-ig terjedhet (itt a lényeg azon van, hogy YZ értékek ne változzanak meg a táblázat értékeinek letárolása közben!). Így lehetne a maximális táblázatot elkészíteni, de ha nem kezeled ügyesen a fordító direktíváit ( ORG !), akkor a táblázatod pl. YZDDH-n kezdődve már ugyancsak YZFFH-ig tarthat, így jóval kevesebb elemet tartalmazhat!
Steve
Bocs, már késő van és nem vettem észre, hogy elfelejtettem odaírni: a maximális méretű táblázatot akkor tudod elkészíteni, ha YZ00H-n kezded a táblázatot, erre kell figyelned a program írása során ( ORG direktíva!) !
Steve
Értem!
Pl: ORG 300h azátn retlw xxh Így jönne a 150db retlw. Így jó lehet.
Üdv!
Azt szeretném megkérdezni, hogy tud-e valaki PIC18F452-höz bootloader programot letöltő kapcsrajzot, meg progit. Anno egy régi haverom belerakott 3 pic-be bootloader progit, így a megírt programomat rögtön bele tudom tölteni ezzel (Colt PIC18F Bootloader). Szóval így tudok bele új programokat tölteni, csak attól parázok hogy valahogy felülírom a memória első részét, ahova ez a bootloader szoftver le lett töltve és utána már nem tudok beletölteni többet, csak ha újra bele nem rakom a letöltőszoftvert, csak az nekem nincs hozzá, meg áramköröm sincs. Meg egyébkén is kell majd. Tud valaki ebben segíteni?
Üdv!
Ez van az adatlapon: EXAMPLE 5-1 : INITIALIZING PORTA BANKSEL PORTA ; select bank of PORTA CLRF PORTA ; Initialize PORTA by ; clearing output ; data latches BANKSEL ADCON1 ; Kiválasztja az ADCON1 regisztert MOVLW 0x06 ; Itt állítja az Ra0-4-ig MOVWF ADCON1 ; digitális I/O port-ra (PCFG bitek) MOVLW 0xFF ; Itt az összes ra portot bemenetnek ; állítja?? MOVWF TRISA ; Set RA<7:0> as inputs De azt nem értem, itt a végén miért állítja mindet bemenetnek, ill hogyan? Vagy én számolok rosszul? Az 0xFF nem 11110000? Nem csak a 4,5,6,7 bitnek kellene bemenetnek lennie? Na majd holnap visszanézek. Ill már ma. Jó éjszakát! Tomi
Az adatlapban a példa alatt ott van a táblázat, hogy a port egyes bitjei milyen fukcióval bírnak. RA0-tól RA4-ig analóg bemenetek (AN0-AN4), a többi - RA5-től RA7-ig - továbbra is digitális. A 11. fejezetben láthatod, hogy hogyan kell az RA0-RA4-et átállítani, miért kelle az ADCON1-be 0x06.
Idézet: „De azt nem értem, itt a végén miért állítja mindet bemenetnek,” Az adatlapban csak egy példát látsz a port beállítására. Az, hogy melyik bit lesz bemenet és melyik kimenet az a te döntésed, egy kisebb korlátozással. (Ezt a korlátozást írd meg nekünk, lássuk figyelmesen olvasod-e az adatlapot!) Idézet: „Vagy én számolok rosszul? Az 0xFF nem 11110000?” :eek2: Teljesen rosszul számolsz! A 0xFF az b'11111111' ! Idézet: „Azt szeretném megkérdezni, hogy tud-e valaki PIC18F452-höz bootloader programot letöltő kapcsrajzot, meg progit.” Szóval neked egy "síma" programozó kell. Látogass el watt honlapjára, ott találsz információkat jó és nem jó programozókról. Idézet: „„Vagy én számolok rosszul? Az 0xFF nem 11110000?” Teljesen rosszul számolsz! A 0xFF az b'11111111' !” Az optimista megkozelites: 50%-ban jol szamolt
Elsősorban a Colt PIC18F bootloader honlapján érdemes szétnézni.
További linkek: - egyszerű mintakapcsolás (PIC18F242) - Tananyag és mintaprogramok
( a RETLW-k helyett jól használható a DT direktíva!) !
Steve Idézet: „„Teljesen rosszul számolsz! A 0xFF az b'11111111' !” Az optimista megkozelites: 50%-ban jol szamolt” Na igen, a fele jó volt. (Minek is boldogítjuk az életünket kettes, nyolcas, meg tizanhatos számrendszerekkel )
Üdv!
Nem sok időm volt foglalkozni vele. Hát arra rájöttem, hogy FF az b'11111111'. Így már értem, mit állít. Hát nekem ra0-tól 4-ig kellene kimenet, két lábra a kvarc és az mclr láb is kell. Az rb-t még nem tudom pontosan. valószínű 4 kimenet és 4 bemenet lesz. Az adcon1-be értem miért kell a 0x06. így lesz digitális bemenet az ra0-4. Csak még azzal nem vagyok tisztában, hogy hogyan állítom be az osc1/osc2/mclr-t. Na meg még az Rb... Hát át kell néznem az adatlapot. Köszi a segítséget, ha nem bírok vele, még kérdezek. Üdv!
Az RA4-re ugyelj, mert az elegge sok PIC-nel specialis open collectoros kimenet! Sokan megszivjak vele...
Bemenetnel nem gond.
Ha az MPLAB SIM -et bekapcsoljuk, akkor a Debugger > Settings > Uart1 IO > input file alatt meg lehet adni olyan text fájlt, amit soros port bemenete lesz. (MPLAB user manualban benne van, hogyan kell az adatokat beleírni) Viszont nekem a SIM nem adja vissza az adatokat. RCIF se billen be. Pedig úgy emlékszem, régebben használtam már ezt. Nem tudom, most mi a gond. Valaki ki tudná próbálni?
Az XP számológépe "tudományos" üzemmódban használva jó megoldás lehet a HEX/DEC/BIN átváltásokra, én legalábbis ezt használom.
Üdv bbalazs és menyus!
Köszi a figyelmeztetést! Az RA4-es kimenetre már a 16F84-nél rájöttem, beállítottam helyette másik kimenetet vagy egy ellenállással megoldható. Hát a számológép ezen funkciójára az előző hozzászólásom előtt jöttem rá. Csak nem mertem leírni Köszi Sziasztok!
Sziasztok
bocsánat de biztos volt már róla szó de létezik valamiféle program ami a meglévő HEX file-t visszaforditja forrásfile-á? esetleg használta-e már valaki? Üdv
Ezeket a programokat disassembler-nek hívják. De az általuk generált forráskódban nincs sok köszönet. Pláne ha magasabb szintű nyelven volt a forrás. Csak akkor érdemes vesződni ezzel ha nincs más megoldás. Én az Oshon.Software.PIC.Simulator.IDE.v6.40.Incl.Keymaker-ZWT -t használtam.
A 16F818-nál az RA4 nem open drain kimenet (Adatlap!).
WPB F18 PCB v2 PIC programozó tesztelése GNU/Linux rendszeren odyssey szoftverrel
Elkészítettem nagysokára ezt a PIC programozót, watt weboldalát használva, és igénybevéve watt önzetlen segítségét. http://wattmep.tvn.hu/WPB_v2/WPB_PCB_v2.0.html Most tesztelem az odyssey nevű programmal. Ez egy szöveges program, a párhuzamos portra csatolt PIC programozókat hajtja meg. Nos, az a baj, hogy az ICSP kimenetein nem azokat a feszültségeket mérem, amiket mérnem kellene! A következőket állíthatom be odyssey-ből: Pwr (ez a Vdd, +5 V, a PIC felé) Vpp (ez az égető feszültség, + 12,5 V) Clk (ez az órajelet vezérli, +5 V) DataOut (ez irja a PIC memóriáját, +5 V) Mérnem kellene a +5 V -okat, és a +12,5 V -ot, de a mérőműszerem nem ezeket méri. watt PIC programozójának külső panelén, az ICSP kimenetein mérem az értékeket, és a GND kimenetre teszem a mérőműszer egyik, s a Vdd, Vpp, PGC, PGD kimenetekre a másik tűjét. A mért értékek: Vdd - kikapcsolva 2,12 V bekapcsolva 2,11 V Vpp - kikapcsolva 0,56 V bekapcsolva 0,56 V PGD - kikapcsolva 0,07 V bekapcsolva 0,01 V PGC - kikapcsolva 0,01 V bekapcsolva 0,00 V Mi tévő legyek? Hol, hogyan keressem a hibát?
[OFF]
Idézet: „Az XP számológépe "tudományos" üzemmódban használva jó megoldás lehet a HEX/DEC/BIN átváltásokra, én legalábbis ezt használom.” Linux szamologepe detto, de amugy MPLAB Help / MPASM Assembler / Useful tables / Hex to Dec Conversion Table ... Ha az "okol-szamolkat" ismerjuk akkor szamologep nelkul is meg tudjuk saccolni mekkora az ertek es ha nagyon kell akkor egy pici fejben szamolassal a pontos eredmenyt is megtudhatjuk. HEX-bol BIN-be atszamolni es forditva pedig illik fejbol is tudni -- epp emiatt hasznaljuk a hexat, hogy ez konnyen menjen...
Hi.
Azt szeretném megkérdezni hogy adott 1 pic18f4550-es proci amin futttok 1 rs232-es kapcsolatot 1 külső hardware-el. Az a baj hogy a hardware csak 300 baudon komunikál és a pic viszont 20mhz-es kristályal van meghajtva igy nem birom beállitani 300 baudra a sebbeséget kissebb kvarccal hajtsam meg vagy leljebb lehet valahogy vinni a sebességet? Köszi
Ha megnézed a PIC adatlapjának 244. oldalát ott a megoldás.
Köszi gondoltam, hogy rossz helyre megy, csak igazából gondoltam itt aki PIC-kel foglalkozik az biztos épít is be áramkörbe.........
Köszi hogy megnézted.Megnéztem én is de nem értem.
|
Bejelentkezés
Hirdetés |