Pic18f2550 HID Keyboard


Results 1 to 21 of 21

Threaded View

  1. #10
    Join Date
    Jun 2007
    Posts
    25

    Default Re: Pic18f2550 HID Keyboard

    Many Thanks , Its Working Now , And The Code Is Down , But Any One Knows How Can I Include Multimedia Keys (Play,Stopn, Mute . . .etc) , i know i must add it to usb descreptor but i never knows how , i read alot without luck .


    DEFINE OSC 48
    @ __CONFIG _CONFIG1L, _PLLDIV_5_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L
    @ __CONFIG _CONFIG1H, _FOSC_HSPLL_HS_1H
    @ __CONFIG _CONFIG2H, _WDT_OFF_2H & _WDTPS_512_2H
    @ __CONFIG _CONFIG3H, _PBADEN_OFF_3H & _MCLRE_OFF_3H
    @ __CONFIG _CONFIG4L, _LVP_OFF_4L &_XINST_OFF_4L
    INCLUDE "DT_INTS-18.bas"
    ASM
    INT_LIST macro
    INT_Handler USB_INT, _DoUSBService, ASM, yes
    endm
    INT_CREATE
    endasm
    USBBufferSizeTX con 8
    USBBufferSizeRX con 8
    USBBufferCount Var Byte
    USBBufferIn var byte[8]
    USBBufferOut Var Byte[8]
    DataToSend var byte[8]
    asm
    SendUSB macro array
    variable i=0
    while i<8
    MOVE?BB (array+i),(_USBBufferOut+i)
    i+=1
    endw
    L?CALL _DoUSBOut
    endm
    endasm
    SwHwInit:
    GOSUB DoUSBinit:
    Start:
    clear
    if portb.7 = 1 then
    DATATOSEND[1] = 0
    DATATOSEND[2] = 0
    DATATOSEND[3] = $51 ; if i change it to be "80" >> volume up, it didnt work .
    DATATOSEND[4] = 0
    DATATOSEND[5] = 0
    DATATOSEND[6] = 0
    DATATOSEND[7] = 0
    gosub DoUSBOut
    else
    clear
    DATATOSEND[1] = 0
    DATATOSEND[2] = 0
    DATATOSEND[3] = 0
    DATATOSEND[4] = 0
    DATATOSEND[5] = 0
    DATATOSEND[6] = 0
    DATATOSEND[7] = 0
    endif
    @ SendUSB _DataToSend
    gosub dousbin
    goto start
    DoUSBIn:
    @ INT_DISABLE USB_INT
    USBBufferCount = USBBufferSizeRX
    USBService
    USBIn 1, USBBufferin, USBBufferCount, Timeout
    Timeout:
    @ INT_ENABLE USB_INT

    DoUSBOut:
    @ INT_DISABLE USB_INT
    WaitPC:
    USBBufferCount = USBBufferSizeTX
    USBService
    USBOut 1, USBBufferOut, USBBufferCount, Waitpc
    @ INT_ENABLE USB_INT
    return
    usb_device_state var byte EXT
    CONFIGURED_STATE CON EXT
    DoUSBinit:
    pause 500
    usbinit
    repeat
    usbservice
    until usb_device_state = CONFIGURED_STATE
    @ INT_ENABLE USB_INT
    return
    DoUSBService:
    usbservice
    @ INT_RETURN
    Attached Files Attached Files

Similar Threads

  1. USB HID is slower than often using PIC18f2550
    By Ahmadabuomar in forum mel PIC BASIC Pro
    Replies: 6
    Last Post: - 16th November 2010, 14:05
  2. HID Keyboard Example
    By apitaru in forum USB
    Replies: 8
    Last Post: - 6th August 2010, 16:27
  3. PIC18F2550 Newbie
    By JeffnDana in forum mel PIC BASIC Pro
    Replies: 9
    Last Post: - 26th April 2007, 15:13
  4. Replies: 3
    Last Post: - 18th January 2006, 14:12
  5. USB, PIC18F2550 and VB
    By Tissy in forum mel PIC BASIC Pro
    Replies: 4
    Last Post: - 27th November 2005, 18:37

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts