MCU微課堂
CKS32F107XX系列bxCAN介紹
第七十期 2026.01.19
bxCAN簡(jiǎn)介
CKS32F107xx系列產(chǎn)品的bxCAN支持CAN協(xié)議2.0A和2.0B標(biāo)準(zhǔn)。 該CAN 控制器支持最高的通訊速率為1Mb/s;可以自動(dòng)地接收和發(fā)送CAN報(bào)文,支持使用標(biāo)準(zhǔn)ID和擴(kuò)展ID的報(bào)文;外設(shè)中具有3個(gè)發(fā)送郵箱,發(fā)送報(bào)文的優(yōu)先級(jí)可以使用軟件控制,還可以記錄發(fā)送的時(shí)間;具有2個(gè)3級(jí)深度的接收FIFO,可使用過濾功能只接收或不接收某些ID號(hào)的報(bào)文;可配置成自動(dòng)重發(fā);不支持使用 DMA進(jìn)行數(shù)據(jù)收發(fā)。
圖1是CKS32F107系列芯片的CAN外設(shè)架構(gòu)圖,圖里具有2組CAN 控制器,其中CAN1是主設(shè)備,框圖中的“存儲(chǔ)訪問控制器”是由CAN1控制的,CAN2無法直接訪問存儲(chǔ)區(qū)域,所以使用CAN2的時(shí)候必須使能CAN1外設(shè)的時(shí)鐘。框圖中主要包含CAN控制內(nèi)核、發(fā)送郵箱、接收FIFO以及驗(yàn)收篩選器。

