'CAN2USB'에 해당되는 글 3건

  1. 2014.08.17 TM4C123 USB 테스트 - CAN2USB 테스트
  2. 2012.04.19 [CANTUSB] 조향각 센서 테스트
  3. 2009.12.05 [LM3S5732-SM] USB2CAN 테스트 (1)
[TI]/TM4C2014. 8. 17. 22:30

TM4C123 USB 테스트 - CAN2USB 테스트

TM4C123 USB 테스트 - CAN2USB 테스트



TM4C123은 기존 Crtex-M3 코어 시리즈인 LM3S5732 와 같이 USB Device, HOST를 지원하고 CAN통신이 가능하다.

USB를 지원하면서 CAN이 가능한 MCU중에서 저렴하고 사용하기 편리하기 때문에 USB2CAN 보드 제작하기에 좋을것 같다.



TM4C123 USB 관련 핀맵




TM4C123 USB 초기화 코드

void InitializeUsb(void)

{

    // Enable the GPIO peripheral used for USB, and configure the USB pins

ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);

ROM_GPIOPinTypeUSBAnalog(GPIO_PORTB_BASE, GPIO_PIN_0 | GPIO_PIN_1);    

ROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);

ROM_GPIOPinTypeUSBAnalog(GPIO_PORTD_BASE, GPIO_PIN_4 | GPIO_PIN_5);

    

    // Initialize the transmit and receive buffers.

    USBBufferInit((tUSBBuffer *)&g_sTxBuffer);

    USBBufferInit((tUSBBuffer *)&g_sRxBuffer);



    // Pass our device information to the USB library and place the device

    // on the bus.

    USBDBulkInit(0, (tUSBDBulkDevice *)&g_sBulkDevice);    

}



TM4C123 USB 데이터 수신 처리 함수

//---------------------------------------------------------

//수신 데이터 처리 

//pvMsgData 는 수신된 데이터의 포인터

data = (unsigned char*)(pvMsgData);

for(i=0;i<ui32MsgValue;i++)

{

DebugPrint("%02X ", *(data+i));

}

DebugPrint("\r\n");


switch(*data)

{

case CMD_SET_LED:

Led1On();

break;

case CMD_RESET_LED:

Led1Off();

break;

case CMD_SET_LED2:

Led2On();

break;

case CMD_RESET_LED2:

Led2Off();

break;                

case CMD_READ_CAN_DATA:

USBBufferInit((tUSBBuffer *)&g_sTxBuffer);

    //CAN통신 데이터 처리

CANProcess(g_sTxBuffer);


    //USB 데이터 전송

USBBufferDataWritten(&g_sTxBuffer, 2);                

break;

}

//---------------------------------------------------------




USB2CAN 테스트 PC 프로그램
LM3S5732에서 작성 했던 프로그램을 동일하게 테스트 가능하다



TM4C123 USB2CAN 테스트 동영상


Posted by nexp

댓글을 달아 주세요

[INTERFACE]/CAN2012. 4. 19. 23:32

[CANTUSB] 조향각 센서 테스트

[CANTUSB] 조향각 센서 테스트

 

 

자동차용 조향각 센서(Steering Sensor) 는 CAN 인터페이스 방식으로 연결되기 때문에 예전에 LM3S5732로 제작했던  CAN2USB 보드를 이용하여 센서값을 출력해 보았다.

 

조향각 센서는 CAN ID 7C0로 적절히 초기 값을 설정하면 2B0 에서 각도 및 각속도가 출력된다.

[ID 2B0(0):00:05] : ff 7f 00 05 | f2 00 00 00
[ID 2B0(0):00:05] : ff 7f 00 05 | e3 00 00 00

 

 

테스트 동영상

CAN2USB 보드를 이용하여 조향각 센서의 데이터값을 출력하는 테스트

 

Posted by nexp

댓글을 달아 주세요

[TI]/LM3S5xxx2009. 12. 5. 16:43

[LM3S5732-SM] USB2CAN 테스트

[LM3S5732-SM] USB2CAN 테스트


USB 및 CAN통신 기능이 있는 LM3S5732를 이용하여 CAN2USB 테스트를 진행 했다.
모터 제어용으로 만들었던 확장 보드를 이용 하였는데 CAN드라이버가 있고 LM3S2965보드와 호환 쉽게 된다.



USB2CAN 테스트 프로그램
LM3S5732는 USB기능이 있기 때문에 PC와 고속 인터페이스가 쉽다. USB Bulk모드로 통신하도록 프로그램을 작성하였다.



LM3S5732 USB2CAN테스트 동영상
CAN2USB 테스트를 위해 CAN디바이스(LM3S2265)에서 스위치를 누를때 마다 전송되는 CAN 데이터를 LM3S5732 USB인터페이를 이용하여 데이터를 PC로 출력하는 예제를 작성해 보았다.



수정사항
모터 제어 확장보드는 여러가지 테스트에 활용할 수 있도록 제작하였지만 주로 LM3S2965를 타겟으로 제작되었기 때문에 LM3S5732를 사용할때는 약간의 수정 사항이 필요하다. -> 다음 추가 제작시에는  이부분을 반영해야 겠다.
1) SM-Type보드(LM3S5732)를 이용할때 CAN인터페이스를 위해서는 점퍼가 있어야 한다.



2)모터제어 확장보드의 스위치도 연결이 안되어 있으므로 점퍼가 필요하다.
 - 확장보드의 위쪽 스위치(SW7) 을 LM3S5732의 CN11_14P(PC6)으로 연결 하였다.

Posted by nexp

댓글을 달아 주세요

  1. 비밀댓글입니다

    2011.09.21 15:09 [ ADDR : EDIT/ DEL : REPLY ]