xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 9KB
    文件類(lèi)型: .c
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-06-18
  • 語(yǔ)言: 其他
  • 標(biāo)簽: CAN??STM32??

資源簡(jiǎn)介

STM32 CAN的發(fā)送和接收,最詳細(xì)最簡(jiǎn)單的介紹,保證一看就能立馬應(yīng)用上!強(qiáng)力推薦!

資源截圖

代碼片段和文件信息

/**
?******************************************************************************
?*?@file????main.c?
?*?@author??David?Wang
?*?@date????2018-08-16
?*?@brief???Main?program?body
?******************************************************************************
?*?@attention
?*?
?*
?******************************************************************************
?*/

/*?-----------------------?Includes?-----------------------------------------*/
#include?
#include?“stm32f10x.h“


/*?-----------------------?Defines?------------------------------------------*/
#define?DEFAULT_NODEID?0x01
void?Init_CAN(void);
u8?CAN_SetMsg(u8?*msgu8?len);
u8?CAN_GetMsg(u8?*msg1u8?*msg2);
void?CAN1_RX0_IRQHandler(void);
u8?Rx_flag=0;
#define?CAN_RX_LEN??????????8??????????//定義最大接收字節(jié)數(shù)?
u8?CAN_RX_BUF[CAN_RX_LEN];
u8?CAN_TX_BUF[CAN_RX_LEN];
u8?CAN_RX_BUF[CAN_RX_LEN]={0x08};?????//接收緩沖最大8個(gè)字節(jié).

/*?-----------------------?Function?prototypes?------------------------------*/
/*=============================================================================
?*?Description :?Main?program
?*?Input?Para :?none
?*?Output?Para :?none
?*?Return?Value?:?none
?============================================================================*/
int?main(void)
{
Init_CAN();
while(1)
{
CAN_SetMsg(CAN_RX_BUF8);
//CAN_GetMsg(00);
CAN1_RX0_IRQHandler();
}
}?
//初始化函數(shù)
void?Init_CAN(void)
{
????GPIO_InitTypeDef???????GPIO_InitStructure;?
????NVIC_InitTypeDef???????NVIC_InitStructure;
????CAN_InitTypeDef????????CAN_InitStructure;
????CAN_FilterInitTypeDef??CAN_FilterInitStructure;

????/*?復(fù)用功能和GPIOB端口時(shí)鐘使能*/????
????RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO?|?RCC_APB2Periph_GPIOB?ENABLE);??????????????????????????????????????????????????????????????????????

????/*?CAN1?模塊時(shí)鐘使能?*/
????RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1?ENABLE);?
/*?CAN2?模塊時(shí)鐘使能?*/
????RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN2?ENABLE);?

????/*?Configure?CAN?pin:?RX?*/??//?PB8
????GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_8;
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_IPU;???????//上拉輸入
????GPIO_Init(GPIOB?&GPIO_InitStructure);

????/*?Configure?CAN?pin:?TX?*/???//?PB9
????GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_9;
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_AF_PP;?????//復(fù)用推挽輸出
????GPIO_Init(GPIOB?&GPIO_InitStructure);

/*?Configure?CAN?pin:?RX?*/??//?PB5
????GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_5;
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_IPU;???????//上拉輸入
????GPIO_Init(GPIOB?&GPIO_InitStructure);

????/*?Configure?CAN?pin:?TX?*/???//?PB6
????GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_6;
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_AF_PP;?????//復(fù)用推挽輸出
????GPIO_Init(GPIOB?&GPIO_InitStructure);

????//重映射
????GPIO_PinRemapConfig(GPIO_Remap1_CAN1?ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_CAN2?ENABLE);

????/*?Configure?the?NVIC?Preemption?Priority?Bits?*/??
????NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);

????

評(píng)論

共有 條評(píng)論