Fórum témák
» Több friss téma |
Egy ilyen áramkörben több tíz(száz)ezer alkatrész, a lehetséges hibák száma ennek sokszorosa.
Legegyszerűbb, ha egy olyan programot teszel bele, amire épp használni szeretnéd. Ha ott mindenben - áramfélvétel, sebesség, stb.. - kifogástalan, akkor az áramkör használható.
Sziasztok
Elég rég nem foglalkoztam PIC-el, szóval nem kinevetni a kérdésem. Ott tartok, hogy működik egy villogó led, pl a Gp0 lábon, vagy egy led világít a Gp1 lábon ha megnyomok egy gombot a GP2 lábon, ez idáig ok. De, hogy tud működni az egész 1 időbe? Mert ugyebár, ha benne van a villogó ciklusába akkor nem tudja, hogy én lenyomtam a nyomógombot. Ráadásul Mikropascalba kezdtem az egészet, így elég kevés példaprogramot találok. Ki tudna valaki segíteni néhány hasznos tippel? üdv
Megpróbálom konyhanyelven elmondani az ötletem:
A villogó ciklusában tegyél egy gombfigyelést. Ha megnyomják a gombot akkor megy a hozzá tartozó led majd folytatja a villogó ciklust. Ha már megy a program, megpróbálhatod azt is, hogy a nyomógombod egy megszakítást okozzon ami majd vezérli a ledet. Keress pédákat IF-ELSE ciklusokra. Ez amolyan feltételes elágazás vagy feltétel teljesülésének figyelése.
Szia
Megszakításokat most nézem át, komoly téma. Ha jól értem akkor az /INT lábra lehet ezt alkalmazni csak. üdv
Éppenséggel két félét is lehetne alkalmazni. Az egyik csak az RB0-ás(INT) vagy az int_RB amikor is a B porton van változás. Az adatlap azon részén amihez interrupt van társítva megtalálhatod a lábak nevét.
Most, hogy átnéztem a 0-tól robotig III, azt hiszem sikerült teljesen összezavarodnom ezzel a megszakítással kapcsolatba.
Az a gond, hogy egyik pillanatba még fet-ek kapcsolgatásárról szól a II. rész, aztán meg ugrik akkorát, hogy nem tudom követni, teljesen kínai. Szóval van egy gomb ami a GP2/int lábon van, közbe megy egy villogó amit megszakítanék a gomb megnyomásával amit kapcsol egy másik led-et egy másik lábon és persze megy közbe a villogó. Helpbe ezt találtam
Ami nekem teljesen kínai, hogyan lehet ezt értelmezni? (bocsi, de ez a megszakításos dolog nekem nagyon magas)
Hagyd a fenébe a megszakítást. Először csinálj egy villogtató ciklust amim belül van egy gomb figyelés.
Először így csináltam.
Nem rossz, csak az a gond, hogy a gomb lenyomást csak 1 másodpercenként figyeli, van esetleg praktikusabb megoldás?
Igen, van. A megszakítás...
Nézd meg a linkeket, amit adtam! Az elv az, hogy fő cilusban nem vársz egy másodpercet, csak annyit, amennyit a nyomógomb pergésmentesítéséhez várni kell. Mondjuk 25 ms-ot. Akkor a nyomógombra 25 ms-onként rá tudsz nézni, de a LED-et nem kapcsolhatod ki-be 25 ms-onként, ezért ahhoz rendelsz egy számlálót, s csak akkor kapcsolod a LED-et, ha a visszaszámlálás lejárt.
Valójában a nyomógomb kezelése sem triviális, hiszen ha a 25 ms-os időszelet többszöröséig lenyomva tartod, akkor nem kell ki-be kapcsolgatni a hozzá rendelt eszközt. A mutatott linkeken azt is leírtam, hogy hogyan lehet egy státuszváltozóval adminisztrálni azt, hogy a legutóbbi lenyomás óta volt-e fölengedve, vagy sem. Mindez interrupt nélkül is megoldható, csak az időzítési lánc lesz pontatlan, hiszen a 25 ms-os késleltetésekre rárakódik mindaz, amit időszeletenként csinálunk (gombfigyelés, státuszfigyelés, visszaszámlálás, LED kapcsolás). De amíg csak a LED villogtatása folyik, addig ez is bőven megfelel.
Köszi
Próbálgatom
Szia!
Lett végül is valami ötleted a problémámra? üd szabi
Mivel nem válaszoltál a kérdésemre:
Ha csak azt kell lepróbálni, hogy az I/O-k működnek, az viszonylag egyszerű. Kell egy led soros ellenállással és egy kapcsoló a felhúzó/lehúzó ellenállással. Ha valamelyik perifériát is tesztelni kell, már nem ilyen egyszerű. Bell leírta, hogy a legjobb próba végtermékben vizsgálni, hogy működik-e?
Szia!
visszaolvasva az előzményeket, szerintem a speciális funciók nem is kellenének, csak némi meggyöző müködés. Gondolom, ha az alap lábak müködnek akkor nem lehet gond. Nézeteim szerint, és a ti általatok kifejtett vélemények alapján elég macera lenne megépíteni a speckó vezérlések kijelzését, de gonodolom a minima lábak megvillogtatása egyszerübb egy teszt progival. Így talán könnyebben segítenétek. üdv szabi
Én a portokkal kezdeném, mindegyikre egy ledet, ki / be kapcsolgatva, aztán 00-FF -ig.
Utána érdemes megvizsgálni minden fájlregisztert 00-tól FF-ig írva / olvasva, minden EEPROM címet, azt a néhány megszakítást. Természetesen nincs akadálya minden utasítás lefuttatásának minden lehetséges paraméterrel és az eredmények ellenőrzésével. (Mikorra kell beadni ezt a feladatot? Szerintem fogj neki mielőbb... senki sem írja meg helyetted.) Idézet: Attól még más funkcióval lehet gond. Csak abban lehetsz biztos, hogy LED villogtatóként működőképes...„Gondolom, ha az alap lábak müködnek akkor nem lehet gond.” Szerintem nincs olyan program (és nem is férne bele a PIC memóriájába) ami minden funkciót letesztelne. Meg nincs is rá szükség, hiszen minden funkciót úgysem lehet egyidejűleg kihasználni.
Kedves Bell!
Titkon reméltem, hogy valaki segít és megírja. De azért köszi a reagálást és a tényfeltárást, hogy van mód a tesztre. üdv szabi Idézet: „Titkon reméltem, hogy valaki segít és megírja.” Miért is írná meg? Ha téged érdekel a téma, úgyis elolvasod az adatlapot, esetleg a PIC16-ra és az MPLAB-ra vonatkozó leírásokat (lásd pl. az ebben a hozzászólásomban a linkeket). Ha viszont nem érdekel a téma, akkor meg úgyis mindegy, hogy működne-e a PIC...
Ha a kiváncsiság motiválna és valóban az áramkör tesztelése lenne a célod, nem mástól várnád a TELJES programot. Rég nekifogtál volna.
Vedd észre, hogy ez elsősorban lehetőség számodra, nem feladat. Végre alkalmad van megismerni egy ilyen csodát, ami az IC-ben van. De ha kényelmes vagy, sose leszel jó szakember. A papír egyetlen dologra jó csak ..., arra is kemény.
Sziasztok!
Szeretnék PIC-ekkel foglalkozni, illetve a használatukat megtanulni. Már van egy 16F84A típusom, ehhez kellene megfelelő égető. Elkezdtem egyet építeni, de inkább mégis vennék egyet készen. Ezt találtam: Bővebben: Link (egész jó ára van, ha jól gondolom) A véleményeteket szeretném kérni róla, hogy jó lesz-e nekem kisérletezési célra, illetve megéri-e megvenni.
üdv, nekem van egy eladó pickit2 klónom, nincs összeforrasztva, de garantáltan jó konstrukció, annak idején mikor csináltam magamnak egyet akkor duplán rendeltem mindent és nyákot is 2őt martam, de mivel az első is tökéletes lett ezért a másodikat nem raktam össze. Ha érdekel írj privátot, ha kell össze is rakom, készre. Van róla cikk a itt a HE-n. smd-s változat.
megtaláltam: http://www.hobbielektronika.hu/kapcsolasok/pickit2_klon_epitese.html ugyanez, ugyanígy néz ki
Sziasztok!
ICD2- vel próbálnék PIC18F4550- est programozni, de mindég a következő hibaüzenetet kapom: Connecting to MPLAB ICD 2 ...Connected Setting Vdd source to target ICDWarn0020: Invalid target device id(expected=0x90, read=0x0) ...Reading ICD Product ID Running ICD Self Test ...Passed MPLAB ICD 2 ready for next operation Tápfesz, bekötések rendben. Mi lehet a hiba? Köszönöm.
PGC és PGD esetleg fordítva lett a PIC-re kötve?
A 18F4550 egy áramkörben van és onnan kap külső tápfeszültséget? Vagy pedig önmagában szeretnéd felprogramozni az ICD2 segítségével?
Ha az utóbbi, akkor a Programmer főmenü > Settings menüpontját választva előbukkanó ablakban be kellene pipálnod a Power fülnél a Power target circuit from MPLAB ICD2 rubrikát.
Sziasztok!
Használni akartam egy 16F84A-son a B port felhúzó ellenállásait, de a fordító valamiért hibát jelzett a BCF OPTION_REG,RBPU utasításra vagyis pontosabban csak az RBPU-ra, de a bit neve helyett 7-est írva már lefordult a kód. A kérdésem tehát, hogy miért hibás, ha azt írom, hogy RBPU? Előre is köszi a válaszokat!
Nezd meg a p16f84.inc mit ir. Azt az elnevezest kell alkalmazni
Szia!
Ha megnézed a kontroller .inc fájlját, akkor láthatod benne, hogy nincs RBPU definiálva. NOT_RBPU van helyette. Ezt használva már működnie kell. |
Bejelentkezés
Hirdetés |