[ deniah @ 06.09.2008. 20:54 ] @
| Napravio sa USB eksperimentalno kolo iz knjige Voje Milanovica ali ne mogu da ostvarim komunikaciju sa PC-jem. U stvari na sporijem racunaru i sa Win2000 sve radi ali na XP-u ne. Evo koda:
Code: 'PicBasic program za podrsku eksperimentalnom kolu
'sa mikrokontrolermo PIC18F2550
DEFINE OSC 8
BROJ var byte 'Pomocna promenljiva
USBBufferSizeMax con 8 'Maksimalna velicina bafera
USBBufferSizeTX con 8 'Ulaz
USBBufferSizeRX con 8 'Izlaz
' USB baferi
USBBuffer Var Byte[USBBufferSizeMax]
USBBufferCount Var Byte
TRISB = $00 'Port B je izlazni
TRISA = $FF 'Port A je ulazni
ADCON1 = 15 'Svi pinovi su digitalni
Pause 1000
usbinit 'inicijalizacija USB-a
ProgramStart:
gosub DoUSBIn
gosub DoUSBOut
goto ProgramStart
'Podprogram za citanje podataka sa PC-a
DoUSBIn:
USBBufferCount = USBBufferSizeRX 'Velicina RX bafera
USBService 'Odrzi konekciju
USBIn 1, USBBuffer, USBBufferCount, DoUSBIn 'Procitja podatke
If USBBuffer[0] = 250 Then
Portb = USBBuffer[1]
Endif
Return
'Podprogram za upis podatana na PC-e
DoUSBOut:
USBBufferCount = USBBufferSizeTX 'Velicina TX bafera
USBService 'Odrzi konekciju
USBBuffer[0]=251
Broj = 0
If porta.0 = 1 Then
Broj=BROJ + 1
Endif
If porta.1 = 1 Then
Broj=BROJ + 2
Endif
If porta.2 = 1 Then
Broj=BROJ + 4
Endif
USBBuffer[1]=Broj
USBOut 1, USBBuffer, USBBufferCount, DoUSBOut 'Posalji podatke
Return
Mislim da je greska u konfiguraciji osiguraca. Moze li mi neko pomoci?
Pozdrav
[Ovu poruku je menjao deniah dana 07.09.2008. u 00:02 GMT+1] |
[ barum @ 07.09.2008. 00:04 ] @
Ako mikrokontroler radi na Win2000 i nisi menjao osigurače u međuvremenu onda sigurno nisu osigurači.
Šta ti prijavljije Windows kada se konektuje uređaj?
Kada odeš u Device Manager da li stoji žuti uzvičnik na uređaju?
Druga mogućnost je da je na sporijem računaru USB1.1 hub a na drugom USB2.0 hub. Trebaće ti kvalitetniji kabli jer su USB2.0 specifikacije nešto strožije.
Treća mogućnost koje trenutno mogu da se setim je da basic ne uspeva da odgovori dovoljno brzo pa hub misli da je uređaj pokvaren.
Koji drajver koristi taj uređaj?
Možeš da ga ubodeš u stariji komp i da tamo odeš u Device Manager da pribeležiš podatke o drajverima koji tamo rade i kako se zovu pa da ih potražiš ima li sličnih u XP-u.
Pozdrav
[ Seme @ 07.09.2008. 21:03 ] @
Koliko vidim kod si prekucao iz knjige. Taj kod provereno radi pod Windows XP - om. Sto se tice USB1.1 i USB2.0 to sigurno nije problem zato sto PIC18f2550 koristi HID drajver koji radi pod daleko manjim brzinama i za usb1.1. Maksimalna brzina za hid drajver je 64B/s. Proveri konfiguracionu rec mikrokontrolera ja sam prvi put sa tim imao problem. Koji programator koristis? Posalji mi konfiguracionu rec pa cu ti reci gde gresis. Pozdrav
[ deniah @ 07.09.2008. 23:58 ] @
Evo kako su konfigurisani osiguraci:
Oscilator - HS oscilator, PLL enabled, HS used by USB
CPU system clock - 96 MHz PLL div2
Osc. selection - Divided by 2 (8MHz input)
vbor - 2.0V
Brown out reset - Enabled in hardw. only (sboren is disabled)
Watchdog - 1:512
FCMEM - On
IESO - On
WDTEN - On
CCP2MX - On
LPT1OSC - On
MCLRE - On
STVREN - On
ICPORT - On
USBPLL - On
VREGEN - On
Konfiguraciona rijec je:
1: CE21
2: 133F
3: 8500
4: 00A1
5: C00F
6: E00F
7:400F
Koristim AllPic programator i WinPic800.
Xp prijavljuje uredjaj nije prepoznat ili nije funkcionalan i ne instalira drajvere. U listi nema usklicnika ali prijavljuje 'Unknown Device'.
Koristio sam kabal od stampaca.
[ barum @ 08.09.2008. 00:24 ] @
Miroslave,
mislio sam možda je samo kabal problem pošto znam da taj PIC ima USB2.0 interni tranrisiver. I kod mene je proradio pod XP-om, no ja sam čačkao malo deskriptore juče pa sam pogrešno slao report deskriptor za jedan bajt duži nego što treba dok nisam pronašao grešku da podaci treba da se završe neparnom adresom. Do trenutka dok nije proradilo kako treba sam naj više sumnjao u drajver ali sada vidim da je XP u redu.
Reljo,
evo greške:
WDTEN - On
treba to isključiti.
[Ovu poruku je menjao barum dana 08.09.2008. u 01:43 GMT+1]
[ deniah @ 08.09.2008. 00:44 ] @
Probao sam sa iskljucenim WDTEN ali nece. Xp javlja istu gresku; 'USB device not recognized'.
[ Seme @ 08.09.2008. 08:46 ] @
Evo konfiguracione reci za PIC18F4550. U sustini ne postoji razlika za 2550 jer su u arhitekturi isti samo sto prvi ima 2 porta vise. Ukoliko ti ne proradi onda si nest zeznuo u hardweru.
Barum: Podrzava taj PIC USB2.0 slazem se sa tobom ali on ne koristi tu brzinu prenosa. Isti pic ima ugradjenu hardwerku podrsku za HID (Human Interface Device) tako da se nikakvi drajveri ne instaliraju po ukljucenju uredaja vec po instaliranju windowsa. Pozdrav
[ barum @ 08.09.2008. 09:48 ] @
Evo primerak koji radi i može da ti posluži za probu da li je problem u hardveru. Dakle za 8MHz i pic18f2550.
Ova verzija koju sam stavio može da se priključi preko max232 na COM port i da se otvori terminal na 115200 bauda pa da se posmatra šta se sve dešava i da se eventualno vidi gde je problem. Ja koristim terminal Realterm.
Imaš li kondezator na pinu broj 14?
[Ovu poruku je menjao barum dana 08.09.2008. u 11:59 GMT+1]
[ deniah @ 08.09.2008. 20:04 ] @
To je to. Sada je u redu. Hvala na pomoci.
Pozdrav
ps. ovaj primjer sam skinuo sa picbasic.co.uk/forum/. Mozda nekom zatreba.
[ barum @ 08.09.2008. 20:08 ] @
I šta je zapravo bilo? Ostavi nas u misteriji!
[ deniah @ 08.09.2008. 20:33 ] @
Kada sam podesio osigurace kako je Miroslav predlozio tada je proradilo.
[ NELEwb @ 19.02.2010. 21:51 ] @
pozz, ja sad pokusavam da napravim interfejs sa PIC-om 18F2550, ali pojavi mi se 1000 problema u tom pokusaju XD Koristim microcode studio 3.0.0.5 i PBP 2.6 compiler, MPASM 5.20, i kad kompajliram neki obican program npr. da se pale i gase LE diode radi ok. Ali kad sam pokusao da kompajlujem neki program za USB komunikaciju prvo se zalilo na PBPPIC18.lib (to je bilo dok sam koristio kompajler koji dolazi uz Microcode Studio) i onda sam skinuo ovaj drugi pa je prestalo da se zali na to . . . E sad, kompajliram onaj potpuno isti program iz knjige od Voje, al' izbacuje sledece greske:
Error[113]c:\pbp\pbppic18.lib 715 : Symbol not previously defined (USBDEVICEINIT)
Error[113]c:\pbp\pbppic18.lib 716 : Symbol not previously defined (USBDEVICEINIT)
Error[113]c:\pbp\pbppic18.lib 715 : Symbol not previously defined (USBDEVICETASKS)
Error[113]c:\pbp\pbppic18.lib 716 : Symbol not previously defined (USBDEVICETASKS)
Error[113]c:\pbp\pbppic18.lib 715 : Symbol not previously defined (GETUSB)
Error[113]c:\pbp\pbppic18.lib 716 : Symbol not previously defined (GETUSB)
Error[113]c:\pbp\pbppic18.lib 715 : Symbol not previously defined (PUTUSB)
Error[113]c:\pbp\pbppic18.lib 716 : Symbol not previously defined (PUTUSB)
jel se nekom na ovom svetu desilo isto i jel zna u cemu je problem?
[ NELEwb @ 23.02.2010. 16:37 ] @
e, ako se nekad nekom na ovom svetu desi isto k'o i meni, greska je bila sa kompajlerom . . . skinuo sam nekoliko razlicitih i ni 1 nije hteo da radi kako treba . . . onda sam zamenio neke fajlove iz jednog u drugi i tako redom pa sam napravio 1 koji radi kako treba . . . tad je hteo da kompajluje fajlove koji dolaze sa CD-a od Voje Milanovica, ali ne i one koje ja napravim koristeci Easy Hid . . . tu je greska bila sa Easy Hid wizard-om pa sam skinuo novi i radi OK . . .
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|