Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
A WPB-ben minden inverz pipát kiszedtem, az írást a leglassabbra állítottam , és késleltetést is tetem a program elejére. Mégsem írja a PIC-re!
Egyébként miért kell ki-be kapcsolni (mikor a program kiírja a képernyőre) égetés közben a Vpp-t?
Sziasztok!
Szeretnék egy kis segítséget kérni. Hexában mit jelent ez a pár sor: 0x0000007F 0x00001F00 vagy pl. 0x000007FF Köszönöm előre is!
Bármit jelenthet. Pont azt, aminek értelmezi valami.
Hol láttad ezeket a sorokat?
Egy PIC-es programot elemzek!
Hello.
Szeretnék kérdezni 1 eccerü dolgot de nekem most ez nem az. Az alábbi kapcsolás van kialakitva 1 készülékbe. A lényeg hogy 5v-ot kapcsolok a picre 1k ellenálláson keresztül le kellene kezeljem hogy nem 0v van a bemeneten. Hogy tudnám c be lekerdezni mert itt ugye nem 1 vagy 0 van a code-ba ja és 8 lábu pic nincs analog bemenet rajta. Köszi előre is
Mit is szeretnél pontosan?
A logikai szintre vagy kiváncsi, vagy hogy a bemeneti feszültség adott határokon belül van-e? Ha csak az 5V megléte a kérdés (és a pontos értéke lényegtelen), akkor elegendő a láb logikai szintjének lekérdezése: if PORTA { } Megj.: A helyesírásod nem teljesen helyes...
Ez egyszeru: Digitalis bemenetre kapcsolod a megfelelo labat, es megnezed azon a porton 0 vagy 1 van-e. Bemenet tipusatol fuggoen ha TTL-es akkor 1.8V kornyeke felett mar 1-nek latszik, ha ST-s (Smitt Triggeres) akkor valahol 4V kornyeken fog felkapcsolni -- adatlapbl ezek az ertekek kiderithetoek.
Ha rajzolsz egy kapcsolasi rajzot (nem ezt az abrat, hanem igazi kapcsi rajzot), akkor abbol tobbre megyunk. Legyen feltuntetve minden akatresz, legyenek bekotve Vdd Vss is stb szoval komplett aramkor kellene a pontos valaszhoz.
Idézet: 32 bites számkonstansokat. „Hexában mit jelent ez a pár sor: 0x0000007F 0x00001F00 vagy pl. 0x000007FF?” Idézet: Pedig akár lehetne is! (pl. PIC12F675) „8 lábu pic nincs analog bemenet rajta.”
Próbáltátok már a Microchip MCP79410 óra IC-t? Az appnote-okban található ajánlások alapján megépítettem, működik, de a 02h (hours) regiszter 5-ik bitje nekem billeg, ha tapizom a kvarcot vagy közel teszem a kezem. Sőt sokszor rosszul indul, be van billenve alapból az 5-ik bit, pedig nem kellene... Csináltam többet is, mind egyformán működik.
Elvileg a hours regiszterbe soha nem lehetne 00110001b érték, mert ez így 24h módban van és 31 óra az időpont. Minden más jó eddigi teszek alapján, csak ez a 02h reg problémás.
Köszi mindenkinek aki segit.
Rajzoltam hozzá 1 rajzot. A bemeneten 2,75v van vagy 0V.Nem tudtam 1 vagy 0 értéket olvasni a porton.Vagy lehet hogy nem jól látom? Köszi
Hali
Ez a lab tobb funkcioval rendelkezik, tehat ha bemenetkent akarod hasznalni, a tobbi funkciot le kellene tiltani. Pl belso oszci modban lehet orajel kimenet, lehet T1G, vagyis a TMR1 kapuzas, lehet komparator. Tehat minden egyeb funkciot elobb le kellene tiltani, es utana megnezni mit csinal. Lehetne esetleg latni a forrast amivel probalkozol?
Segítséget kérek az MPLAB-IDE C18-as program működéséhez.
PICKIT2-őt építenék, de nem pic18f2550-el. A csavar csak annyi lenne hogy PIC18f4550-el (azonos család). Az eredeti microchip.com oldalról leszedett progit sem tudom beforgatni(MPLAB IDE 8.46 C18) ,ami a 2550-es kontrollerhez lett írva, de, nincs hex . Mindig valami hibát jelez! Kicsit idegesítő! Nem szaporítanám a szót, ennyi a fordító üzenete : Executing: "D:\MCC18\bin\mcc18.exe" -p=18F2550 /i"C:\PICkit_2\Firmware" -I"c:\mcc18\h" "main.c" -fo="C:\PICkit_2\Firmware\_output\main.o" -D__DEBUG -O- D:\Program Files\Microchip\Project_mintak\Minta_4\main.c:41:Error [1027] unable to locate 'typedefs.h' D:\Program Files\Microchip\Project_mintak\Minta_4\main.c:42:Error [1027] unable to locate 'usb.h' D:\Program Files\Microchip\Project_mintak\Minta_4\main.c:45:Error [1027] unable to locate 'usb_compile_time_validation.h' D:\Program Files\Microchip\Project_mintak\Minta_4\main.c:46:Error [1027] unable to locate 'pickit.h' D:\Program Files\Microchip\Project_mintak\Minta_4\main.c:47:Error [1027] unable to locate 'vpp.h' Halting build on first failure as requested. ---------------------------------------------------------------------- Köszönöm a segítséget.
Szia!
- Lényegesen rövidebb elérési útra van csak lehetőség a fordító programban. - Ha a PORTE 0..2 és a PORTD 7..0 lábait nem hagyod lebegni, akkor minden további következmény nélkül be lehet programozni a 18F2550 -re fordított kódot a 18F4550 -be is.
Szerintem Te is elvesztetted a fonalat a különböző fejlesztőrendszer telepítések között! Nekem is volt hasonló problémám, amikor meg akartam adni, hova települjenek az IDE programjai. A legjobb, ha az ember hagyja az alapértelmezett helyre telepíteni a dolgokat.
Az 'autoexec.nt' nevű fájlt sajnos kézzel kell helyretenni.
Sziasztok
Hogyan tudom le elenőrizni, hogy müködik-e egy pic(16f690) vagy sem?
Én úgy szoktam, hogy valamelyik lábára küldök ki váltakozva alacsony és magas értéket. Aztán egy led-del láthatóvá lehet tenni, hogy van változás vagy nincs.
Igen, de ekkor csak az I/o van ellenőrizve. A többi perifériához több program kell.
Bő két órányi szenvedés után rájöttem hogy valamiért nem működik jól a 24bit bináris->8digit BCD átalakító rutinom amit még anno valamikor valahonnan lőttem a netről. Kerestem másikat de az meg még rosszabb, vagy csak én nem tudom életre kelteni.
Tud valaki mutatni nekem egy olyat ami tuti hogy jó? Assembly-ben kellene és 18F-re... Mindjárt feladom és inkább írok egyet magam.
Szia!
Ha jól emlékszen a shift -előst csináltad meg, abban az a buktató, hogy a BCD digitek változó területének címe 4-gyel osztható címen kell kezdődnie. Talán beszúrtál elé néhány változót?.? Ha nem tudod garantálni a cÍmet, akkor a belső ciklusban az
Szia!
Ezt használtam eddig, ez a hibás:
Nem tudom már hogy honnan van. Az FSR0-ás mutatót én írtam át FSR2-re mert az előbbit más célra használom. Illetve én bontottam ki az eredményt a nyolc külön bájba.
Szia!
Én írtam át a belinkeltet 16C73 -ra írt verziót 18F252 -re és 18F2523 -ra. Tényleg a változó elhelyezésével lesz a gond:
Esetleg a PRODL regisztert egy megszakítás használja? Melyik számra nem működik jól?
PRODL-t szerintem nem használok megszakításban, de utánanézek.
Például a 19144-el nem működik: digit8=0 digit7=0 digit6=0 digit5=0 digit4=11 digit3=15 digit2=4 digit1=4
A .19144 = 0x4AC8. A TEMP címe 0x000. Ha a (TEMP+5)=0xC8, (TEMP+6)=0x4A (TEMP+7)=0x00 a rutin hívásakor, a
után megállítva (TEMP+0) = 0x44, (TEMP+1) = 0x91, (TEMP+2)=0x01, (TEMP+3) = 0x00, azaz a BCD szám 00019144 lesz.
Köszönöm!
A TEMP regisztereket az UDATA_ACS direktíva után tettem közvetlen és így már jónak tűnik.
Örülök, hogy megvan a hiba... Már több, mint fél éve megy a rutin a frekvenciamérőmben (18F252, 18F2523)...
Nekem meg a panelmérőimben. Tulajdonképpen akkor az ő ellenállás-méréseik is hibásak... Érdekes hogy eddig ez nem tűnt fel.
Egy kérdésem lenne.
Az ATTINY2313-20PU , és az ATMEGA8 . Fel programozható-e a Szilva féle Pickit klónnal? Köszi előre is.
Alapjaban veve a pickit2 nem AVR-ek programozasara lett kitalalva, de PK2AVRISP-vel nincs kizarva, hogy lehetseges. Jobb lenne azonban ha egy speci AVR programozot szereznel be vagy epitenel meg.
|
Bejelentkezés
Hirdetés |