A privát üzenet rendszerben karbantartásokat végzünk. Lassulások előfordulhatnak!
Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   195 / 1319
(#) trudnai válasza PetAd hozzászólására (») Ápr 25, 2008 /
 
Nem nagyon ismerem a CCSC-t, de abban ha jol latim "#fuses" kulcsszoval lehet megadni a konfiguraciot. A Devices konyvtarban vannak a header file-ok, es ott ha megnezed az elejen a megjegyzesben ott vannak a hasznalhato Fuses kulcsszavak, tehat pl ha latod, hogy INTRC is ott van, akkor:

#fuses INTRC, NOWDT, NOMCLR, NOPROTECT

(persze a NOWDT -nek, meg a NOMCLR stb is ott kell legyen emlitve, hogy azt ismeri az adott eszkoz)

Nekem csak egy heralt CCSC van amit az MPLAB melle adnak, abban van egy help file, amibol azt olvasom, hogy van egy View menu, es abban egy Valid fuses nevu menupont amiben meg lehet nezni mik hasznalhatoak es az egyes fuse-ok rovid leirasa is alkkor ott van. Ha nincs akkor marad a header file es a jelentesek kitalalasa a DataSheet-bol...

(#) potyo válasza PetAd hozzászólására (») Ápr 25, 2008 /
 
Pedig jobb lenne, ha asm-ben kezdenél. A CCS elég elrugaszkodott nyelv, ráadásul egy csomó mindent nem lehet/másképp kell, mint a rendes C-ben.

Egyébként nézz bele a header fájlokba, ott benne van a lista a konfig bitek elnevezéseiről.
(#) watt válasza watt hozzászólására (») Ápr 25, 2008 /
 
Sikerült kihámoznom!
Ha érdekel valakit kérdezzen, nem akarom rátukmálni a részleteket senkire...(épp most volt szó hibakezelésről amúgy...)
Még annyi infót az elsőre belinkelt kalkulátorhoz, hogy ott is lehet hex formátumban bevinni adatot, csak elé kell írni bájtonként egy % jelet.
(#) trudnai válasza watt hozzászólására (») Ápr 25, 2008 /
 
Engem erdekelne, szerintem sokunknak okulas lenne
(#) watt válasza trudnai hozzászólására (») Ápr 25, 2008 /
 
Oké. Ha délután nem felejtem el, akkor felteszem azt az exel táblát, amiben kézzel számolgattam bitenként két bájt crc-jét, az mindent elmond.
Például tök lazán kijelentik, hogy reverse byte mode, aztán találd ki, hogy ez mit jelent! Én először azt hittem hogy a bájtokat és azokon belül a biteket is megfordítják érkezésileg. Aztán mikor ez nem jött be, azt gondoltam, hogy akkor csak a bájtok érkezési sorrendjét fordítják meg. Mikor így sem jött ki, akkor úgy próbáltam, hogy a bájtok sorrendje nem vátozik, csak minden bájton belül a bitek sorrendje cserélődik fel. Na így már jó lett, csak akkor mi a rákért hívják bájt reverse-nek? Na ennyit előzetesben. Egyébkén össze fogom foglalni a lényeget konyhanyelven(ahogy már a táblázatos megoldásnál megtettem), és felteszem azt is az oldalamra. Nem sokat akarok a polinomokról írogatni, mert szerintem nem attól érti meg valaki, hogy hogyan írjon hozzá rutint, hanem abból a folyamatból, ahogy gyalog levezeti az osztást(mod2 módban, azaz XOR). Akkor délután visszatérek erre...
(#) watt válasza watt hozzászólására (») Ápr 25, 2008 /
 
Csatoltam az excel táblát.
A polinomokról talán néhány szót:
A CRC-16 szabványos polinomja az x16+x15+x2+1, ahol az x=2. Ez tehát egy binásris szám.
1-1000-0000-0000-0101
Látható, hogy ott van 1, ahol a polinom elemei jelzik.
A műveleteknél észre lehet venni, hogy az x16 helyiértékét nem használjuk, mert az mindig egy. Ezért a számításokban használt polinom generátor kód, a 0x8005h (1000-0000-0000-0101). Ezt láthatjátok a táblázatokban is.
A polinominális osztáskor nem kezeljük az átviteleket, azokat egyedül jelzésre használjuk, amikor is a XOR műveletet kell elvégezni a soron következő 16biten. Ezeket más színnel jelöltem a táblában. Amikor többet lépek ,akkor ott jelzem, hogy éppen hanyadik shiftelésnél járunk. Ez az egész tologatás egyébként nem más, mint bináris osztás mod2 módban. Erről részletesen ezen a linken olvashattok.
Remélem tudjátok használni valamire a táblát!
watt.
(#) NeoCool hozzászólása Ápr 25, 2008 /
 
Szeretnek epiteni egy olyan szerkentyut, ami nagy mennyisegu szoveg tarolasara kepes, es megjeleniteni azt megfelelo felosztas szerint namarmost az a kerdesem, hogy hogyan lehet eltarolni kb 5MB-nyi adatot, amit PIC segitsegevel dolgoznek fel majd jelenitenek meg egy LCD-n
(#) watt válasza NeoCool hozzászólására (») Ápr 25, 2008 /
 
SD kártyára.
(#) NeoCool válasza watt hozzászólására (») Ápr 25, 2008 /
 
valami linket nem tudnal adni, h ennek pontosabban hol lehetne utananezni?
(#) watt válasza NeoCool hozzászólására (») Ápr 25, 2008 /
 
Most hirtelen nem tudok konkrét címet, de van komplett példa a microchip oldalán, ha jól emlékszem. Az oldalamon meg van leírás az MMC és SD kártyákról.
(#) NeoCool válasza watt hozzászólására (») Ápr 25, 2008 /
 
Kossz szepen, utananezek
(#) watt válasza watt hozzászólására (») Ápr 26, 2008 /
 
Elkészült a kis leírás az oldalamon is... WATTMEP
(#) pepe33 hozzászólása Ápr 26, 2008 /
 
Sziasztok !

PIC-el szeretnék megoldani egy analóg jel mérését.
De sajnos nem csak pozitiv hanem negatív is lehet.

Ebben az esetben a VREF- pontra köthetek mondjuk -5voltot a VREF+ ra monduj +5 voltot és az analóg bemeneten mért érték ha 0 akkor -5V ha pedig 1024 akkor +5V ?

Vagy ha ez így nem működik akkor hogyan lehetne megvalósitani negatív feszültség mérést ?
(#) kobold válasza pepe33 hozzászólására (») Ápr 26, 2008 /
 
Nem igazán kellene GND alá vinni az analóg bemenetet...
Inkább tegyél elé egy műveleti erősítőt, összeadóként használva. Ha a max. bemenő jel 5 V, a min. pedig -5 V, akkor állandó 5 V-hoz kell hozzáadni az analóg jelet, így 0 ... 10 V-ot kapsz, amit ellenállásosztóval már 0 ... 5 V-ra tudsz alakítani (vagy ami a Vref alapján szükséges).
(#) menyus hozzászólása Ápr 26, 2008 /
 
Sziasztok!

Lenne egy újabb kérdésem a GSM modullal kapcsolatban. Caller ID funkciót szeretnék vele összehozni. A modul miután azonosította a hívószámot kiküld egy ASCII adatsort ami tartalmazza a hívószámot és még pár adatot a hívásra vonatkozóan (hívásformátum...stb). Az RCREG be eleve csak 8 bit fér el, ez jóval több és ezen már elakadtam.

A küldött adat így néz ki:

+CLIP: "+3622123456",145,"",,"",0

Kérdésem hogy ebből az adatsorból hogyan lehet "kirostálni" csak a hívószámot, hogy aztán az RCREG ből át tudjam rakni egy regiszterbe bitenkénti összehasonlításhoz?

Előre is köszönöm.
(#) kobold válasza menyus hozzászólására (») Ápr 26, 2008 /
 
Szerintem először válogatás nélkül kiolvasni mindent RCREG-ből, ahogy telik, és inkrementálisan regiszterekbe pakolni; a lezáró nulla után már tudod, melyik bitek hordozzák a számot, kilépteted a felesleget, és kész.
(#) menyus válasza kobold hozzászólására (») Ápr 26, 2008 /
 
Igen de már a hívószám is több mint 8 bit... És előtte utána is van "felesleg".. Bocs ha túl láma a kérdés de ilyet még nem csináltam.
(#) kobold válasza menyus hozzászólására (») Ápr 26, 2008 /
 
Emlékeim szerint ha RCREG megtelik az első byte-tal, RCIF bebillen, és megszakítást is okoz, ha RCIE 1-ben van (erről neked kell gondoskodnod). Ekkor kiolvasod RCREG-et, közben veheti a második byte-ot, stb., a lezáró karakterig (CR, LF, vagy ami jön). Minden kiolvasott byte-ot átmásolsz egy blokkba, és ha kész az összes vétele, akkor már eldöntheted, mire van szükséged; ha kell a +36 is, akkor a legelsőként írt regiszterben kezdesz, ha nem kell, a másodikban, az alsó byte-tal, és annyi byte kell még, amennyi a számot hordozza, elvileg az első vessző-karakterig tart a telefonszám, vagyis ASCII 0x21-ig, ha jól emlékszem a kódra.
(#) kobold válasza kobold hozzászólására (») Ápr 26, 2008 /
 
Idézet:
„a másodikban, az alsó byte-tal”

Félbyte-ot, nibble-t akartam írni...
(#) menyus válasza kobold hozzászólására (») Ápr 26, 2008 /
 
Köszönöm, nekifutok. Remélem összejön, bár így elsőre nekem nehéznek látszik.

Köszi
(#) ledesgyerek hozzászólása Ápr 27, 2008 /
 
Hali mindenkinek!
Szeretnék C-nyelven programozni ezért kerestem könyvet. Találtam kettő könyvet:
Programozzunk C nyelven
Programozzunk C++ nyelven
Kérdésem az lenne, hogy tanulta valaki ezeket a nyelveket könyvből és lehet e így megtanulni, illetve ezek a könyvek jók e erre. Ha nem, tudna valaki ajánlani nekem könyvet?

Ezeket a könyveket a Libribe találtam (remélem nem baj hogy leírtam az áruház nevét nem reklámnak szántam!).

Előre is köszönöm a segítséget!
(#) Norberto válasza ledesgyerek hozzászólására (») Ápr 27, 2008 /
 
A lehető legjobb könyv csatolva.
(#) ledesgyerek válasza Norberto hozzászólására (») Ápr 27, 2008 /
 
Megpróbálom elolvasni mert látom elég sújos anyag!
Azért kösz a doksit!
(#) NickE válasza ledesgyerek hozzászólására (») Ápr 27, 2008 /
 
Az általad említett könyvek szerintem nagyon jók - bár az ilyen minősítések mindig szubjektívek. Én több programozási nyelvet tanultam meg Computerbooks könyvekből, nekem bejönnek. Igaz, több könyvet is olvastam, de önmagukban is jók. A C++ -ról megjegyzem, hogy 8 bites kontrollerekhez nem hiszem, hogy fogod használni, az picit nehéz és alapvető különbségek vannak a C és C++ között, az utóbbi inkább a OOP miatt érdekes. Kezdetben elég, ha C-vel foglalkozol.
(#) ledesgyerek válasza NickE hozzászólására (») Ápr 27, 2008 /
 
Én nekem arra kéne ez a nyelv hogy PIC-eket programozzak másra egyenlőre nem ez is elég nehéz dolog.

Tehát szerinted érdemes ezt a könyvet megvenni?
Nekem nagyon alapról kéne megtanulni mert ismereteim a programozásról = a 0-val.
(#) potyo válasza ledesgyerek hozzászólására (») Ápr 28, 2008 /
 
Én azt tanácsolom, asm-el kezdj.
(#) trudnai válasza NickE hozzászólására (») Ápr 28, 2008 /
 
Bocsanat, hogy kozbe szolok, de mikor mikrokontrollerre fejleszt az ember gyakran olyan a feladat jellege, hogy PC-re is kell egy alkalmazast hozza fejleszteni. Ehhez pedig a C++ jol jon.

Firmware fejlesztesnel is mar kezdenek amugy C++ implementaciokat behozni, ezek nyilvan a nagyobb kontrollereknel hasznalatosak, es egy nagyon nagy elonye van a sima C-hez kepest, nevezetesen, hogy a C++ -ban erosebb tipus ellenorzes van, igy elmeletileg kevesebb hibalehetoseg adodik a fejlesztes soran. Nyilvan ez meg mindig nem Pascal es foleg nem Ada, de hat ha mar ennyire mazochistak vagyunk, hogy C-ben irunk mindent akkor elkepzelheto, hogy C++ fele menni nem butasag.
(#) menyus válasza menyus hozzászólására (») Ápr 28, 2008 /
 
Hát, ez egyelőre nekem még magas...Ott indult a dolog hogy megszámoltam a küldött adat ASCII karaktereinek számát, ez 32. Tehát létrehoztam 4 regisztert mondván abban pont elfér. Aztán jobban átgondolva rájöttem hogy nem igazán jó ez az út mert ahhoz hogy az összes ASCII karaktert ábrázolni lehessen binárisan, ahhoz biza 1 bájt kell karakterenként. Ezt még "rágnom kell" míg megértem hogyan kell csinálni.
(#) NickE válasza trudnai hozzászólására (») Ápr 28, 2008 /
 
Igen, de azt írta, hogy teljesen kezdő.
Azt is megjegyzem, hogy hiába csak PIC miatt szeretne valaki programozást tanulni, szerintem gyorsabban lehet eredményt elérni, ha az alapokat PC-n tanulja meg és utána tanulja hozzá a PIC-es dolgokat.
(#) NickE válasza menyus hozzászólására (») Ápr 28, 2008 /
 
Milyen gsm modult/terminált használsz?
Következő: »»   195 / 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