Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   376 / 1319
(#) watt válasza googa hozzászólására (») Jan 2, 2009 /
 
Nem tudja.
De miért kell neked olyan konstrukcióban gondolkodni, ami nem a nyelvhez illik? Használd a felkínált lehetőségeket és igazítsd hozzá a feladat megoldássát. Ha a feladat túl bonyolult, akkor a kód is az lesz. Ezt nem lehet elkerülni. Esetleg használj más nyelvet.
(#) icserny válasza slogan hozzászólására (») Jan 2, 2009 /
 
Idézet:
„Tehát ha én megoldom ,kb. 120 Ω -al ,akkor ,ha folyamatosan vezérlem ,mondjuk pwm -el megoldható ,hogy igen csökkentett fénnyel világítson ,viszont ha kell villanjon nagyot ?”

Megoldható, de az is megoldható, hogy egynél több lábbal vezéreld - különböző értékű ellenállásokon keresztül, s akkor nem kell a PWM-mel bohóckodni.
(#) watt válasza icserny hozzászólására (») Jan 2, 2009 /
 
Nem rossz ötlet, tetszik a megoldás! Akár az áramokat is lehet növelni tranyók nélkül is, figyelembe véve a PIC maximális terhelhetőségét a portokra vonatkozóan(adatlap)!
(#) slogan válasza icserny hozzászólására (») Jan 2, 2009 /
 
Köszönöm ,jó ötlet....
Csak minél több ledet kéne vezérelnem egy PIC-el ....
(#) slogan válasza watt hozzászólására (») Jan 2, 2009 /
 
Savazz csak nyugodtan !

Már kijavítottam....
(#) watt válasza slogan hozzászólására (») Jan 2, 2009 /
 
A több lábas megoldás nem zárja ki a több LED-et. Te miből gondoltad, hogy ez probléma? A probléma a PIC össz áramterhelhetősége lehet. Ha annál több kell, akkor tranyókat kell vezérelni és kész...

Idézet:
„Savazz csak nyugodtan !”

Láttam már utána, csak az már új lapon volt, és az ív már elsült!
(#) icserny válasza slogan hozzászólására (») Jan 2, 2009 /
 
Vannak I/O bővítő IC-k is: pl. MCP23017
(#) trudnai válasza googa hozzászólására (») Jan 2, 2009 /
 
Idézet:
„Annyira nehéz IF...THEN...ELSE elégazásokat csinálni ASM-ben, decfsz-el, meg incfsz-el. Annyi változó kell, meg goto, hogy belebuggyanok. Nincs könnyebb módja? Nem tudja az MPASM az IF...THEN...ELSE, vagy a DO...WHILE-t értelmezni?”


Ezt most nem ertem, miert kell az IF..THEN..ELSE -hez valtozo? Amugy meg csinalj makrot belole... En SWITCH..CASE -bol csinaltam makrokat anno.

Masik lehetoseg, hogy feladod az ASM nyelvu programozast es C-ben bajlodsz...
(#) slogan hozzászólása Jan 2, 2009 /
 
Pici segítség kéne

LIST P=16F877
#INCLUDE "P16F877.INC"
__CONFIG _XT_OSC&_CP_OFF&_WDT_OFF&_LVP_OFF
CBLOCK 0x20
T1
T2
T3
ENDC

ORG 0

Át kéne írnom a letöltő miatt 0x03 -ra ,de hogy kell ?
CBLOCK 0x03 ,de akkor org mi ?
(#) Braf válasza slogan hozzászólására (») Jan 2, 2009 /
 
CBLOCK 0x20 az a RAM ban "foglalja" le a helyet (illetve csak számokat ad az alatta elhelyezett címeknek sorban egyessével 0x20 tól)
Az ORG szabja meg hogy hová kerüljenek az utánna álló utasítások a programmemóriában. Tehát az ORG 0-val az első utasítás a 0-ás címre fog kerülni a második az 1es re és így tovább.
Neked az ORG 0 át kell átírnod ORG 3 ra így ott lesz a programod kezdete.
(#) slogan válasza Braf hozzászólására (») Jan 2, 2009 /
 
Köszönöm szépen !
(#) trudnai válasza slogan hozzászólására (») Jan 2, 2009 /
 
A CBLOCK-nek es az ORG-nak semmi koze egymashoz! A CBLOCK az konstans definialo, es leggyakrabban a file regiszterek kiosztasara hasznaljak, mig az ORG az a program memoria cimet hatarozza meg.
(#) slogan válasza trudnai hozzászólására (») Jan 2, 2009 /
 
Köszönöm ,igyekszem megtanulni....
Eddig csak írogattam
(#) slogan válasza Braf hozzászólására (») Jan 2, 2009 /
 
Ismét egy kis segítségre van szükségem....

DELAY
MOVLW d'10'
MOVWF T1
DEL
MOVLW d'10'
MOVWF T2
DEL1
MOVLW d'255'
MOVWF T3
DEL2

NOP
NOP
NOP
NOP
DECFSZ T3,f
GOTO DEL2
DECFSZ T2,f
GOTO DEL1
DECFSZ T1,f
GOTO DEL
RETURN
END
Ami kevés "programot" írtam (inkább csak szórakoztam),általában ezt a késleltetést szoktam használni ,de nem igazán értem.

Ezzel megoldható a led "aktív" és "passzív" ideje is ?
Meg aztán a projectemben valami "randomításra " lenne szükség....

Szintén felmerülő kérdés : ha mondjuk 1 ledet rákötök PORTD,0-ra egy Xellemállattal,valamint PORTD,1 -re Yellenállattal és vezérlem ,nem gáz ,ha a port kimenet de mégis az ellenálláson jut rá fesz ?
(#) slogan hozzászólása Jan 2, 2009 /
 
MOVLW 128 ,az nem egyenlő MOVLW B'10000000' ?
(#) szilva válasza slogan hozzászólására (») Jan 2, 2009 /
 
Nem, ha nem decimális a radix.
(#) slogan válasza szilva hozzászólására (») Jan 2, 2009 /
 
Köszönöm szépen!
El sem hiszem ,de magamtól át tudtam állítani
(#) icserny válasza slogan hozzászólására (») Jan 3, 2009 /
 
Idézet:
„MOVLW 128 ,az nem egyenlő MOVLW B'10000000' ?”

Írd így:

  1. MOVLW d'128'
(#) icserny válasza slogan hozzászólására (») Jan 3, 2009 /
 
Idézet:
„Szintén felmerülő kérdés : ha mondjuk 1 ledet rákötök PORTD,0-ra egy Xellemállattal,valamint PORTD,1 -re Yellenállattal és vezérlem ,nem gáz ,ha a port kimenet de mégis az ellenálláson jut rá fesz ?”
Elkerülhető a fölösleges terhelés, ha a nem használt lábat bemenetnek állítod (TRIS bit=1).

Az is lehetséges megoldás, ha egy-egy diódát teszel a kimenetekre (természetesen azok nyitófeszültségét is be kell kalkulálni...).
(#) gulasoft hozzászólása Jan 3, 2009 /
 
Emlékeztek még, hogy szenvedtem a 16F726-al meg a ds1820-al?
Megcsináltam ugyan azt a kapcsolást egy 18f452-vel (csak ugye ez is felületszerelt, azután csinálni kellett hozzá nyákot, és nem volt itthon tüskesor) és a kód csont nélkül megy. Ha ekkora különbség van a 16F és a 18F között, akkor azt hiszem a 16F-et elfelejtem, árban úgysincs szerintem nagy különbség.
(#) watt válasza gulasoft hozzászólására (») Jan 3, 2009 /
 
Meg ne sértődj, de itt nem a PIC-ekben van a hiba, ezt biztosra veheted! Egyébiránt én is a 18F-es szériát tartom az ésszerű választásnak, csak sokan kezdők azt hiszik, hogy a nagyobb számmal kezdődőek nagyobb nehézséget fognak okozni! Hiába mondja az ember, hogy ez nem így van, na de mindegy...
(#) trudnai válasza gulasoft hozzászólására (») Jan 3, 2009 /
 
Idézet:
„Ha ekkora különbség van a 16F és a 18F között, akkor azt hiszem a 16F-et elfelejtem, árban úgysincs szerintem nagy különbség.”


Mar egyszer emlitettem volt, hogy a hiba nem a PIC-ben van. Az, hogy a 18F-el megy, az adodhat gyartasi szeriabol fakado elteresek miatt is, es adodhat abbol is, hogy pici mas az elektronika benne, de ha a specifikacionak megfeleloen van az a panel megepitve akkor ilyen kulonbseggel nem szabadna, hogy talalkozz. Lehet megvaltozik a homerseklet vagy a paratartalom vagy 1 tizedet a bemeno feszultsegszint es maris fellep a hiba.

Keresd meg a hiba okat es ha megvan akkor menj csak tovabb. A hibakeresesnel szisztematikussagot alkalmazz, kapkodva nagyon nehez ralelni a forrasara. Probald meg eloszor kizarni, hogy az oscillator okozza-e a hibat (kapcsold pl belso oscira). Zavarszureseket helyezz el mindenhova, megha felesleges is.
(#) watt válasza trudnai hozzászólására (») Jan 3, 2009 /
 
Én inkább olyasmire tudok gondlni, hogy bank és lapváltások hibás kezelése, prifériák helytelen konfigurálása, portok eltérő elektronikai kialakításából adódható vezérlési eltérések, stb. Szóval, a fő gond a PIC hiányos ismerete, szerintem...
(#) szilva válasza gulasoft hozzászólására (») Jan 3, 2009 /
 
Hát én végképp nem értem, mi a baj a 16F-ekkel. Nekem a 16F946-on atomstabilan megy az 1-wire komm. már napok óta a DS1821-gyel.

Ráadásul az egészet CCS C-ben írtam meg, mondván, így kényelmesebb a programszerkezetbe belenyúlni, és beletenni az órába a plusz funkciókat. Hála az előrelátásomnak, az állapotgépes megoldás miatt csak az új funkciókat megvalósító kis rutinkákat, programrészleteket kellett megírni, valamint az állapottáblába felvenni az új működési állapotokat és az azokat kiváltó eseményeket.

Nem szeretem reklámozni magam, de azt hiszem, érdemes rászánni egy kis időt és megérteni, mit csinál ez a kód, mert szerintem nagyon hasznos. Főleg egy ilyen kütyünél, ahol van összesen 3 gomb és minden működési (kijelzési) állapotban mást és mást jelentenek a gombok, plusz még létezik rövid, hosszú és lenyomva tartott-ismételt nyomás is.
(#) szilva válasza watt hozzászólására (») Jan 3, 2009 /
 
Ha jól emlékszem, anno CCS C-vel próbálta az 1-wire-t a kollega. Akkor adtam példaprogit, ami asm-ben jól működik, és javasoltuk, hogy a lefordított kódot nézze meg, a portkezelés hogyan történik.

Azóta megírtam a CCS C-s 1-wire rutinjaimat és én is nézegettem elég sűrűn a CCS C helpjét is, valamint a fordított kódot is. Nem mindegy ugyanis, hogy a TRIS regisztereket mikor írja, illetve hogy írja-e minden portpiszkálásnál, ha nem figyel oda az ember, keletkezhetnek fals tüskék, és onnantól kezdve lőttek a kommunikációnak. Egyébként figyelmesen olvasva a CCS C doksiját kiderül, hogy írja is, melyik utasítás foglalkozik és melyik nem a beállított I/O móddal.

A másik, amit lehet, hogy a Dallas doksi nem hangsúlyoz eléggé ki, de a 1821 is úgy működik, hogy "reset-parancs-válasz". A következő parancsot nem fogja megérteni, ha nem kap előtte egy új reset-et. Ez nekem is egy-két félórámba került, mire ez világossá vált.
(#) slogan hozzászólása Jan 3, 2009 /
 
Sziasztok !

Van valakinek linkje esetleg valami hasonlóhoz ,ami nem on-line ,hanem a gépen fut ?

Köszicalculator
(#) watt válasza slogan hozzászólására (») Jan 3, 2009 /
 
Ilyen várakozásokkal akarod teleszórni a kódodat? Tudod mi a különbség várakozás és időzítés között?
Csak nagyon alap(buta) programok működhetnek várakozásokkal. Érdemes a Timerekkel foglalkoznod, de ahogy én érzem elég nagy hiányosságok vannak a programszervezés terén is, nem különben az elektronikai alapok körül. Érdemes lenne ezeket pótolnod!
(#) slogan válasza watt hozzászólására (») Jan 3, 2009 /
 
na ja...
de hát ez a miértek hogyanok topicja
(#) slogan válasza watt hozzászólására (») Jan 3, 2009 /
 
Tanácsodra nézegetem (már egy ideje) Topi : Nulláról a robotokig c. cikkét.
Nagyon tanulságos ,de -úgy látszik- számomra még mindig nem elég bő.....

Van itt az OPTION REG -el kapcsolatos téma ,ahol is az osztókról van szó: link

namármost ha Opt. reg 111 ,akkor nem látom a ledeket villogni (ill. nagy frekivel talán) ,hogy tudok még nagyobb osztást (256 -nál nagyobbat) csinálni ?
(#) watt válasza slogan hozzászólására (») Jan 3, 2009 /
 
Feltettem az - oldalamra - egy új - lapot -, amin hivatkozásokat találsz PIC-es témában, amin el lehet indulni. Menet közben még bővítem, ha olyan oldalt találok, ami érdemes rá (minőségi javaslatokat elfogadok!).
Az elektronikai hiányosságokat pedig ne itt próbáld beszerezni, mert ez nem az a topic.
Következő: »»   376 / 1319
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem