예제 #1
0
void USB_LP_CAN1_RX0_IRQHandler(void)
#endif
{
  if (CAN_GetITStatus(CAN1, CAN_IT_FMP0) != RESET)
  {
    STM_EVAL_LEDOn(LED7);
    CAN_Receive(CAN1, CAN_FIFO0, &RxMessage);

    SendCanMsg(RxMessage);
    STM_EVAL_LEDOff(LED7);
  }
  else USB_Istr();
}
예제 #2
0
파일: main.c 프로젝트: 294250581/TMCS
int main(void)
{
	utDisInt;
	utInitInt();	
	utInitSys();
	utEnInt;
	/* Can bus init */
	can_Init();
	/* iobus init */
	iobus_init();

	/* 步进电机初始化 */
#if defined(motor_device)

	/* L6470端口及SPI初始化 */
	dSPIN_Peripherals_Init();
	
	/* L6470复位 */
	dSPIN_Reset_And_Standby(dSPIN_Device_All);

	/* L6470中断初始化 */
	dSPIN_Interrupt_Channel_Config();

	/* 电机参数初始化 */
	motor_init_set();
	
	ENC_Init();
	
#endif

	utPrt("********************************\r\n");
	utPrt("CPU: STM32F103RCT6 at 72 MHz	\r\n");
	utPrt("Board: TMCS    Board (Version2) \r\n");
	utPrt("Editor: Tsui					\r\n");
	utPrt("Compant: TMCS					\r\n");
	utPrt("Shell: Shell Version1			\r\n");
	utPrt("Compile Date: %s	   \r\n",__DATE__);
	utPrt("Compile TIME: %s	   \r\n",__TIME__);
	utPrt("********************************\r\n");

	/* set can baud rate at 250Kbit */
	can_set_baudrate(can_parameter._t_bit_rate);

#if 0
	g_tCanTxMsg.DLC 	= 3;
	g_tCanTxMsg.Data[0] = 0x11;
	g_tCanTxMsg.Data[1] = 0x22;
	g_tCanTxMsg.Data[2] = 0x33;
	SendCanMsg(&g_tCanTxMsg); 
#endif

	DetectCal();
	iobus_reload();

	utDelay1s(1);
	ENC_Clean();

	/* Start os */
	utPrt("Start utOs......\n");

	utStartOS();	
}