Fórum témák
» Több friss téma |
Fórum
Adatlapban EXAMPLE 5-1: Initializing PORTA
Illetve 5.1 alatti 2-es note
Kaptam a chipcadtől egy hex fájlt amit be kéne égetnem a PICkit 2 be a picstart + al.
Égetés után ez a válasz az MPLAB részéről: "Any additional errors are not displayed." failed... mi lehet a gáz?
Sziasztok!
Kinek van PICkit 2 égetője? Tudna valaki segíteni? Nem látja a gépem a programozót. Tegnap még semmi baja nem volt, most meg "PICkit2 not find..." USB eszközként sem találom az eszközvezérlőben, már az XP sem látja. Lehet hogy megadta magát végleg? köszi
huh, csak kb-re tudom mondani (és azt a Micron DDR modult, ami ebben a starter kitben van):
(2.5V-ról hajtva) a leggagyibb (-5B sebességfokozatú) modul áramfelvétele az 50-480 mA között mozog, kikapcsolt állapotban 5mA írásnál kb 200, olvasásánál is kb ennyi standby állapotban van 50 körül ha interleave módban több bank-al is dolgozol akkor ugrik fel 480-ra -- a gyorsabb moduloké az max 350 körüli
Ok mostmár megvan
Save: MOVWF W_TEMP SWAPF STATUS, 0 MOVWF STATUS_TEMP Load: SWAPF STATUS_TEMP, 0 MOVWF STATUS MOVFW W_TEMP Topi hibázott volna? Mert ezt írta a cikkjében: "Egy segéd regiszterbe elmentjük a következőket: - W regiszter (akku, work) - STATUS regiszter (benne a bank, ZERO és egyéb más)" És ezt használta: MOVWF W_SAVE ;Először a Work regisztert MOVFW STATUS ;STATUS-t bele a már lementett Workbe MOVWF STATUS_SAVE ;Status_save-be beletölti a Worköt
Hm mit találtam neten:
You can unscrew & remove the end cap containing the beam shutter to facilitate cleaning of the lens. However, ***DO not*** under any circumstances attempt to remove the laser itself from the housing!!! Doing so will void the warranty, and opens the possibility that you may irradiate yourself with 260mW+ of green laser radiation at 532nm, at least several hundred milliwatts of IR laser radiation at 1,064nm, and 2,000mW (2W) of NIR laser radiation at 808nm. Ezzel már lehetne kettévágni dolgokat , csak kinek van szíve szétszedni egy $649-$1529-os zöld lézert?
Köszi, már megvan írva, illetve már megírtam, csak a bank éles fizető kulcsára várunk, hogy lehessen kártyával fizetni... Remélhetőleg pár nap...
Hello
Van egy 16F876-s kontrollerem. Ki akartam próbálni az A/D portját, de nem tudtam, mert a ADRESL regisztert hibásan tölti át egy másik regiszterbe. Mindig hiányzik az 5. és 6. bit. És az az érdekes, hogy ha ADRESL regisztert a bank váltás után a PORTB-re kiküldöm, jól működik. Érdekes, nem? Várom az ötleteket. Hello
A BSF az egy megadott regiszterben (pl status) egy megadott bitet (pl 5 ami a RP0) magasra (1) állít
"RP1:RP0: Direkt címző bitek 11 = bank 3 10 = bank 2 01 = bank 1 00 = bank 0"
Előszöris egyik sem hibaüzenet. Az első kettő figyelmeztetés, a harmadik csak üzenet.
A LIST és az ORG elé tegyé egy szóköz vagy egy tab-ot. Az első oszlopban a címkék (label) helyezkedhetnek csak el. Amazzal meg ne foglalkozz, ha megcsináltad a bankváltást. Csak jelzi, hogy olyan regiszterrel dolgizol, ami nem a bank0-ban van, és légy körültekintő. És hogy én is kérdezzek valamit, ezt, hogy a bankváltást BSF STATUS, 5 paranccsal kell csinálni, hol láttad?
Nem tudom ki van itt ilyenkor
de most keztem PIC ezni és próbáltam egy LED villogtatót írni egy 16F628A RB4 es portjára de a következő hibaüzenetet kapom:Warning[205] C:\PICPROJEKTEK\PIC.ASM 1 : Found directive in column 1. (LIST) Warning[205] C:\PICPROJEKTEK\PIC.ASM 9 : Found directive in column 1. (ORG) Message[302] C:\PICPROJEKTEK\PIC.ASM 13 : register in operand not in bank 0. Ensure that bank bits are correct. Itt a program első fele: LIST P=16F628A #INCLUDE "P16F628A.INC" __CONFIG _CP_OFF&_XT_OSC&_WDT_OFF&_LVP_OFF&_MCLRE_ON&_PWRTE_ON CBLOCK 0x20 T1 T2 T3 ENDC ORG 0 KEZD MOVLW B'00010000' BSF STATUS,5 MOVWF TRISB BCF STATUS,5 GOTO LEDON Én átváltottam a bank 1 be vagy mégsem? Meg miért nézi rossznak a LIST et és az ORG ot?
A 18F sorozatnál másképp van megoldva az SFR zóna (az, ahol a PORTB, TRISC, EECON, stb. regiszterek vannak). Itt számukra van egy access bank nevezetű terület, ami valójában a 15. bank felső fele, de bármelyik bank-ból elérhető, ha az utasításnál megadod, hogy az adott parancs az access bankra mutasson. Ezt jelenti az a betű. Viszont ha a megfelelő processzort választod ki, akkor az MPLAB automatikusan tudja, hogy pl. a TRISC hol van, és nem muszály odaírni az a betűt. Ha odaírod, akkor nem vesztesz semmit.
A 18F-nél is lehet bank-ot váltogatni, de nélküle is elérhető a teljes memóriaterület. A W elérhető az SFR zónában WREG néven, és a MOVFF parancs bank-tól függetlenül elér mindent, tehát bankváltás és MOVWF TMP helyett írhatod ezt: MOVFF WREG, TMP
Sziasztok,
Újabb taktikai kérdésem van: A Topi-féle leckékben mindig ki van választva az utasításhoz szükséges bank, ugye? nos olvasgatom a 18F2320 adatlapját, és angol tudásom szerint: az utasításoknál meg lehet adni egy 'a' értéket, ami a bank-re vonatkozik, ha nem adom meg akkor ki fogja választani "ő". ez lehetséges? Akkor 18-as szériában nem kell bank-et váltogatni?
Igen, az a szöveg megvan. Viszont ami utána van az érdekes:
//Do not change these values #declare pcb_hight = 1.500000; #declare pcb_cuhight = 0.035000; #declare pcb_x_size = 46.025000; #declare pcb_y_size = 26.025000; #declare pcb_layer1_used = 1; #declare pcb_layer16_used = 1; #declare inc_testmode = off; #declare global_seed=seed(915); #declare global_pcb_layer_dis = array[16] Én emeltem ki félkövéren. Az bizony ott "hight" és nem "height"! Kereséssel ezért nem találtam! (Nem félregépeltem.) Csak tudnám miért... Átírtam (plussz egy "e"-betű), mentettem, de ugyan azt csinálja.
Egy "//Do not change these values" szöveg csak van?
Azután legyen beírva: #declare pcb_height = 1.500000; írd (másold) be aztán save és run. Így néz ki! Egyébként a pcb többi adata benne van?
Rákerestem több nem működő fáljban is, de nem talált ilyen szót. Még csak "height"-ot sem.
A PCB-től kapott pov-fáljban viszont van ilyen szó, mégpedig itt: "//Do not change these values #declare pcb_height = 1.500000; #declare pcb_cuheight = 0.035000; #declare pcb_x_size = 46.025000; #declare pcb_y_size = 26.025000; #declare pcb_layer1_used = 1; #declare pcb_layer16_used = 1; #declare inc_testmode = off; #declare global_seed=seed(116); #declare global_pcb_layer_dis = array[16]"
Ezt:
Preset INI file is 'C:\PROGRAM FILES\POV-RAY FOR WINDOWS V3.6\renderer\quickres.ini', section is '[512x384, No AA]'. Preset source file is 'C:\Program Files\EAGLE-4.15\ulp\Eagle3D\povray\forrasztollomas.pov'. Redirecting Options All Streams to console..........On Debug Stream to console.........On Fatal Stream to console.........On Render Stream to console........On Statistics Stream to console....On Warning Stream to console.......On Parsing Options Input file: C:\Program Files\EAGLE-4.15\ulp\Eagle3D\povray\forrasztollomas.pov (compatible to version 3.61) Remove bounds........On Split unions.........Off Library paths: C:\Program Files\POV-Ray for Windows v3.6\INCLUDE C:\WINDOWS\Fonts C:\PROGRAM FILES\POV-RAY FOR WINDOWS V3.6\include Output Options Image resolution 512 by 384 (rows 1 to 384, columns 1 to 512). Output file: C:\Program Files\EAGLE-4.15\ulp\Eagle3D\povray\forrasztollomas.bmp, 24 bpp (system format) Graphic display......On (gamma: 2.2) Mosaic preview.......Off CPU usage histogram..Off Continued trace......Off Tracing Options Quality: 9 Bounding boxes.......On Bounding threshold: 3 Light Buffer.........On Vista Buffer.........On Draw Vista Buffer....Off Antialiasing.........Off Clock value: 0.000 (Animation off) File: C:\Program Files\POV-Ray for Windows v3.6\INCLUDE\glass_old.inc Line: 18 Parse Warning: Due to changes in version 3.1, you must add interior {I_Glass} to all objects calling glass_old.inc textures and finishes... File: tools.inc Line: 95 Parse Warning: Font HandelGo not found. Fallback font arial used File: C:\Program Files\EAGLE-4.15\ulp\Eagle3D\povray\forrasztollomas.pov Line: 214 Parse Warning: Should have at least 2 objects in csg. File: cap.inc Line: 403 File Context (5 lines): #else cylinder{<0,0,0><0,-1*(pcb_height Parse Error: Expected 'numeric expression', undeclared identifier 'pcb_height' found instead Total Scene Processing Times Parse Time: 0 hours 0 minutes 0 seconds (0 seconds) Photon Time: 0 hours 0 minutes 0 seconds (0 seconds) Render Time: 0 hours 0 minutes 0 seconds (0 seconds) Total Time: 0 hours 0 minutes 0 seconds (0 seconds) CPU time used: kernel 0.09 seconds, user 0.33 seconds, total 0.42 seconds POV-Ray finished>
Elvileg be kell rakni az áramkörbe Jumpereket. Rákötsz a pluszra és a földre is egy-egy jumpert (a special-ba van), elnevezed őket és ezeket a neveket adod meg az ic vcc és gnd paraméterének. Kisbetű-nagybetű számít, ha nem jó a név, kapsz egy "missing jumper xxx" hibaüzenetet.
A Tinához "méltóan" hol működik, hol nem. Egy 4017-es számláló ic-t már sikerült így működésre bírni, de a logikai kapukkal valami nem az igazi. Nekem az a problémám, hogy ha logikai kapukat használok, akkor nagyon hamar megkapom az "operation point not found" üzenetet ahogy bonyolódik a kapcsolás. Olyan áramköröknél, amik a valóságban működtek, hiába adok tápot a kapuknak jumperekkel. Most már nagyon idegesítő, mi lehet a baja ? Üdv:vizor
Üdv!
Egy kérdésem lenne. Van egy 18f452-es PIC. Soros portról max232-n keresztül töltöm bele a progit. Egy darabig ment, majd rákötöttem egy 1x16-os LCD-t. Kb. kétszer még engedte letölteni, de utána nem tudtam beletölteni semmit. Ez miért van?? A tápot az USB-ről adom neki (nem akartam már adapterrel sz******kodni). Erről kapja az LCD is a tápot. Szerintemminden jól be van kötve, de nem tudok beletölteni. Ez már máskor is előfordult, más esetben. Néha azt írja ki, hogy a COM port foglalt. Gép újraindít, de akkor sem megy. Colt18F....valamivel töltöm le. Ja és mivel most ismerkedem a programozással, tudna valaki küldeni egy olyan egyszerű progit mplab-hoz, amiben egy egyszerű szöveget kiír az LCD-re. Most fejből írom, de sorban vannak bekötve: C port 0-tól 7-ig -> Data 0-tól 7-ig. E port 0:register Select E port 1:Enable E port 2:R/W Backlight van. A kontrasztot meg majd beállítom. Köszi! Moderálva!
Gondolom egyértelmű hogy egy mágnesszalag simán másolható egy magnófejjel.. (pl. egy meghekkelt kártyaolvasóval)
A chip más elven működik, nem lehet lemásolni. Azon helyek száma is csökken ahol csak a mágnesszalagos leolvasók vannak. Ahol chipkártyát is le tudnak olvasni onnan valószínű a bank nem fogad el chipes kártyáról leolvasott mágnesszalag azonosítást (más adat van a szalagon és más a chipben, vagy az egyiket vagy a másikat olvassák ki, egymástól függetlenek). De ahol még nincs ilyen chip-leolvasó onnan elfogadja a szalag adatait. A banknak megvannak mind a bankkártya mind az elfogadóhely technikai adatai.. Ezzel szerintem biztosítható az ilyen dual (chip+szalag) kártyák biztonságának növekedése a sima szalagoshoz képest.
Ez akkor bőven kielégíti az igényeimet. Mivel sikerült a kis TDA-t összeeszkábálni, így lehetne egy másikat is készíteni, egy kicsit nagyobbat házimozihoz, de ha mindent összeszámolok, hangszórók, csillapítóanyag, kárpit, faanyag, IC-k, kondik, hűtő, táp, doboz...ha ezek nincsenek otthon, vagy nem tudsz valahonnan kikukázni vmit, ha meg kell venni mindent, akkor nagyon nem éri meg. 20ezerért komplett szettet kapni készen, hangszórók meg erősítő. Biztos van olyan jó, mintha én építem meg a legolcsóbb cuccokból, arról nem beszélve, hogy sokkal szebb kinézetre. Csak az építés öröme szól mellette...
Ez most nemtom hogy jött ide, remélem nem off Ha rámszakad a bank (vagy egy kuka ), nekiállok az oldalon lévő aktív subnak meg egy másik erőlködőnek
Sajnos még mindig csak kérdezni tudok. A visszacsatolásról még nem találtam sok használhatót, úgy tünik hogy általában a kimeneti szűrő előttről is elég visszacsatolni, bár így függ az átviteli karakterisztika jobban a terhelőimpedanciától, ha jól emlékszem.
A kérdés az lenne ha valaki ért hozzá, hogy teljes hidas kapcsolásnál nem kell a visszacsatolás? Mert ilyesmit olvastam egy IRF-es application note-ban. A másik, hogy a dead-time-ot lehet-e szabályozni a háromszög jel offset eltolásával? Köszi Idézet: „Gondolom azt csak ugy tudom ha latom hogy az elso mar kiment, es johet a masik.” Van egy ilyen az adatlapban: Any write to the SSPBUF register during transmission/reception of data will be ignored and the Write Collision detect bit, WCOL (SSPCON1<7>), will be set. User software must clear the WCOL bit so that it can be determined if the following write(s) to the SSPBUF register completed successfully. Tehát ha 16 vagy több bitet akarsz írni, akkor beírod a következő bájtot az SSPBUF regiszterbe, és ha a WCOL bit bebillent, akkor meg kell ismételned az írást.
Sziasztok!
Kértétek, hogy írjam be, mivel sikerült múltkor behülyítenem a picet! Hát egy kicsit szégyenllem, de én simán azt mondtam, hogy char x = 0x000000001; (9 bit) Nem vettem észre, hogy csak 8-at kaphatott volna. ![]() Viszont most megint elakadtam. 24LC256-os memóriát akarok írogatni és olvasgatni. Ehhez készítettem, meglevő minta alapján egy lib-et, amit meghívok egy főprogramból. A lib tartalmát mellékelem is nektek! A problémám az, hogy ha sokszor meghívom egymás után a Number_write(...) metódust, akkor már nem is fordul le a progi. Ilyen Can not fit the Section-os hibákat dob vissza. De azaz érdekes, hogy írtam egy teljese eeprom reset-et is, amiben ugyanezt a metódust sokkal többször meghívom, és ott működik. Mi lehet a baj? Alaphelyzetben működik a dolog, mert ha csak egy- két adatról van szó, akkor azt szépen írom és olvasom is. De ha már 10-es nagyságrendről, akkor nem. Nem ürítek valamit? Vagy valamiért nem helyesen kezelem az I2C-t ??? Van ötletetek? Előre is Köszi! Üdv: Zoli
Amúgy Ti rendeléskor mennyit írtok a legyártandó termék számhoz, mert én (marha) 1000-3000 et, és természetesen ezt a választ kaptam:
Idézet: „Thank you for requesting samples from STMicroelectronics. This message is to inform you that we will not be able to process your request.”
Ezért kár volt kondit cserélni... valószínű, hogy szálszakadás van a VGA kábelben, de a csatlakozók is lehetnek hibássak.
Pin 1 RED Red video Pin 2 GREEN Green video Pin 3 BLUE Blue video Pin 4 N/C not connected Pin 5 GND Ground (HSync) Pin 6 RED_RTN Red return Pin 7 GREEN_RTN Green return Pin 8 BLUE_RTN Blue return Pin 9 +5 V +5 V (DDC) Pin 10 GND Ground (VSync, DDC) Pin 11 N/C not connected Pin 12 SDA I˛C data Pin 13 HSync Horizontal sync Pin 14 VSync Vertical sync Pin 15 SCL I2C clock Ezt ki tudod mérni könnyen.
Szokásomhoz híven két kiegészítés:
A W és STATUS regiszterek mentésére szolgáló változóknak nem a 0x20 címtől kell lefoglalni a területet, hanem a 0x70 címtől. A 0x20 és 0x70 közötti terület nem minden bankban azonos területre mutat, így ha a főprogram pl. a bank1-ben van, amikor a megszakítás érkezik, akkor a bank1-ben levő 0x20 és 0x21 címre menti el a processzor a W és STATUS értékét, aztán ha a megszakítás rutin végén a bank0-ban levő címekről állítjuk vissza ezen regiszterek tartalmát, akkor máris van egy hibánk. A 0x70-0x7F terület az minden bankból ugyanoda mutat, direkt erre a célra. Idézet: „TMR0 használat esetén, le kell mondanunk a WDT-ről, és fordítva.” Csak az előosztó közös. Ha egyikhez hozzárendeljük, akkor a másik előosztás nélküli jelet fog kapni. Tehát némi megkötéssel használhatók együtt. Idézet: „The 1458 opamp specified is quite adequate for this, as the two sections function only as buffers, and accuracy is not important.” A 1458-as muveleti erosito megfelelo erre a celra mivel a ket resz csak bufferkent mukodik es a pontossag nem annyira fontos. Sztem TL074-el siman meg lehet csinalni. En is azzal epitem majd meg ha valamikor erre kerul a sor...
The 1458 opamp specified is quite adequate for this, as the two sections function only as buffers, and accuracy is not important.
Ezt le tudná nekem fordítani vki? Mer még csak tanulom az angolt, de még nem tiszta... Mindenképpen 1458as OPA-val kell vagy lehet az egészet egy TL074-be rakni? Mer én TL074hez terveztem nyákot...
Öööö... Eszerint ez csak szegmens meghajtó, amit pl. a HD44780-hoz lehet használni. Mivel írtad, hogy nem tudod bekötni, felteszem, nem is próbáltad. Szerintem ez sima HD44780 kompatibilis LCD.
A bekötés elvileg (ugyanattól a gyártótól egy másik modul adatlapja szerint): 1: GND 2: +5V 3: GND/LCD kontraszt 4: register Select 5: Read/Write 6: Enable 7-14: D0-D7 adatvonalak De ha elfüstöl a kijelző, ne engem hibáztass. Tipp: Ha fémkeretes a kijelző, és szerencséd van, a keret le van földelve. Így a földet meg tudod keresni, aztán nagy bajt már nem csinálhatsz az LCD-vel. |
Bejelentkezés
Hirdetés |


de most keztem PIC ezni és próbáltam egy LED villogtatót írni egy 16F628A RB4 es portjára de a következő hibaüzenetet kapom:
), nekiállok az oldalon lévő aktív subnak meg egy másik erőlködőnek
