STM32F103 USB CAN 使用【悬赏问答】
您好,我使用STM32F103 48pin , PA11 PA12為USB(使用HID) , PB8 PB9為CAN,
當USB接上時會找到USB裝置,執行CAN傳送,結果USB會斷掉(電腦的裝置管理員顯示錯誤),
而且產生死機現象(一直中斷USB_LP_CAN_RX0_IRQHandler())
CAN1_Init();
RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN, DISABLE);
USB_Cable = 1;
USB_Port_Init();
if(KEY1 == 0)
{
USB_Cable_Config(DISABLE);
CAN_Write();
Dly10ms();
USB_Cable_Config(ENABLE);
}
void CAN1_Init(void)
{
NVIC_InitStructure.NVIC_IRQChannel = USB_LP_CAN_RX0_IRQChannel;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
CAN_DeInit();
CAN_StructInit(&CAN_InitStructure);
CAN_InitStructure.CAN_TTCM = DISABLE;
CAN_InitStructure.CAN_ABOM = ENABLE;
CAN_InitStructure.CAN_AWUM = DISABLE;
CAN_InitStructure.CAN_NART = DISABLE;
CAN_InitStructure.CAN_RFLM = DISABLE;
CAN_InitStructure.CAN_TXFP = ENABLE;
CAN_InitStructure.CAN_Mode = CAN_Mode_Normal;
CAN_InitStructure.CAN_SJW = CAN_SJW_1tq;
CAN_InitStructure.CAN_BS1 = CAN_BS1_3tq;
CAN_InitStructure.CAN_BS2 = CAN_BS2_5tq;
CAN_InitStructure.CAN_Prescaler = 4;
CAN_Init(&CAN_InitStructure);
CAN_FilterInitStructure.CAN_FilterNumber = 0;
CAN_FilterInitStructure.CAN_FilterMode = CAN_FilterMode_IdMask;
CAN_FilterInitStructure.CAN_FilterScale = CAN_FilterScale_32bit;
CAN_FilterInitStructure.CAN_FilterIdHigh=((MAIN_CAN_ID16;
CAN_FilterInitStructure.CAN_FilterIdLow=((MAIN_CAN_ID
RE:STM32F103 USB CAN 使用【悬赏问答】
您好,usb和can是复用的,也就是说,同一时间只能用一种功能的,解决这个可以选105双can功能的芯片啊亲RE:STM32F103 USB CAN 使用【悬赏问答】
共用的引脚在使用时要加以区分的哦。:DRE:STM32F103 USB CAN 使用【悬赏问答】
没用过USB,学习啦RE:STM32F103 USB CAN 使用【悬赏问答】
STM32F103中usb和can是只能够用一种功能之一,书上一开始就说明的 能不能将你的usb固件代码传上来呀?我现在再搞ST32F103的USB,可是我发现我下载的固件驱动里面都没有usb的固件代码,也是醉了,希望楼主能传一下
页:
[1]