Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Az Rx-et én is fel szoktam húzni ha használom, ebben egyetértek, de én most egyelőre a programozáshoz próbálok segíteni, mert még ott akadt el a dolog.
Az LVP láb szintje mindegy hol áll, ha Vpp jelen van, legalább is ez a tapasztalatom. Valóban az első dolgom mindig az LVP kikapcsolása, és lehet, hogy eddig mindig szerencsém volt az első égetésnél, ebben az esetben neked van igazad, de ennyi véletlen szerintem nincs. Teszek egy próbát, ha ráérek, hogy bekapcsolt LVP, 5V-ra húzott PGD és akkor mi lesz.
de törölni se lehet a picket szóval...
egyébként amit mondtál már megcsináltam őt építettem meg, egyébként lejjeb vannak fotók
Hello! Van ötletetek, hogy miért lehet a következő dolog: 16f877 a0 bemenet a/d-hez használom a gond az hogy a láb +5v felé terhel tehát mikor ráteszek egy ledet ellenállással a föld felé az világít közben meg mér is csak pontatlan a mérésem mivel táp felé terhel? érdekes ötletetek van?
5mA-t elbír a pic, ugye?(LED+1K; aktív magas)
A képen, amit betettél csak az látszik, hogy néhány TO92 tokozású alkatrész van beépítve, azt hittem kibővítetted tranyókkal a kapcsolást, miután írtad, hogy változtattál rajta.
Használod a WLPT_mini támogatása pipát a WPB programon? Más programok nem biztos, hogy együtt tudnak működni ezzel az égetővel... A LED-re jó az 1k, de akár 470ohm is megfelel. A láb 20mA-t bír. (adatlapot javaslom!) Figyelj kinek a válaszára válaszolt, mert keveredés van!
Nem jól van konfigurálva, hiba van a panelben, áramkörben, vagy rossz a PIC.
winPic800=WBP?
hol van benne ez az opció
Nem. A WPB az én programom...
ja az ok
hol van a teljes verzója(a topicjában csk kiegészítők vannak nem?
Próbáltad már az oldalamon?
jó oké köszi megvan és ezzel menni fog?
nem tudja kicsomagolni a zip-et a gép
Ebben nem tudok segíteni, és itt ez eléggé off. Próbáld újra letölteni...
azal nem megy
másodszori letöltésre 100kb-al nagyobb lett de még mindig nem műkszok
Vagy használsz nagybetűket mondatkezdéskor, és írásjeleket mint a többiek, vagy nem írj!
Nem beszélve a szlenges rövidítéseidről. Nem tűnt fel hogy itt senki nem ír igénytelenül?
A hiba meg van csak az okára kéne rájönni! Tehát 16f877 ra0-at használom a/d a trisa-0 magától beáll az elején nullába holott 1-be kéne neki reset után mikor elindul a proci. C-ben programozok megadom hogy ra0 legyen analóg bemenet ennek hatására is át kéne váltania de nem teszi. Ha direktben megadom a tris-t minden ok.Nem értem hogy mi történhet? Szerinted? Errata...?
Hali
Esetleg ha lathatnank az inicializalo reszt, lehet tobbet tudnank mondani. Nekem csak akkor csinal ilyet, ha azt mondom neki. Idézet: „Ha direktben megadom a tris-t minden ok.” Akkor tegyél úgy. Én szinte mindig ASM szerűen kondfigurálok C-ben is, miután nekem nehezebb megjegyezni a varázsszavakat, mint az adatlap szerint beállítani a szükséges regisztereket. Valószínű, hogy nem jól konfigurálod fel az A/D-t, de kicsi a valószínűsége, hogy a fordító rossz!
Jó reggelt, még el sem kezdem az inicializálást mikor a programom elején rosszul áll be a trisa, a fordító előre elvégez dolgokat? Az ad-t így használom:
Az biztos, még jó hogy anno asm-el kezdtem ez mindig bebizonyosodik megint csak vakarhatnám a fejemet....Azért jó lenne ha ki tudnánk deríteni a probléma okát mert félek hogy elhatalmasodik bennem és depis leszek
A reset után van egy alapértelmezett értéke a triseknek. Ez ha jól emlékszem csupa 1. Ha indokolatlanul váltana értéket a szimuláció szerint a tris, azt meg kell nézned mitől van, mert nem normális(SIM lépésenkénti végrehajtás).
Ez speciális CCS C probléma, amelyre itt nem tudunk válaszolni, mert fogalmunk sincs, hogy a CCS C és a beépített függvényei milyen elgondolás szerint állítgatják önhatalmúlag a TRIS biteket. Ha megnézed fordítás után a generált assembly listát, abból biztosan kiderül, hogy hol nyúl a TRISA regiszterhez.
Egészségesebb volna olyan programot írni (programnyelvet használni), ami csak azt csinálja, amire utasítod. De ízlés dolga...
Igen néztem az adatlapot csupa egyes indulásnál no mindegy beállítom egybe és ennyi.
A CCS C-nél vannak #-os direktívák is arra, hogy hogyan kezelje a portokat, és azt hiszem, alapértelmezésben okos akar lenni az adatirányt illetően. De ezek benne vannak a helpjében vagy a manualjában, amikor használtam a CCS C-t, akkor én is onnan tájékozódtam, és inkább a watt által is preferált, saját kézbe vevős módot választottam, amikor külön függvényekkel nekem kellett beállítani az adatirányokat.
Tulajdonkepp nem is azzal van a problema, hogy allitgatja, hanem azzal, hogy toketlenul teszi. Tehat ha ketszer adsz ki neki egy output_low(PIN_A1) majd egy output_high(PIN_A1)-et, akkor mindket esetben piszkalgatja a TRIS-t -- semmi intelligencia nincs benne, csak az amatornek akinek LED villogtatasra kell mukodni fog es boldog lesz ettol.
A kerdes itt azonban inkabb az, hogy vajon mi allitja outputba, hiszen (legalabbis a beidezett kodban) nincs kimenet egyaltalan. Lehet valahol mashol a kodban van valami fuggveny hivas ami ezt allitgatja, de ezt csak akkor mondhatnank meg biztosan ha lathatnank az egesz kodot, nem csak ezt a reszletet.
Ha karod átküldöm az egész programot, de felesleges mert kipróbáltam úgy is hogy csak ez szerepel a kódban.
Volna egy másik kérdésem c-ben hogyan tudok százalék jelet kiiratni egy 2x16-os lcd-re? Idézet: „A kerdes itt azonban inkabb az, hogy vajon mi allitja outputba” Gondolom, a C startup kódja, azt viszont nem tudom, milyen apropóból. Lehet, hogy a projektnek a forrástól független, valamelyik konfigurációs részében áll valami úgy, hogy outputot csinál belőle. Tulajdonképpen ezt a jelenséget utáljuk leginkább a magas szintű nyelvekben mikrovezérlős környezetben.
puts vagy putc, putchar stb nem ertelmezi a %-os jeloleseket, de printf-ben siman egy masik %-ot kell tenni, tehat:
az egyetlen(!) '%' -ot fog megjelentetni a kijelzodon. UI: 'nem ertelmezi a %-os karaktereket' -- ugy ertem siman irhatsz oda %-ot, annak meg kell jelennie...
Köszönöm válaszodat én meg custom character-be raktam be a megoldásod sokkal jobb mint az enyém így legalább marad még custom hely. köszönöm.
Idézet: „Tulajdonképpen ezt a jelenséget utáljuk leginkább a magas szintű nyelvekben mikrovezérlős környezetben.” Pontosan. Nem a nyelvet kell megtanulni, (az két perc, ha már egy másikat ismersz), hanem a fejlesztői környezet összes gumicicáját! Arról nem is beszélve, hogy mint azt valaki helyesen megjegyezte nemrég, egysoros programnak is szubrutint írnak! Egyszerűen kezd olyanná válni az egész, mint ami kialakult a PC-nél, hogy az erőforrásokat nem tisztelik a fordítók, vegyél nagyobb teljesítményűt, ha ezen nem fut az ócska fordító által fordított ócska kód. |
Bejelentkezés
Hirdetés |