亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        STM32F107VCT6平臺下的bxCAN總線技術(shù)研究

        2012-09-21 10:43:46胡洪坡梁書劍鄭振華王鐵軍楊華
        關(guān)鍵詞:標識符寄存器過濾器

        胡洪坡,梁書劍,鄭振華,王鐵軍,楊華

        (河北省張家口市宣化區(qū)總參通信訓練基地科研所,張家口 075100)

        引 言

        控制器局域網(wǎng)(Controller Area Network,CAN)是國際上應用最廣的工業(yè)級現(xiàn)場總線之一。CAN總線最開始應用在汽車控制系統(tǒng)中,后來由于其卓越的控制性能及較高的性價比被陸續(xù)應用在其他自動控制領(lǐng)域,如工業(yè)自動化、多種控制設(shè)備、交通工具、醫(yī)療儀器、建筑領(lǐng)域以及環(huán)境控制等。STM32F107VCT6是基于 ARM Cortex-M3內(nèi)核的高性能微控制器芯片,主頻72MHz,內(nèi)部含有256 KB的Flash和64KB的SRAM。該芯片外設(shè)資源豐富,具有定時器、RS-485、RS-232、I2C總線、SPI、PWM、CAN總線等多種I/O資源。STM32F107VCT6芯片的CAN總線是一種擴展的CAN總線,稱為bxCAN(Basic Extended CAN),它支持CAN協(xié)議2.0A和2.0B。它的設(shè)計目標是以最小的CPU負荷來高效處理大量收到的報文,也支持報文發(fā)送的優(yōu)先級要求(優(yōu)先級特性可軟件配置)。本文主要研究STM32F107VCT6芯片的bxCAN總線使用技術(shù)。

        1 bxCAN總線端口配置

        STM32F107VCT6芯片的bxCAN有2路CAN總線通道,分別是CAN0和CAN1,每個CAN通道都有一個發(fā)送端TX和一個接收端RX。CAN1RX和CAN1TX位于芯片的GPIO引腳PD0和PD1上,CAN2RX和CAN2 TX位于芯片的GPIO引腳PB5和PB6上。STM32F107VCT6芯片的GPIO端口具有多種復用功能,要想正常使用bxCAN的功能,須首先對總線端口進行配置,主要步驟如下:

        (1)RCC初始化

        由于節(jié)能的需要,在系統(tǒng)加電復位時GPIO引腳是不工作的,所以要想正常使用CAN總線,必須配置復位時鐘控制RCC,給引腳加電。配置代碼如下:

        (2)GPIO初始化

        對bxCAN對應的GPIO引腳進行初始化,主要是配置GPIOD的引腳、輸入輸出狀態(tài)、數(shù)據(jù)速率等,之后還要進行重映射。以CAN1的初始化為例,配置代碼如下:GPIO_InitTypeDef GPIO_InitStructure;

        (3)NVIC初始化

        如果使用CAN總線中斷,還要配置嵌套向量中斷控制器NVIC。初始化代碼如下:

        2 bxCAN總線傳輸參數(shù)配置

        在bxCAN總線端口配置好后,還要對CAN總線的一些傳輸特性參數(shù)進行設(shè)置。遵循以下步驟:

        (1)CAN寄存器初始化

        為了防止其他操作更改特定寄存器的內(nèi)容,在進行傳輸特性參數(shù)配置前一般會對CAN總線接口初始化,使與CAN總線有關(guān)的寄存器恢復到加電復位狀態(tài)。代碼如下:

        (2)CAN單元初始化

        CAN單元初始化涉及到的參數(shù)由CAN控制寄存器CAN_MCR控制,CAN_MCR控制寄存器是一個32位的寄存器,其中不同的位段控制不同的功能。主要的位段有時間觸發(fā)通信模式 TTCM、自動離線(Bus-Off)管理ABOM、自動喚醒模式AWUM、禁止報文自動重傳NART、接收FIFO鎖定模式RFLM、發(fā)送FIFO優(yōu)先級TXFP等,對不同的位段置1或置0會影響相應的功能。配置代碼如下:

        此外,還要對CAN總線的操作模式MODE以及波特率特性SJW、BS1、BS2等參數(shù)進行相應設(shè)置。代碼如下:

        (3)濾波器初始化

        在CAN總線通信中,沒有地址的概念,即收發(fā)雙方不會像其他通信方式那樣在通信前需要指定收發(fā)雙方的地址,而是對每個發(fā)送的幀附加一個標識符,當發(fā)送方發(fā)出一個幀后,在總線上的用戶都能收到此發(fā)送幀,采用的通信方式是一點對多點的通信方式。如果接收方只對特定標識符的數(shù)據(jù)幀感興趣,而忽略其他標識符的幀,CAN總線協(xié)議提供了一種稱為“過濾器”的選擇方式來實現(xiàn)。STM32F107VCT6芯片的bxCAN提供28個位寬可變/可配置的標識符過濾器組,通過軟件對它們編程,從而在引腳收到的報文中選擇需要的報文,而把其他報文丟棄掉。在進行濾波器設(shè)置過程中,需要對濾波器號碼、濾波器初始化模式、過濾器位寬、過濾器標識符、過濾器屏蔽標識符、過濾器輸出FIFO、過濾器使能等參數(shù)進行配置。濾波器初始化代碼如下:

        3 bxCAN數(shù)據(jù)幀收發(fā)

        在對bxCAN總線的端口配置好并初始化傳輸參數(shù)后,就可以利用bxCAN總線傳送數(shù)據(jù)了。在收發(fā)數(shù)據(jù)前,我們先來看一下數(shù)據(jù)幀的幀結(jié)構(gòu)。

        (1)bxCAN數(shù)據(jù)幀結(jié)構(gòu)

        在bxCAN總線上傳送報文時以幀為單位傳送。bx-CAN總線的幀結(jié)構(gòu)與CAN總線的幀結(jié)構(gòu)基本一致。bx-CAN總線的幀主要有數(shù)據(jù)幀、遠程幀、錯誤幀和超載幀4種類型。數(shù)據(jù)幀的作用是從發(fā)送器向接收器攜帶數(shù)據(jù);遠程幀的作用是總線單元請求發(fā)送具有同一標識的數(shù)據(jù)幀;錯誤幀的作用是在總線上有錯誤時指示錯誤;超載幀的作用是在相鄰數(shù)據(jù)幀之間附加一定的延時。在bxCAN總線通信時主要使用的是數(shù)據(jù)幀,限于篇幅,只給出數(shù)據(jù)幀的幀結(jié)構(gòu),標準幀數(shù)據(jù)幀結(jié)構(gòu)如圖1所示。

        圖1 標準幀數(shù)據(jù)幀結(jié)構(gòu)

        由圖1可見,數(shù)據(jù)幀主要由7個不同的位場組成,分別是幀起始、仲裁場、控制場、數(shù)據(jù)場、CRC場、應答場、幀結(jié)束。幀起始SOF標志一個幀的起始,為一個顯性位(低電平0)。仲裁場由11位標識符ID和1位發(fā)送請求位RTR組成??刂茍鲇?位組成,分別是1位標識符IDE擴展位,用來表示是標準幀還是擴展幀;1位擴展位r0,待以后擴展使用;4位數(shù)據(jù)長度代碼DLC,表示幀攜帶數(shù)據(jù)的字節(jié)數(shù)。數(shù)據(jù)場由數(shù)據(jù)幀的發(fā)送數(shù)據(jù)組成,可以有0~8個字節(jié)數(shù)據(jù),共64位。CRC場進行幀的CRC校驗,包括運算得出的15位CRC序列和1個隱性(高電平1)的CRC界定符位。應答場為2位,包括1位應答間隙位和1位應答界定符位。幀結(jié)束由7位組成,7位數(shù)據(jù)全為隱性位。

        在傳送數(shù)據(jù)時,需要對每個發(fā)送的數(shù)據(jù)包指定標識符ID、遠程幀、標準幀、數(shù)據(jù)長度和發(fā)送的數(shù)據(jù)等數(shù)據(jù)項,之后就可以利用bxCAN總線進行發(fā)送接收了。如果使用中斷接收的話,還要在中斷處理程序中對接收數(shù)據(jù)進行相應處理。

        (2)bxCAN數(shù)據(jù)發(fā)送程序

        (3)bxCAN中斷接收函數(shù)

        結(jié) 語

        本文主要研究了STM32F107VCT6芯片的bxCAN總線的使用技術(shù),使用bxCAN總線一般需要遵循bxCAN總線端口配置、傳輸參數(shù)配置、數(shù)據(jù)幀收發(fā)3個步驟。為了說明問題,在分析過程中還給出了MDK平臺下的bx-CAN總線使用程序,通過程序可以更加清晰地說明各個步驟需要配置的相關(guān)參數(shù),對嵌入式開發(fā)過程中使用bx-CAN總線收發(fā)數(shù)據(jù)具有一定的借鑒作用。

        [1] 鄔寬明.CAN總線原理和應用系統(tǒng)設(shè)計[M].北京:北京航空航天大學出版社,2002.

        [2] 瑞薩科技.CAN 入門書[EB/OL].[2012-05]http:www.renesas.com.

        [3] 劉軍.例說STM32[M].北京:北京航空航天大學出版社,2011.

        猜你喜歡
        標識符寄存器過濾器
        淺析5G V2X 通信應用現(xiàn)狀及其側(cè)鏈路標識符更新技術(shù)
        基于底層虛擬機的標識符混淆方法
        計算機應用(2022年8期)2022-08-24 06:30:36
        Lite寄存器模型的設(shè)計與實現(xiàn)
        計算機應用(2020年5期)2020-06-07 07:06:44
        基于區(qū)塊鏈的持久標識符系統(tǒng)①
        支持過濾器的REST模型研究與實現(xiàn)
        電子測試(2018年9期)2018-06-26 06:45:56
        聲音過濾器
        趣味(語文)(2018年2期)2018-05-26 09:17:55
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        數(shù)字美術(shù)館“數(shù)字對象唯一標識符系統(tǒng)”建設(shè)需求淺議
        基于LOGO!的空氣過濾器自潔控制系統(tǒng)
        自動化博覽(2014年6期)2014-02-28 22:32:20
        HVM膜過濾器管板改造總結(jié)
        中國氯堿(2014年11期)2014-02-28 01:05:07
        国产成人一区二区三区在线观看| 国产亚洲3p一区二区| 国产性色av一区二区| 国产网站一区二区三区| 在线观看成人无码中文av天堂| 国产乱色精品成人免费视频| 欧美日韩精品一区二区三区高清视频 | 99久久久无码国产精品6| 国产精品亚洲五月天高清| 99RE6在线观看国产精品| 日本免费一区二区在线| 精品国产一区二区三区不卡在线| 秘书边打电话边被躁bd视频| 亚洲av无码男人的天堂在线| 97色综合| av男人的天堂第三区| 国产精品一区二区黑丝| av综合网男人的天堂| 又黄又爽又高潮免费毛片| 欧亚精品无码永久免费视频| 日产一区一区三区区别| 国产极品少妇一区二区| 国产成人精品久久综合| 日本大片免费观看完整视频| 日韩美女av二区三区四区| 亚洲女同系列在线观看| 亚洲av无码专区在线| 欧美操逼视频| 精品一二区| 日本免费三级一区二区| 精品国产sm最大网站| 卡一卡二卡三无人区| 亚洲欧美日韩国产综合久| 国产91精品清纯白嫩| 91精品在线免费| 亚洲av天堂在线免费观看| 蜜桃视频插满18在线观看| 老妇女性较大毛片| 久久久久国产亚洲AV麻豆| 国产自拍精品视频免费观看| 青青草在线免费视频播放|