Fórum témák
» Több friss téma |
Megnéztem, sokra nem mentem vele sajnos.
Kérdezek mást, ami végülis a lényeg: Hogy tudom a legegyszerűbben vizsgálni, hogy XY regiszter 0-e?
Arra, hogy XY regiszter nulla vagy sem, arra legjobb a következőt használni:
MOVF XY, F BTFSC STATUS, Z
XOR muveletnel csak akkor "nem tortenik valtozas", ha 0x00 -val XOR-olsz egy masik szamot. Nezd meg a kizaro-vagy (Exclusive-Or) igazsag tablazatat...
Igen, közben rájöttem én is! Most már viszont bekattant az egész programom
Holnap folytatom, mára elég volt ebből 5óra. Köszi a segítséget!
A XOR-al két értéket tudsz összehasonlítani. Ha a két érték azonos, akkor a Z 1-lesz, azaz az eredmény nulla, de ez ebben az esetben csak az elágazás irányának eldöntéshez szükséges információt hordozza magában.
Egy regiszter értéke általában úgy lesz nulla, hogy decrementáljuk előtte, vagy kivonunk belőle valamit, esetleg más logikai műveleteket végzünk előtt, azaz a Z bit azonnal előáll. Ritkán van szükség a potyo által jól meghatározott ellenőrzési módra, ha a program jól van felépítve.
Köszönöm!
Idézet: „Ritkán van szükség a potyo által jól meghatározott ellenőrzési módra, ha a program jól van felépítve.” Azért nagyon jól jön ez az utasítás jól felépített program esetén is, ha a változó értékétől függően akarok valamit csinálni ( "switch - case" -szerűen! ) ! Steve
Nem értem miért nem lehet úgy érteni valamit ahogy azt az ember leírta. Nem azt írtam, hogy nem jó valamire, hanem azt, hogy ritkábban használjuk, mert általában előáll a Z bit egy folyamat közben, és nem máshonnan származó értékek között kell elágaztatni. Nekem alig van olyan programom, amiben van MOVF xy,f. Ezért mertem azt mondani, hogy ritkán...
Idézet: „Azért nagyon jól jön ez az utasítás jól felépített program esetén is, ha a változó értékétől függően akarok valamit csinálni ( "switch - case" -szerűen! ) !” Most mar kivancsiva tettel Hogyan lehet MOVF XY,F / BTFSS STATUS,Z -vel switch-case-t csinalni?
trudnai -->
Idézet: --> ezt láttam a kérdésben, az XOR-al pedig lehet !„XORLW vagy XORWF parancsoknál, ha nem történik változás azt jelzi a STATUS,Z ? Ha igen akkor hogy? (Változásnál 0 vagy 1 lesz?)” watt --> Idézet: bocs, igazad van, én az eredeti kérdéssel vetettem össze a válaszod ! „Ritkán van szükség a potyo által jól meghatározott ellenőrzési módra, ha a program jól van felépítve.” Steve Idézet: „XOR-al pedig lehet” Persze a XOR-al lehet Select Case szerű elágazásokat csinálni, pont erre való, de mi nem a XOR-ról beszéltünk, ha elolvasod a kérdésekre adott válaszokat, hanem a MOVF xy, F-ről, ami arra jó, hogy megnézd egy regiszter tartalma 0-e. Namost a XOR-al is meg lehet ezt nézni, ha 0-val hasonlítod össze a regiszter értéket, de mint jeleztem mi nem erről beszéltünk, ezért lepődtünk meg a válaszodon.
Köszönöm az eddigi észrevételeket és tanácsokat. Hétvégén megnézem a tanácsolt dolgokat.
Mennyire jó, ha az ember saját maga által épített égetőt használ? üdv: Kornél
Ha rendesen meg van csinálva, akkor miért ne lenne jó? Legtöbbünk saját építésű égetővel kezdett és sokan azt használunk még ma is.
Én a gyári pickit2 -t tettem félre "vésztartaléknak"
és egy Szilva féle klónt használok
Sziasztok
12F683 egyik (AN3) analog csatornája figyel egy NTC ellenállást, eddig tökéletesen működött. Ampermérőt közbeiktattam az NTC-n átfolyó áramot vizsgálva. A mérés óta ez a láb meghalt, se bemenet, se kimenetként nem működik. A kérdésem, vajon mit szúrhattam el? A többi láb dolgozik. Üdv
Mit csináltál közben? Ez egy működő készülék volt, hozzá se nyúltál?
Szia
Mellékeltem, ahogy bekötöttem, szerintem teljesen szabályosan csináltam mindent, vagy mégse?
Az árammérőd ténylegesen független a PIC földjétől? A leírtak alapján csak arra lehet következtetni, hogy túlfeszültség vagy statikus töltés kinyírta ennek a lábnak a kivezetését (szakadás) vagy a védődiódát (zárlat).
Ahogy a képen van, csak sima mA mérő funkcióba volt állítva a műszer.
A GP4 láb nincs zárlatba, azt megnéztem, csak egyszerűen kuka. Nem lehet, hogy a multiméter 9V-ja valahogy ráment? De kár, hogy nem védtem le egy 5V-os zenerrel üdv
Nekem az nem világos, hogy mit akartál így mérni? A termisztoron folyó áramot? Csak mert azt meg lehet abból tudni, hogy a mért feszültséget elosztod a 120k ellenállással...
Utólag már én is ..... (nem akartam matekozni
Ha pl ohm meresbe kapcsoltal akkor adhatott feszt, de olyankor sem folynak ott nagy feszultsegek es aramok.
En is inkabb arra gondolnek, hogy valami muanyag alapu poloban voltal vagy szonyegen dolgoztal es nem hasznaltal csuklo foldelest mikozben a muszerednel matattal.
És a 120kohm meg kevés a sztatikus fesz elnyelésére.
Akkor kell oda egy zener, a kérdés, csak az, hogy módosítja-e a mérést, de ez majd kiderül. Mindenesetre köszi a tippeket. Üdv
120kOhm-nak mar eleg nagy az induktivitasa es sok zajt szed fel a kornyezetebol. Azonkivul az AD-nak sem lesz szerencses ekkora impednanciat oda adni - ha jol emlekszem max 20kOhm-ot javasolnak? Zener meg nem tudom eleg gyors-e statikus feltoltodesek levezetesere.
Én inkább egy kondit javasolnék(100n). Valószínű sztatikus töltés miatt ment tönkre.
Sziasztok!
A javaslatotokra megmértem a soros port kimenetének feszültségét,pontosabban próbáltam, de nem sikerült. Lehet, hogy rosszul csináltam. Egy multimétert használtam hozzá. Hogy érthetőbb legyen egy JMD programozót építettem a soros portra. Ezért mértem meg... De felmerült a kérdés bennem, hogy ha fel tudom a progit tölteni a PIC-re és le is tudom tölteni, akkor az égetőm rendesen működik. De lehet, hogy tévedek. Ha valaki tud, akkor erősítsen meg az elképzelésemben. Üdv.: K
Ha be tudod vele programozni, és az ellenőrzés nem mutat eltérést, akkor jól működik, nem kell méregetned semmit.
Még mindig nem sikerült elindítanom a PIC-em (16F877). Arra gondoltam, hogy szűkítsem a hibaforrásokat, kiiktatom az osszcillátor részt és simán a belső oszcillátorra hagyatkozom. Így ha jól tudom 10.4MHz-s oszcim lesz.
A kérdésem: ebben az esetben a PIC oszcillátor lábára közvetlen +5V-ot adok? Nem teszi tönkre? Természetesen a STATUS-ban is beállítom a megfelelő osszcillátort a programban. Tanácstalan vagyok. Elsőnek, csak egy LED ki-be kapcsolását akartam megcsinálni, de feladja a leckét. Próbáltam az osszcillátor kört forrasztva (dugdosós próbapanelom van) is, hogy ne az legyen a probléma nincs megfelelő kontaktus. De semmi. Remélem megfejtem a problémát nem sokára. Üdv.:Kornél
Még mindig nem sikerült elindítanom a PIC-em (16F877). Arra gondoltam, hogy szűkítsem a hibaforrásokat, kiiktatom az osszcillátor részt és simán a belső oszcillátorra hagyatkozom. Így ha jól tudom 10.4MHz-s oszcim lesz.
A kérdésem: ebben az esetben a PIC oszcillátor lábára közvetlen +5V-ot adok? Nem teszi tönkre? Természetesen a STATUS-ban is beállítom a megfelelő osszcillátort a programban. Tanácstalan vagyok. Elsőnek, csak egy LED ki-be kapcsolását akartam megcsinálni, de feladja a leckét. Próbáltam az osszcillátor kört forrasztva (dugdosós próbapanelom van) is, hogy ne az legyen a probléma nincs megfelelő kontaktus. De semmi. Remélem megfejtem a problémát nem sokára. Üdv.:Kornél
Szia!
Valamit félreértettél az adatlapon, vagy a típusszám nem jó. - A 16F877(A) -ben nincs belső oszcillátor. - Nem használható a OSC1 és OSC2 digotális bemenetnek. Ha ezek a funkciók is kellenek, akkor 16F887 -et kell alkalmazni. - Annak a belső oszcillátora 8MHz-es, amit le lehet osztani 4, 2, 1, 0.5, 0.25, 0.125 MHz-re vagy használható még a belső 31kHz lehetőség is. |
Bejelentkezés
Hirdetés |