圖1 CKS32F107系列CAN外設(shè)架構(gòu)圖
CAN控制內(nèi)核
CAN控制內(nèi)核包含了各種控制寄存器及狀態(tài)寄存器,我們主要講解其中的主控制寄存器CAN_MCR及位時(shí)序寄存器CAN_BTR。
主控制寄存器CAN_MCR負(fù)責(zé)管理CAN的工作模式,主要包括以下工作模式:
DBF調(diào)試凍結(jié)功能 DBF(Debug freeze):調(diào)試凍結(jié),使用它可設(shè)置CAN處于工作狀態(tài)或禁止收發(fā)的狀態(tài),禁止收發(fā)時(shí)仍可訪問接收FIFO中的數(shù)據(jù)。這兩種狀態(tài)是當(dāng)芯片處于程序調(diào)試模式時(shí)才使用的,平時(shí)使用并不影響。
TTCM 時(shí)間觸發(fā)模式 TTCM(Time triggered communication mode):時(shí)間觸發(fā)模式,它用于配置CAN的時(shí)間觸發(fā)通信模式,在此模式下,CAN使用它內(nèi)部定時(shí)器產(chǎn)生時(shí)間戳,利用它可以實(shí)現(xiàn)ISO 11898-4CAN標(biāo)準(zhǔn)的分時(shí)同步通信功能。 ABOM自動(dòng)離線管理 ABOM(Automatic bus-o? management): 自動(dòng)離線管理,它用于設(shè)置是否使用自動(dòng)離線管理功能。當(dāng)節(jié)點(diǎn)檢測(cè)到它發(fā)送錯(cuò)誤或接收錯(cuò)誤超過一定值時(shí),會(huì)自動(dòng)進(jìn)入離線狀態(tài),在離線狀態(tài)中,CAN不能接收或發(fā)送報(bào)文。處于離線狀態(tài)的時(shí)候,可以軟件控制恢復(fù)或者直接使用這個(gè)自動(dòng)離線管理功能,它會(huì)在適當(dāng)?shù)臅r(shí)候自動(dòng)恢復(fù)。
AWUM 自動(dòng)喚醒 AWUM(Automatic bus-o? management):自動(dòng)喚醒功能,CAN 外設(shè)可以使用軟件進(jìn)入 低功耗的睡眠模式,如果使能了這個(gè)自動(dòng)喚醒功能,當(dāng) CAN檢測(cè)到總線活動(dòng)的時(shí)候,會(huì)自動(dòng)喚醒。
NART 自動(dòng)重傳NART(No automatic retransmission): 報(bào)文自動(dòng)重傳功能,設(shè)置這個(gè)功能后,當(dāng)報(bào)文發(fā)送失敗時(shí)會(huì)自動(dòng)重傳至成功為止。若不使用這個(gè)功能,無論發(fā)送結(jié)果如何,消息只發(fā)送一次。
RFLM鎖定模式RFLM(Receive FIFO locked mode):FIFO 鎖定模式,該功能用于鎖定接收FIFO。鎖定后,當(dāng)接收FIFO溢出時(shí),會(huì)丟棄下一個(gè)接收的報(bào)文。若不鎖定,則下一個(gè)接收到的報(bào)文會(huì)覆蓋原報(bào)文。
TXFP報(bào)文發(fā)送優(yōu)先級(jí)的判定方法TXFP(Transmit FIFO priority):報(bào)文發(fā)送優(yōu)先級(jí)的判定方法,當(dāng)CAN外設(shè)的發(fā)送郵箱中有多個(gè)待發(fā)送報(bào)文時(shí),本功能可以控制它是根據(jù)報(bào)文的ID優(yōu)先級(jí)還是報(bào)文存進(jìn)郵箱的順序來發(fā)送。
位時(shí)序寄存器(CAN_BTR)及波特率:CAN外設(shè)中的位時(shí)序寄存器CAN_BTR用于配置測(cè)試模式、波特率以及各種位內(nèi)的段參數(shù)。
正常模式:正常模式下就是一個(gè)正常的CAN節(jié)點(diǎn),可以向總線發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。
靜默模式:靜默模式下,它自己的輸出端的邏輯0數(shù)據(jù)會(huì)直接傳輸?shù)剿约旱妮斎攵耍壿?可以被發(fā)送到總線,所以它不能向總線發(fā)送顯性位(邏輯0),只能發(fā)送隱性位(邏輯1)。輸入端可以從總線接收內(nèi)容。由于它只可發(fā)送的隱性位不會(huì)強(qiáng)制影響總線的狀態(tài),所以把它稱為靜默模式。這種模式一般用于監(jiān)測(cè),它可以用于分析總線上的流量,但又不會(huì)因?yàn)榘l(fā)送顯性位而影響總線。
回環(huán)模式:回環(huán)模式下,它自己的輸出端的所有內(nèi)容都直接傳輸?shù)阶约旱妮斎攵耍敵龆说膬?nèi)容同時(shí)也會(huì)被傳輸?shù)娇偩€上,即也可使用總線監(jiān)測(cè)它的發(fā)送內(nèi)容。輸入端只接收自己發(fā)送端的內(nèi)容,不接收來自總線上的內(nèi)容。使用回環(huán)模式可以進(jìn)行自檢。
回環(huán)靜默模式:該模式是以上兩種模式的結(jié)合,自己的輸出端的所有內(nèi)容都直接傳輸?shù)阶约旱妮斎攵耍⑶也粫?huì)向總線發(fā)送顯性位影響總線,不能通過總線監(jiān)測(cè)它的發(fā)送內(nèi)容。輸入端只接收自己發(fā)送端的內(nèi)容,不接收來自總線上的內(nèi)容。這種方式可以在“熱自檢”時(shí)使用,即自我檢查的時(shí)候,不會(huì)干擾總線。
位時(shí)序及波特率: CKS32F107中CAN的位時(shí)序如圖2所示。

圖2 CAN位時(shí)序圖
CKS32F107的CAN外設(shè)位時(shí)序中只包含3段,分別是同步段SYNC_SEG、位段 BS1及位段BS2,采樣點(diǎn)位于BS1及BS2段的交界處。其中SYNC_SEG段固定長(zhǎng)度為1Tq,而BS1及BS2段可以在位時(shí)序寄存器CAN_BTR設(shè)置它們的時(shí)間長(zhǎng)度,它們可以在重新同步期間增長(zhǎng)或縮短,該長(zhǎng)度SJW也可在位時(shí)序寄存器中配置。因此通過配置位時(shí)序寄存器CAN_BTR的TS1[3:0]及TS2[2:0]寄存器位設(shè)定BS1及 BS2段的長(zhǎng)度后,我們就可以確定每個(gè)CAN數(shù)據(jù)位的時(shí)間:
T1bit =1Tq+TBS1+TBS2=NTq
其中單個(gè)時(shí)間片的長(zhǎng)度Tq與CAN外設(shè)的所掛載的時(shí)鐘總線及分頻器配置有關(guān),CAN1和CAN2外設(shè)都是掛載在APB1總線上的,而位時(shí)序寄存器CAN_BTR中的BRP[9:0]寄存器位可以設(shè)置CAN外設(shè)時(shí)鐘的分頻值,所以:
Tq=(BRP[9:0]+1) x TPCLK
其中的PCLK指APB1時(shí)鐘,默認(rèn)值為36MHz。
最終可以計(jì)算出CAN通訊的波特率:BaudRate=1/NTq
CAN發(fā)送郵箱
它一共有3個(gè)發(fā)送郵箱,即最多可以緩存3個(gè)待發(fā)送的報(bào)文。每個(gè)發(fā)送郵箱中包含有標(biāo)識(shí)符寄存器CAN_TIxR、數(shù)據(jù)長(zhǎng)度控制寄存器CAN_TDTxR及2個(gè)數(shù)據(jù) 寄存器CAN_TDLxR、CAN_TDHxR,它們的功能如下表所示,當(dāng)我們要使用CAN外設(shè)發(fā)送報(bào)文時(shí),把報(bào)文的各個(gè)段分解,按位置寫入到這些寄存器中,并對(duì)標(biāo)識(shí)符寄存器CAN_TIxR中的發(fā)送請(qǐng)求寄存器位TMIDxR_TXRQ置1,即可把數(shù)據(jù)發(fā)送出去。

