[Microchip]/PIC18F2009. 5. 8. 18:13

[PIC18F-s EVM] C#을이용한 HID Host Program작성

[PIC18F-s EVM] C#을이용한 HID Host Program작성



사용자 삽입 이미지
[PIC18F-s EVM] 보드를 이용하여 C#에서 HID 테스트 프로그램을 작성 했다.
HID장치는 윈도우에서 기본 드라이버를 제공하므로 USB 드라이버 작성없이 아주 간단하게 USB통신을 할 수 있다.
USB연결만 하면 동작하므로 사용자 입장에서 상당히 편리하게 사용할 수 지만  표준 디스크립트로 (Report)로 통신을 해야 하므로 속도면에서는 Bulk통신보다는 느린 단점이 있다. 특히 연속적 데이터를 송수신 하는경우 확실히 느려짐을 알 수 있다.



PIC18F2450 펌웨어 작성




C#을 이용한 HID테스트 프로그램
LED제어 및 64 Bulk로 데이터 수신 예제


PIC18F2450 USB HID 테스트 동영상



Posted by nexp

댓글을 달아 주세요

  1. abyss

    관리자의 승인을 기다리고 있는 댓글입니다

    2011.09.02 10:12 [ ADDR : EDIT/ DEL : REPLY ]

[Microchip]/PIC18F2008. 3. 15. 00:08

[PIC18F-s EVM]USB HID테스트

[PIC18F-s EVM]USB HID테스트




기본 제공 예제를 좀 수정해서 PIC18F2450용으로 수정 했다. USB를 연결하니 장치를 찾고..



드라이버를 설치 했다.



장치관리자에 USB장치가 등록된것을 볼 수 있다.


이제 드라이버를 이용하여 어플리케이션 프로그램을 작성해면 될듯....
Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC18F2008. 2. 29. 10:40

[PIC18F-s EVM]LED테스트 (PIC18F2450)

[PIC18F-s EVM]LED테스트 (PIC18F2450, PIC18F2455)


PIC18F2450은 USB 때문에 클럭을 20Mhz로 사용해서 IO토글 속도가 500ns(470kHz)정도 나온다...
속도가 빠르니 for루프 딜레이 사용은 좀 그렇고... 자체 제공 delay함수를 사용했다.

PIC18F2450 LED제어 예제 소스





[PIC18F-s EVM]의 OnBoard LED는 PORTA0, 1에 연결되어 있다.


LED드라이버는 PORTA에 정의해서 작성 했고..
//-----------------------------------------------------------------------------
//LED Driver
#define LED1_BIT   BIT0
#define LED1_PORT   PORTA
#define Led1Init()   TRISAbits.TRISA0 = 0
#define Led1On()   Cbi(LED1_PORT, LED1_BIT)
#define Led1Off()   Sbi(LED1_PORT, LED1_BIT)
#define Led1Toggle()  Tbi(LED1_PORT, LED1_BIT)

#define LED2_BIT   BIT1
#define LED2_PORT   PORTA
#define Led2Init()   TRISAbits.TRISA1 = 0
#define Led2On()   Cbi(LED2_PORT, LED2_BIT)
#define Led2Off()   Sbi(LED2_PORT, LED2_BIT)  
#define Led2Toggle()  Tbi(LED2_PORT, LED1_BIT)
//-----------------------------------------------------------------------------
 
소스코드는 다른 MCU예제를 사용하는데... 컴파일러가 무료인지라 날짜가 지나서 그런지... 몇가지 제약이 있는것 같다. 다른 옵션이 있는지 알아 봐야 겠다.. 아무튼 업데이트를 하던지...

#include <p18cxxx.h>

#include <delays.h>

#pragma config WDT = OFF

#include "..\00_hal\config.h"

//#include "..\00_hal\system.h"

#define Delay   Delay10KTCYx

/*void Delay(unsigned int N)

{

        unsigned int i;

        for(i=0;i<N;i++)Delay1KTCYx(1);

}*/

void SystemInit(void)

{

}

void main (void)

{

        //Init System

        SystemInit();

       

        //Init LED

        Led1Init();

        Led2Init();

        Led2On();

        Led1On();       

        while(1)

        {

                Delay(300);

                Led2On();

                Led1Off();

                Delay(300);

                Led1On();

                Led2Off();       

       

}


확장 보드에 연결하여 테스트




동영상

Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC18F2008. 1. 18. 16:02

[PIC18-s EVM] 보드 관련자료

[PIC18USB-s EVM] 보드 관련자료

사용자 삽입 이미지


PIC18F2450 USB칩 샘플이 와서 조립했다. QFN-28이라 상당히 작고 소형의 USB제어에 사용되면 좋을듯 하군..


[dsPIC3xF-S EVM]
 와 동일한 크기로 제작 했고 앞으로 QFN-48 타입도 같은 싸이즈로 제작하면 동일한 APP보드에 적용가능 할듯...


CDC데모 예제 테스트


PIC18F2450 EVM Schematic





 


PIC18F example




Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC18F2007. 12. 21. 22:00

[PIC18F-s EVM]보드 조립

[PIC18USB-s EVM]보드 조립

dsPIC만들면서 같은 크기에 호환되는 것을 생각하다. 소형 QFN-28타입에 USB가 지원되는 PIC18F2450 가 있어 한번 만들어 봤습니다. 간단히 USB가필요 할 때 여러가지 유용하게 쓰일듯 합니다.
메모리가 좀 작은것이 험이지만 PIC18F2455는 QFN타입이 없어 아쉽다.





추후 PIC18F4450, PIC18F4455등과 같은 싸이즈로 만들면 좋을것 같다.

Posted by nexp

댓글을 달아 주세요