Fórum témák

» Több friss téma
Fórum » PIC - USB - PC projekt
 
Témaindító: JohnyBravo, idő: Szept 26, 2006
Lapozás: OK   23 / 55
(#) icserny válasza BlackStar hozzászólására (») Jún 9, 2010 /
 
Kiindulhatsz a PIC18F4550 linker scriptjéből (ami az USB keretrendszerben található rm18f4550 - blabla.lkr néven), csak le kell csökkenteni a memória méretét az adatlapban található információknak megfelelően.

Ha nem tévedek, akkor ennyi változtatás kell: FILES p18f4550.lib helyett FILES p18f2458.lib kell, a CODEPAGE NAME=page kezdetű sor végén pedig END=0x7FFF helyett írj END=0x5FFF-et!

A RAM méretében talán nincs is különbség.
(#) BlackStar hozzászólása Jún 9, 2010 /
 
Köszönöm a segítséget watt, icserny.

Átírtam a rm18f4550 linker scriptjét. Elmentettem rm18f2448. Lefordítottam a pic programot amit PDFSUSB.exe programmal szerettem volna a PIC-be betölteni.
"WARNING - Failed to program CONFIG DATA" hibajelzést kaptam. Pedig a config bitek egyformák a bootloader és a PIC programjában.
(#) icserny válasza BlackStar hozzászólására (») Jún 9, 2010 /
 
Idézet:
„"WARNING - Failed to program CONFIG DATA" hibajelzést kaptam. Pedig a config bitek egyformák a bootloader és a PIC programjában.”
Ha egyforma, akkor sem tudja írni... De nem is kell.

A lényeget nem mondtad: működik a betöltött program?
(#) atideath hozzászólása Jún 9, 2010 /
 
Sziasztok.

Tegnap este már annyira berágatott ez a PIC hogy újraépítettem az egész panelt. A tanácsaitokhoz híven a következő kapcsolást építettem meg:
http://esca.atomki.hu/PIC18/circuit.html

Bootloader benne van a PICben. Amikor rádugom az USB-re akkor a D1 lábon lévő LED elkezd folyamatosan világítani. Utána átváltom bootloader módba, elkezd villogni a D0 lábon lévő led és a windows új hardvert talált. Ez eddig mind jó, viszont az istenért sem akarja az INF-et elfogadni. Egyszerűen nem bírom felrakni hozzá a drivert. WIN7-em van de azalatt is mennie kellene már olvastam utána. Valamit én rontottam volna el?

Az áramkört az Eszközkezelőben megnéztem és Unknown Device szerepel. Beletúrkáltam egy picit és ott megkerestem a Vendor és a PID-et. Mind a kettő egyezik: USB\VID_0000&PID_0000\5&8CFA27C&0&1

Ezt adja. Az INF-ben nem is ez a Vendor és PID szám van valószinüleg azért nem ismeri fel :S. Mit rontottam akkor el?
(#) icserny válasza atideath hozzászólására (») Jún 9, 2010 /
 
Idézet:
„Bootloader benne van a PICben.”

Sokféle bootloader létezik. Melyik van benne? Ha az MHCPUSB bootloader, akkor az MHCPUSB Custom Driver kell hozzá (mchpusb.inf és társai kellenek).

Ha HID bootloader van benne, akkor pedig nem kell külön driver.

Még azt ellenőrizd, hogy az USB D+/D- vezetékei jól vannak-e bekötve (nincsenek-e pl. felcserélve?), s a mikrovezérlő jó frekvencián ketyeg-e? A gyári bootloader 20 MHz-es kvarcot feltételez. Más kvarchoz (4 MHz egész számú többszöröseit lehet használni) a bootloaderben a konfigurációs biteket módosítani kell (PLLDIV).
(#) atideath válasza icserny hozzászólására (») Jún 9, 2010 /
 
Már mindenféle bootloaderrel kipróbáltam de fáradtságot se vesz arról hogy működjön. Lehet hogy a PIC ment volna tönkre?

A Piccolo oldalon lévő HEX-et próbáltam betölteni Winpic800-ba de sajnos hibát dobott. Ami pedig a következő: ....PIC18F4550.hex Sor 259 Hibás kontrollösszeg.

Utána betöltöttem ezt a bootloadert amit itt használnak:
http://eegeek.net/content/view/13/32/1/1/

Ha átváltok bootloader módba akkor villog az egyik led a másik pedig ég. De volt olyan bootloader ami folyamatosan égett mindkettő. De se így se úgy nem akarja felismerni a windows. A kábeleket és a bekötéseket átnéztem, abban nincs hiba.

Egyéb ötlet esetleg?

Ja a PIC-emben 20mhz-s kvarc van úgyhogy mennie kellene 22pF kondikkal.
(#) icserny válasza atideath hozzászólására (») Jún 10, 2010 /
 
Idézet:
PIC18F4550.hex Sor 259 Hibás kontrollösszeg.”
Sajnos, elszámoltam valahol a hexa összeadást! Egyébként az MPLAB ezt a 271. sornak mondja.
...
:010008000FE8
:01000900C036
:01000A000FE6
:01000B00E014
:01000C000FE4
:01000D0040B2
:020000040020DA
:08000000B1CC07041D455002E1

:00000001FF

Az utolsó előtti két sort töröld ki (nem tartozik a programhoz, az User ID-be próbáltam írni!), vagy pedig az E1 hibás kontrollösszeget írd át BC-re! (Notepad Editor is megteszi...)

A PICkit2 viszont a jelek szerint nem foglalkozik a kontrollösszeggel, mert egy kukkot sem szólt rá!

Mellékeltem a javított állományt.
(#) BlackStar válasza icserny hozzászólására (») Jún 10, 2010 /
 
Elnézést elfelejtettem megírni, hogy sajnos nem működik a betöltött program.
Önmagában működik a PIC program de bootloaderre betöltve nem.
(#) icserny válasza BlackStar hozzászólására (») Jún 10, 2010 /
 
Idézet:
„Önmagában működik a PIC program de bootloaderre betöltve nem.”

Ezt a hozzászólást olvastad már?
(#) atideath válasza icserny hozzászólására (») Jún 10, 2010 /
 
Hali.

Nos odáig eljutottam hogy a PICOLLO project oldalán lévő programot beégettem a PIC-be és szépen működik is. Vagyis szerintem így kell működnie .

RD0/SPP0 - LED villog folyamatosan
RD1/SPP1 - LED ég folyamatosan
RD3/SPP3 - LED villog folyamatosan
RD2/SPP2 - LED nem világít.

Ezek szerint a PIC működik csak éppen az USB kapcsolatot nem akarja az istenért sem felfogni. Most éppenség nem is jelzi a windows hogy új hardwert talált volna. A piccolo_config-ban HID bootloader van definiálva.

Egy másik észrevétel a Piccolo projectel kapcsolatban. Lehetne annyit kérni a tulajdonostól hogy a forrásfájlokat elérhetően tegye fel? Egy órát törölgettem miatta. (pl.: piccolo_config.h, piccolo-4550.h stbstb). Ezeket nem igazán lehet egyszerűen letölteni az oldalról.

Ha van valakinek ötlete a dologgal kapcsolatban kérem jelezze. Köszönöm az eddigi sok segítséget is .
(#) watt válasza atideath hozzászólására (») Jún 10, 2010 /
 
Idézet:
„Lehetne annyit kérni a tulajdonostól hogy a forrásfájlokat elérhetően tegye fel? Egy órát törölgettem miatta.”

Lehet, hogy csak véletlenül sikerült ilyen szerencsétlenre a mondatod, de bennem forgatja a kést! Egyrészt pont annak válaszoltál, aki a "tulajdonosa" (ha ezt tudod, akkor ez ebben a formában illetlenség), másrészt ilyen stílusban kritizálni illetve kérni bármit, mármint, hogy neked milyen kényelmetlen volt egy órát ezzel töltened, szintén bunkóság. Én kérek elnézést!


Még annyit had mondjak el, hogy fogtam egy SMD 18F2550-et ráragasztottam gumitömítő gyúrmával egy tüskecsati hátára(ICSP), ráforrasztottam néhány vezetéket a lábakra, kvarcot, kondit, usb csatit, stb.-ami kell, rátoltam a firmwaret, bedugtam és működött. Vagy a PC-del van baj, vagy nem jól kötöd össze a kábeleket, esetleg rossz a kábeled, vagy más bagatel dolog...
(#) icserny válasza atideath hozzászólására (») Jún 10, 2010 /
 
Idézet:
„Egy másik észrevétel a Piccolo projectel kapcsolatban. Lehetne annyit kérni a tulajdonostól hogy a forrásfájlokat elérhetően tegye fel?”

A PICCOLO projekt honlapján a Szoftver segédlet című menün keresztül elérhető PIC18 támogatói programkönyvtár pont erre való. Az első sorában ott a link: code_examples.zip

Itt található a mindenkori legfrissebb kiadás.
(#) atideath válasza watt hozzászólására (») Jún 10, 2010 /
 
Hello.

Bocsánatot kérek ha illetlennek tűnt az előző hozzászólásom, nem szerettem volna senkit megsérteni vele. Tényleg sajnálom.

A gép nem hiszem hogy hibás lenne mert másik gépen se megy sajnos. Már 2 notin és 2 asztalin próbáltam ki, nem reagállt egyiksem.
(#) atideath válasza icserny hozzászólására (») Jún 10, 2010 /
 
Köszönöm a segítséget, lehet csak az én figyelmemet kerülte el. Pedig tényleg kerestem. Elnézést ha illetlenre sikeredett a hozzászólásom!
(#) watt válasza atideath hozzászólására (») Jún 10, 2010 /
 
USB Kábel? Próbáltad több kábellel is?
Aljzatot biztosan nem kötötted be fordítva?
A PIC-ből visszaolvasott konfigurációs bitek tutira egyeznek a bootloaderben beállítottal?
Egy fénykép is sokat segítene, ha tudsz készíteni(ne JPG, mert átméretezi a motor).
(#) BlackStar válasza icserny hozzászólására (») Jún 10, 2010 /
 
Ezer köszönet...

Nem jutott eszembe a reset vektor áthelyezése pedig olvastam, hogy át kell helyezni a 0x0800 címre.
Betöltés után működött a program. Viszont megszakítást is használ a program és meglepő dolgokat produkált. Megszakítás vektor áthelyezve 0x0808 címre tökéletesen működik minden.
Nagyon köszönöm a segítségedet
Természetesen a köszönet szól watt-nak is.

Most megpróbálom a HID Bootloadert rávenni, hogy működjön 18f2458 PIC-n.
(#) icserny válasza atideath hozzászólására (») Jún 10, 2010 /
 
Idézet:
„Elnézést ha illetlenre sikeredett a hozzászólásom!”

Én nem vettem illetlenségnek. A forrásfájlok letölthetőségtől most eltekintve (ami eleve fölöslegessé teszi a törölgetést) azonban nem tudom elképzelni, hogy mi tartott órákig? Megfelelő eszközöket használva (AWK vagy Perl, vagy VI editor) csupán pillanatokig tartott volna. De ez már nem ebbe a topikba, sőt, nem is erre a fórumra tartozó téma.

Néhány napon belül frissíteni fogom a code_examples.zip csomagot. Történt néhány kisebb módosítás (pl. a CDC Terminál mostmár az ékezetes betűket is megjeleníti, s elkészült néhány mintaprogram az I/O portok c. fejezethez.
(#) atideath válasza watt hozzászólására (») Jún 10, 2010 /
 
Köszönöm a segítséget a végén újra átforrasztottam az összes lényegesebb vezetéket és működik tökéletesen. Valahol valószinüleg egy forrasztási hiba volt. Na sebaj mostmár legalább a sok hajtépés után működik.

El is kezdtem játszani vele egy picikét. Találtam itthon egy 4x20 karakteres LCD kijelzőt. C programozásból otthon vagyok de egyenlőre számomra egy példaprogramot is nehéz összerakni.

Próbáltam keresni neten de úgy nagyon nem találtam semmi értelmesebb kapcsolást. Egyedül egy kínai vagy japán oldalon találtam de azt meg nem bírom az istenért sem kibogarászni miket jelentenek a krikszkrakszok .
http://www.ys-labo.com/pic/pic%20chips/pic%20chips%20contets/2009/0...1.html

Az LCD kijelző lábait így kötöttem be:
R/W - GND
RS - RB2
E - RB0
DB0,DB1,DB2,DB3,GND - GND
DB4 - RD4
DB5 - RD5
DB6 - RD6
DB7 - RD7

Tud esetleg valaki esetleg egy példaprogramot küldeni amivel életre tudom kelteni?

Köszönöm a sok-sok segítséget!
(#) watt válasza atideath hozzászólására (») Jún 10, 2010 /
 
Bevallom nem tudom elképzelni sem milyen áramkört építettél meg konkrétan, így programot lehetetlen ajánlani, mert nem létezik, legfeljebb csak olyan, amiből ötletet lehet venni.
Van pár cikk itt a hobbin, amik USB-vel foglalkoznak, én is írtam egy HID-est. Abból szerintem jönnyű kiindulni. Bővebben: Link
(#) icserny válasza atideath hozzászólására (») Jún 11, 2010 /
 
Idézet:
„Találtam itthon egy 4x20 karakteres LCD kijelzőt. C programozásból otthon vagyok de egyenlőre számomra egy példaprogramot is nehéz összerakni.”
Mert az alapozás helyett a padlással akarod kezdeni a házépítést.
1. Meg kellene ismerkedni a mikrovezérlő felépítésével és sajátosságaival.
2. Meg kellene ismerkedni a C18 sajátosságaival és a PIC18 programozásához felhasználható segédletekkel (van pl. PIC18 prifériák kezelésére kész könyvtára a Microchip telepítési könyvtáradban).

Megfelelő alapozás után Topi LCD-ről szóló cikkei vagy az adatlap alapján nem okozna gondot egy program összedobása.
(#) atideath hozzászólása Jún 11, 2010 /
 
Üdv.

Átolvastam az itt talált infókat, feltúrtam a fórumokat és a cikkeket is elolvastam. Sikerült működésre bírni és már kényelmesen tudok írni rá karaktereket akár PIC-ből akár PC-ről. Most épp a saját karakterekkel szenvedek. Köszönöm az eddigi segítséget.

Szeretném tanulgatni csak valahogy még egy picit magas nekem. C-ből jó vagyok de itt ugye még rengeteg dologot kell tudni. A leggyorsabban úgy tanulok ha gyakorlom és kisérletezgetek.
(#) icserny válasza atideath hozzászólására (») Jún 11, 2010 /
 
Egy másik topikban itt és itt volt szó a saját karakter definiálásáról. A dolog elég mechanikusan megy, tehát biztosan nem okoz gondot az assembly utasítások "átfordítása" C-re.
(#) e-balu hozzászólása Júl 29, 2010 /
 
Sziasztok,

Megepitettem a "USB HID Demo @watt" boardot.
Mukodik, Mplab-ban tudom forditani a projectett.

RS232 comunikaciora szeretnem hasznalni ezert megprobaltam a :
Mchip Usb Device - CDC Serial Emulator projectjet atalakitani hogy menjen 18F2550-val.

De valamit nagyon nem jol csinalhatok mivel a kovetkezo hibauzenetett kapom:
Error - could not find definition of symbol 'main' in file 'C:\mcc18\lib/c018i.o'.


Az eredeti Demohoz kepest kicsereltem a
.lkr
hardwareprofile.h
hardwareprofile-PIC18F2550.h

Nagyon megkoszonnem ha valaki tudna segiteni !

Balazs
(
Project file name:
USB Device - CDC - Serial Emulator - C18 - USB HID Demo @watt.mcw
)
(#) icserny válasza e-balu hozzászólására (») Júl 29, 2010 / 1
 
Valószínűleg sikerült úgy összebogozni a feltételes fordítási direktívákat, hogy a main() függvény nem fordul le, hanem átugorja a fordító. (pl. egy nem teljesülő feltételű #if lezáratlan maradt).

Utóirat: most úgy tűnik, hogy a becsatolásokkal volt valami gond. Include direktívák két helyen voltak,és valószínűleg nem megfelelő sorrendben. Ha az alábbi sorrendbe szerveztem át, akkor lefordul a program:
  1. /** I N C L U D E S ***********/
  2. #include "GenericTypeDefs.h"
  3. #include "Compiler.h"
  4. #include "HardwareProfile.h"
  5. #include "usb_config.h"
  6. #include "./USB/usb.h"
  7. #include "./USB/usb_device.h"
  8. #include "./USB/usb_function_cdc.h"


Hogy működik-e, az egy másik kérdés...
(#) e-balu válasza icserny hozzászólására (») Júl 29, 2010 /
 
Koszi a segitseget!

Lehet hogy egyszerub ha elorol kezdem az egeszet?
Mit kell modositanom az aredeti MPLAB demon hogy fusson a watt fele demo boardon?


(mellekeltem az eredeti nem modositott projectett)
(#) e-balu válasza icserny hozzászólására (») Júl 29, 2010 /
 
Bocsi

Csak olvastam az utoiratott.
es lefordult.
Nagyon szepen koszonom!
(#) pagaby hozzászólása Júl 30, 2010 /
 
Hali!

Miért kapom ezt a hibaüzenetet (csatolva).
Az MPLAB-nak és a C fordítónak már több verzióját is kipróbáltam.

Hiba.jpg
    
(#) icserny válasza pagaby hozzászólására (») Júl 30, 2010 /
 
Lehet, hogy frissíteni kellene a fordítót?

Nálam ez van: MPLAB 8.15 és 8.41, továbbá:
Language tool versions: mplink.exe v4.22, mcc18.exe v3.22
(#) pipi válasza pagaby hozzászólására (») Júl 30, 2010 /
 
a vége hiányzik...
nem lehet hogy a linker fájl nem egyezik a választott pic tipusával?
(#) icserny válasza pipi hozzászólására (») Júl 30, 2010 /
 
Inkább a Linker program 2006-os dátuma a probléma... Hol volt még akkor PIC18F14K50?
Következő: »»   23 / 55
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