CAN接受FIFO
CKS32F107系列一共有2個(gè)接收FIFO,每個(gè)FIFO中有3個(gè)郵箱,即最多可以緩存6個(gè)接收到的報(bào)文。當(dāng)接收到報(bào)文時(shí),F(xiàn)IFO的報(bào)文計(jì)數(shù)器會(huì)自增,而CKS32F107內(nèi)部讀取FIFO數(shù)據(jù)之后,報(bào)文計(jì)數(shù)器會(huì)自減,我們通過狀態(tài)寄存器可獲知報(bào)文計(jì)數(shù)器的值,而通過前面主控制寄存器的RFLM位,可設(shè)置鎖定模式,鎖定模式下FIFO溢出時(shí)會(huì)丟棄新報(bào)文,非鎖定模式下FIFO溢出時(shí)新報(bào)文會(huì)覆蓋舊報(bào)文。跟發(fā)送郵箱類似,每個(gè)接收FIFO中包含有標(biāo)識(shí)符寄存器CAN_RIxR、數(shù)據(jù)長(zhǎng)度控制寄存器CAN_RDTxR及2個(gè)數(shù)據(jù)寄存器CAN_RDLxR、CAN_RDHxR,它們的功能見表發(fā)送郵箱的寄存器。通過中斷或狀態(tài)寄存器知道接收FIFO有數(shù)據(jù)后,我們?cè)僮x取這些寄存器的值即可把接收到的報(bào)文加載到MCU的內(nèi)存中。

驗(yàn)收篩選器
CAN 外設(shè)的驗(yàn)收篩選器,一共有28個(gè)篩選器組,每個(gè)篩選器組有2個(gè)寄存器,CAN1和CAN2共用篩選器。在CAN協(xié)議中,消息的標(biāo)識(shí)符與節(jié)點(diǎn)地址無關(guān),但與消息內(nèi)容有關(guān)。因此,發(fā)送節(jié)點(diǎn)將報(bào)文廣播給所有接收器時(shí),接收節(jié)點(diǎn)會(huì)根據(jù)報(bào)文標(biāo)識(shí)符的值來確定軟件是否需要該消息,為了簡(jiǎn)化軟件的工作,CAN外設(shè)接收?qǐng)?bào)文前會(huì)先使用驗(yàn)收篩選器檢查,只接收需要的報(bào)文到FIFO中。
初始化結(jié)構(gòu)體
從CKS32F107的CAN外設(shè)我們了解到它的功能非常多,控制涉及的寄存器也非常豐富,而使用標(biāo)準(zhǔn)庫(kù)提供的各種結(jié)構(gòu)體及庫(kù)函數(shù)可以簡(jiǎn)化這些控制過程。跟其它外設(shè)一樣,標(biāo)準(zhǔn)庫(kù)提供了CAN初始化結(jié)構(gòu)體及初始化函數(shù)來控制CAN的工作方式,提供了收發(fā)報(bào)文使用的結(jié)構(gòu)體及收發(fā)函數(shù),還有配置控制篩選器模式及ID 的結(jié)構(gòu)體。
列表1: 代碼清單:CAN初始化結(jié)構(gòu)體
typedef struct{
uint16_tCAN_Prescaler;
uint8_tCAN_Mode;
uint8_tCAN_SJW;
uint8_tCAN_BS1;
uint8_tCAN_BS2;
FunctionalState CAN_TTCM;
FunctionalState CAN_ABOM;
FunctionalState CAN_AWUM;
FunctionalState CAN_NART;
FunctionalState CAN_RFLM;
FunctionalState CAN_TXFP;
} CAN_InitTypeDef;
(1) CAN_Prescaler
本成員設(shè)置CAN外設(shè)的時(shí)鐘分頻,它可控制時(shí)間片Tq的時(shí)間長(zhǎng)度,這里設(shè)置的值最終會(huì)減1后再寫入BRP寄存器位,即前面介紹的Tq計(jì)算公式:
Tq = (BRP[9:0]+1) x TPCLK
等效于:Tq = CAN_Prescaler x TPCLK
(2) CAN_Mode
本成員設(shè)置CAN的工作模式,可設(shè)置為正常模式(CAN_Mode_Normal)、回環(huán) 模式(CAN_Mode_LoopBack)、靜默模式(CAN_Mode_Silent)以及回環(huán)靜默模式 (CAN_Mode_Silent_LoopBack)。
(3) CAN_SJW
本成員可以配置SJW的極限長(zhǎng)度,即CAN重新同步時(shí)單次可增加或縮短的最大長(zhǎng)度,它可以被配置為1-4Tq(CAN_SJW_1/2/3/4tq)。
(4) CAN_BS1
本成員用于設(shè)置 CAN 位時(shí)序中的 BS1 段的長(zhǎng)度,它可以被配置為 1-16 個(gè) Tq 長(zhǎng)度 (CAN_BS1_1/2/3…16tq)。
(5) CAN_BS2
本成員用于設(shè)置CAN位時(shí)序中的BS2段的長(zhǎng)度,它可以被配置為1-8個(gè)Tq 長(zhǎng)度(CAN_BS2_1/2/3…8tq)。 SYNC_SEG、BS1段及BS2段的長(zhǎng)度加起來即一個(gè)數(shù)據(jù)位的長(zhǎng)度,即前面介紹的原來計(jì)算公式:T1bit =1Tq+TS1+TS2 =1+ (TS1[3:0] +1)+ (TS2[2:0]+1) 等效于:T1bit = 1Tq+CAN_BS1+CAN_BS2
(6) CAN_TTCM
本成員用于設(shè)置是否使用時(shí)間觸發(fā)功能 (ENABLE/DISABLE),時(shí)間觸發(fā)功能在某些 CAN 標(biāo)準(zhǔn)中會(huì)使用到。
(7) CAN_ABOM
本成員用于設(shè)置是否使用自動(dòng)離線管理 (ENABLE/DISABLE),使用自動(dòng)離線管理可以 在節(jié)點(diǎn)出錯(cuò)離線后適時(shí)自動(dòng)恢復(fù),不需要軟件干預(yù)。
(8) CAN_ AWUM
本成員用于設(shè)置是否使用自動(dòng)喚醒功能 (ENABLE/DISABLE),使能自動(dòng)喚醒功能后它 會(huì)在監(jiān)測(cè)到總線活動(dòng)后自動(dòng)喚醒。
(9) CAN_ABOM
本成員用于設(shè)置是否使用自動(dòng)離線管理功能 (ENABLE/DISABLE),使用自動(dòng)離線管理 可以在出錯(cuò)時(shí)離線后適時(shí)自動(dòng)恢復(fù),不需要軟件干預(yù)。
(10)CAN_NART
本成員用于設(shè)置是否使用自動(dòng)重傳功能 (ENABLE/DISABLE),使用自動(dòng)重傳功能時(shí), 會(huì)一直發(fā)送報(bào)文直到成功為止。
(11)CAN_RFLM
本成員用于設(shè)置是否使用鎖定接收 FIFO(ENABLE/DISABLE),鎖定接收 FIFO 后,若 FIFO 溢出時(shí)會(huì)丟棄新數(shù)據(jù),否則在 FIFO 溢出時(shí)以新數(shù)據(jù)覆蓋舊數(shù)據(jù)。
(12)CAN_TXFP
本成員用于設(shè)置發(fā)送報(bào)文的優(yōu)先級(jí)判定方法 (ENABLE/DISABLE),使能時(shí),以報(bào)文存 入發(fā)送郵箱的先后順序來發(fā)送,否則按照?qǐng)?bào)文 ID 的優(yōu)先級(jí)來發(fā)送。 配置完這些結(jié)構(gòu)體成員后,我們調(diào)用庫(kù)函數(shù) CAN_Init 即可把這些參數(shù)寫入到 CAN 控制寄存器 中,實(shí)現(xiàn) CAN 的初始化。
CAN發(fā)送及接受結(jié)構(gòu)體
列表2:代碼清單:CAN發(fā)送及接收結(jié)構(gòu)體
typedef struct
{
uint32_t StdId;
uint32_t ExtId;
uint8_t IDE;
uint8_t RTR;
uint8_t DLC;
uint8_t Data[8];
} CanTxMsg;
typedef struct
{
uint32_t StdId;
uint32_t ExtId;
uint8_t IDE;
uint8_t RTR;
uint8_t DLC;
uint8_t Data[8];
uint8_t FMI;
} CanRxMsg;
(1) StdId
本成員存儲(chǔ)的是報(bào)文的11位標(biāo)準(zhǔn)標(biāo)識(shí)符,范圍是0-0x7FF。
(2) ExtId
本成員存儲(chǔ)的是報(bào)文的29位擴(kuò)展標(biāo)識(shí)符,范圍是0-0x1FFFFFFF。ExtId 與 StdId這兩個(gè)成員根據(jù)下面的IDE位配置,只有一個(gè)是有效的。
(3) IDE
本成員存儲(chǔ)的是擴(kuò)展標(biāo)志IDE位,當(dāng)它的值為宏CAN_ID_STD時(shí)表示本報(bào)文是標(biāo)準(zhǔn)幀,使用StdId成員存儲(chǔ)報(bào)文ID;當(dāng)它的值為宏CAN_ID_EXT 時(shí)表示本報(bào)文是擴(kuò)展幀,使用ExtId成員存儲(chǔ)報(bào)文ID。
(4) RTR
本成員存儲(chǔ)的是報(bào)文類型標(biāo)志RTR位,當(dāng)它的值為宏CAN_RTR_Data 時(shí)表示本報(bào)文是數(shù)據(jù)幀;當(dāng)它的值為宏CAN_RTR_Remote時(shí)表示本報(bào)文是遙控幀,由于遙控幀沒有數(shù)據(jù)段,所以當(dāng)報(bào)文是遙控幀時(shí),下面的Data[8]成員的內(nèi)容是無效的。
(5)DLC
本成員存儲(chǔ)的是數(shù)據(jù)幀數(shù)據(jù)段的長(zhǎng)度,它的值的范圍是0-8,當(dāng)報(bào)文是遙控幀時(shí)DLC值為0。
(6) Data[8]
本成員存儲(chǔ)的就是數(shù)據(jù)幀中數(shù)據(jù)段的數(shù)據(jù)。
(7)FMI
本成員只存在于接收結(jié)構(gòu)體,它存儲(chǔ)了篩選器的編號(hào),表示本報(bào)文是經(jīng)過哪個(gè)篩選器存儲(chǔ)進(jìn)接收FIFO的,可以用它簡(jiǎn)化軟件處理。當(dāng)需要使用CAN發(fā)送報(bào)文時(shí),先定義一個(gè)上面發(fā)送類型的結(jié)構(gòu)體,然后把報(bào)文的內(nèi)容按成員賦值到該結(jié)構(gòu)體中,最后調(diào)用庫(kù)函數(shù)CAN_Transmit把這些內(nèi)容寫入到發(fā)送郵箱即可把報(bào)文發(fā)送出去。 接收?qǐng)?bào)文時(shí),通過檢測(cè)標(biāo)志位獲知接收FIFO的狀態(tài),若收到報(bào)文,可調(diào)用庫(kù)函數(shù)CAN_Receive把接收FIFO中的內(nèi)容讀取到預(yù)先定義的接收類型結(jié)構(gòu)體中,然后再訪問該結(jié)構(gòu)體即可利用報(bào)文了。
CAN篩選器結(jié)構(gòu)體
列表3: 代碼清單:CAN篩選器結(jié)構(gòu)體
typedef struct
{
uint16_t CAN_FilterIdHigh;
uint16_t CAN_FilterIdLow;
uint16_t CAN_FilterMaskIdHigh;
uint16_t CAN_FilterMaskIdLow;
uint16_t CAN_FilterFIFOAssignment;
uint8_t CAN_FilterNumber;
uint8_t CAN_FilterMode;
uint8_t CAN_FilterScale;
FunctionalState CAN_FilterActivation;
} CAN_FilterInitTypeDef;
(1) CAN_FilterIdHigh
CAN_FilterIdHigh成員用于存儲(chǔ)要篩選的ID,若篩選器工作在32位模式,它存儲(chǔ)的是所篩選ID的高16位;若篩選器工作在16位模式,它存儲(chǔ)的就是一個(gè)完整的要篩選的ID。
(2) CAN_FilterIdLow
類似地,CAN_FilterIdLow 成員也是用于存儲(chǔ)要篩選的ID,若篩選器工作在32位模式,它存儲(chǔ)的是所篩選ID的低16位;若篩選器工作在16位模式,它存儲(chǔ)的就是一個(gè)完整的要篩選的ID。
(3) CAN_FilterMaskIdHigh
CAN_FilterMaskIdHigh存儲(chǔ)的內(nèi)容分兩種情況,當(dāng)篩選器工作在標(biāo)識(shí)符列表模式時(shí),它的功能與CAN_FilterIdHigh相同,都是存儲(chǔ)要篩選的ID;而當(dāng)篩選器工作在掩碼模式時(shí),它存儲(chǔ)的是CAN_FilterIdHigh成員對(duì)應(yīng)的掩碼,與CAN_FilterIdLow組成一組篩選器。
(4) CAN_FilterMaskIdLow
類似地,CAN_FilterMaskIdLow存儲(chǔ)的內(nèi)容也分兩種情況,當(dāng)篩選器工作在標(biāo)識(shí)符列表模式時(shí),它的功能與CAN_FilterIdLow 相同,都是存儲(chǔ)要篩選的ID;而當(dāng)篩選器工作在掩碼模式時(shí),它存儲(chǔ)的是 CAN_FilterIdLow 成員對(duì)應(yīng)的掩碼,與 CAN_FilterIdLow 組成一組篩選器。
(5) CAN_FilterFIFOAssignment
本成員用于設(shè)置當(dāng)報(bào)文通過篩選器的匹配后,該報(bào)文會(huì)被存儲(chǔ)到哪一個(gè)接收 FIFO,它的可選值為 FIFO0或FIFO1(宏CAN_Filter_FIFO0/1)。
(6) CAN_FilterNumber
本成員用于設(shè)置篩選器的編號(hào),即本過濾器結(jié)構(gòu)體配置的是哪一組篩選器,CAN一共有28個(gè)篩選器,所以它的可輸入?yún)?shù)范圍為0-27。
(7) CAN_FilterMode
本成員用于設(shè)置篩選器的工作模式,可以設(shè)置為列表模式(宏 CAN_FilterMode_IdList)及掩碼模式(宏 CAN_FilterMode_IdMask)
(8) CAN_FilterScale
本成員用于設(shè)置篩選器的尺度,可以設(shè)置為32位長(zhǎng)(宏 CAN_FilterScale_32bit) 及16位長(zhǎng) (宏 CAN_FilterScale_16bit)
(9) CAN_FilterActivation
本成員用于設(shè)置是否激活這個(gè)篩選器 (宏 ENABLE/DISABLE)。 配置完這些結(jié)構(gòu)體成員后,我們調(diào)用庫(kù)函數(shù)CAN_FilterInit 即可把這些參數(shù)寫入到篩選控制寄存器中,從而使用篩選器。
-
mcu
+關(guān)注
關(guān)注
147文章
19012瀏覽量
400296 -
控制器
+關(guān)注
關(guān)注
114文章
17826瀏覽量
194354 -
寄存器
+關(guān)注
關(guān)注
31文章
5612瀏覽量
130193 -
CAN
+關(guān)注
關(guān)注
59文章
3075瀏覽量
472994
原文標(biāo)題:MCU微課堂|CKS32F107XX系列bxCAN介紹
文章出處:【微信號(hào):中科芯MCU,微信公眾號(hào):中科芯MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
中科芯CKS32F107XX系列MCU的獨(dú)立看門狗介紹
中科芯CKS32F107XX系列MCU的窗口看門狗介紹
MCU微課堂|CKS32F4xx系列產(chǎn)品時(shí)鐘配置
中科芯推出面向CKS32位MCU的編程調(diào)試工具
CKS32F4xx系列產(chǎn)品串口DMA傳輸
CKS32F107xx系列時(shí)鐘組成介紹
CKS32F107xx系列時(shí)鐘系統(tǒng)具體配置方法講解
CKS32F107xx系列MCU中ADC介紹
CKS32F107xx系列MCU的GPIO內(nèi)部硬件結(jié)構(gòu)和工作模式
詳解CKS32F107xx系列的定時(shí)器同步功能
中科芯CKS32F107XX系列MCU的電源控制介紹
中科芯CKS32F107XX系列MCU的bxCAN介紹
評(píng)論