999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32F407的雙CAN總線設(shè)計(jì)與實(shí)現(xiàn)

2016-06-13 10:03:08劉鵬
科技視界 2016年13期

劉鵬

【摘 要】本文是基于意法半導(dǎo)體(ST)新推出的一款高性能CortexTM-M4內(nèi)核的ARM 芯片STM32F407ZGT6,進(jìn)行的雙CAN總線設(shè)計(jì)。在開發(fā)過程中采用了ST提供的可視化圖形界面開發(fā)工具STM32Cube進(jìn)行底層驅(qū)動(dòng)的配置,簡化了設(shè)計(jì)工作。但由于該工具鏈接的固件庫函數(shù)存在傳遞參數(shù)錯(cuò)誤,使得CAN總線無法接收數(shù)據(jù),本文對(duì)該庫函數(shù)進(jìn)行了更正。

【關(guān)鍵詞】STM32F407;CAN;STM32Cube

Design and Realization of Double CAN Buses on STM32F407

LIU Peng

(Chinese Electron Scientific and Technological Company 20th Institute, Xian Shaanxi 710068, China)

【Abstract】Based on a high-performance ARM with CortexTM-M4 core which launched by STMicroelectronics (ST)--STM32F407ZGT6, the double CAN bus is designed in this paper. A visual graphical interface-STM32cube which is provided by ST, is used to configure the underlying driver in this development process. It simplifies the design work. However, one of its library functions makes the CAN bus does not work, because of its error in transferring parameter. This paper makes some changes to this function.

【Key words】STM32F407; CAN; STM32Cube

0 前言

CAN 是一種多主機(jī)局域網(wǎng),它是由博世公司為現(xiàn)代汽車應(yīng)用率先推出的,憑借著良好的可靠性以及卓越的靈活性,已被廣泛應(yīng)用于工業(yè)自動(dòng)化領(lǐng)域、建筑、環(huán)境控制等眾多領(lǐng)域[1]。近年來,在航空機(jī)載設(shè)備上使用CAN總線傳輸各模塊的BIT、日志等信息,可以更有效地管理模塊狀態(tài);使用成熟的CAN總線協(xié)議,保證了信息傳輸?shù)陌踩煽俊?/p>

為了提高系統(tǒng)處理信息的性能,本文使用了基于高性能ARM Cortex-M4系列的32位RISC內(nèi)核設(shè)計(jì)的STM32F407ZGT6芯片,最高工作頻率可達(dá)168MHz。

1 CAN總線原理

CAN總線結(jié)構(gòu)屬于多主競爭方式,具有多主站運(yùn)行和分散仲裁的串行總線以及廣播通信的特點(diǎn),不同節(jié)點(diǎn)之間可自由通信,CAN總線以報(bào)文為單位進(jìn)行數(shù)據(jù)傳送,報(bào)文的優(yōu)先級(jí)由標(biāo)識(shí)符決定,最低二進(jìn)制數(shù)的標(biāo)識(shí)符有最高的優(yōu)先級(jí)。

2 CAN總線通信設(shè)計(jì)

2.1 硬件設(shè)計(jì)

本文采用了意法半導(dǎo)體高性能處理器STM32F407ZGT6,提高了處理速度,其內(nèi)置的CAN控制器簡化了硬件電路的設(shè)計(jì),外置的CAN電平轉(zhuǎn)換芯片采用的是SN65HVD230。系統(tǒng)中有若干個(gè)CAN模塊進(jìn)行通信,為了統(tǒng)一匹配CAN總線的阻抗,要求每個(gè)模塊上無需添加匹配電阻,由系統(tǒng)統(tǒng)一在最遠(yuǎn)的兩端節(jié)點(diǎn)處添加120歐匹配電阻。

2.2 基于可視化圖形界面的底層驅(qū)動(dòng)配置

STM32CubeMX是ST的主動(dòng)原創(chuàng),可以減少開發(fā)工作的時(shí)間和費(fèi)用。STM32Cube覆蓋了STM32系列所有芯片,STM32Cube中的STM32CubeMX是一款圖形化軟件設(shè)置工具,允許使用圖形化向?qū)砩蒀語言代碼。

首先,根據(jù)模塊的功能對(duì)STM32的IO口進(jìn)行初始化,需實(shí)現(xiàn)的外設(shè)有兩路CAN、一路UART、一路I2C,還有若干GPIO(實(shí)現(xiàn)對(duì)模塊狀態(tài)的監(jiān)控)。接下來,需對(duì)系統(tǒng)時(shí)鐘進(jìn)行配置,STM32cube極大的簡化了開發(fā)人員的工作,使用更形象的圖形界面表示時(shí)鐘的配置關(guān)系,如圖1。本文中由于外部空間的限制,無法使用外部晶振,故本文中采用的是內(nèi)部時(shí)鐘HSI(16MHz),通過相應(yīng)配置使得處理器主時(shí)鐘達(dá)到最大值168MHz,相應(yīng)的外設(shè)時(shí)鐘也達(dá)到最大的42MHz。最后,對(duì)CAN控制器進(jìn)行配置,將CAN的波特率設(shè)置為1Mb/s,CAN控制器工作在正常模式,采用雙路CAN總線互為備份,在該ARM芯片中內(nèi)置的兩個(gè)CAN控制器是主從關(guān)系,對(duì)于用戶使用而言,只有過濾器的設(shè)計(jì)需注意,其他方面無任何差別。

2.3 軟件設(shè)計(jì)

在STM32cube完成初始化之后,需開發(fā)人員編寫相應(yīng)的應(yīng)用程序,實(shí)現(xiàn)系統(tǒng)對(duì)該模塊CAN協(xié)議的要求,軟件流程圖如圖2所示,CAN的接收和發(fā)送均采用中斷方式。

使用STM32cube的好處顯而易見,但也存在弊端。例如由于可視化界面使得開發(fā)人員幾乎無需了解底層寄存器的調(diào)用情況,而一旦出現(xiàn)問題需要查看寄存器定位故障時(shí)將很難查找到原因。

在本設(shè)計(jì)中遇到CAN無法接收數(shù)據(jù)的故障,為查找故障原因,作者在熟悉各寄存器功能后,通過單步調(diào)試發(fā)現(xiàn)CAN的接收數(shù)據(jù)函數(shù)CAN_Receive_IT()無法讀取硬件FIFO中的數(shù)據(jù),最后通過添加一個(gè)結(jié)構(gòu)體變量User_recieve_IT,先將FIFO的值賦給該結(jié)構(gòu)體變量,再將該結(jié)構(gòu)體直接賦給hcan->pRxMsg,使得CAN接收數(shù)據(jù)成功。

3 結(jié)果與分析

使用CANALYST-Ⅱ分析儀對(duì)模塊進(jìn)行了測試,連續(xù)多次發(fā)送CAN命令100條、間隔時(shí)間1ms,全部得到正確回復(fù)。同時(shí),PC機(jī)串口接收的模塊返回?cái)?shù)據(jù)與CAN測試結(jié)果同步。人為使得CAN_H對(duì)地短路導(dǎo)致總線關(guān)閉,再取消短路后,總線自動(dòng)恢復(fù),證明CAN總線的可靠性很高。

本文中使用圖形化軟件設(shè)置工具STM32cube對(duì)ARM芯片進(jìn)行底層驅(qū)動(dòng)的配置,大大提高了開發(fā)人員的工作效率,降低錯(cuò)誤出現(xiàn)的概率。同時(shí),作者也解決了CAN接收函數(shù)中傳遞參數(shù)出現(xiàn)的錯(cuò)誤。

圖3 CAN調(diào)試結(jié)果和UART輸出數(shù)據(jù)

【參考文獻(xiàn)】

[1]佟國香.基于CAN總線的STM32應(yīng)用編程及實(shí)現(xiàn)[J].上海:信息技術(shù),2015,10:49.

[責(zé)任編輯:湯靜]

主站蜘蛛池模板: 精品国产香蕉伊思人在线| 日韩经典精品无码一区二区| 九九免费观看全部免费视频| h视频在线观看网站| 九色在线观看视频| 好吊色妇女免费视频免费| 午夜激情婷婷| 国产高清免费午夜在线视频| 国产三级国产精品国产普男人| 好紧好深好大乳无码中文字幕| 婷婷亚洲最大| 国产精品久久久久久久伊一| 亚洲精品777| 亚洲精品色AV无码看| 1769国产精品视频免费观看| 免费国产在线精品一区| 亚洲中文精品久久久久久不卡| 免费在线a视频| 99热最新在线| 欧美成在线视频| 91久久国产成人免费观看| av天堂最新版在线| 青青草原国产av福利网站| 国产高清精品在线91| a欧美在线| 在线播放真实国产乱子伦| 天天做天天爱夜夜爽毛片毛片| 一区二区三区毛片无码| 热99re99首页精品亚洲五月天| 日韩国产另类| 无码中文字幕精品推荐| 视频二区中文无码| 91在线激情在线观看| 综合色在线| 毛片网站观看| 国产在线观看91精品| 美女内射视频WWW网站午夜| 婷婷综合缴情亚洲五月伊| 久久久噜噜噜| 欧美国产日韩在线播放| 久久精品免费国产大片| 亚洲九九视频| 五月综合色婷婷| 国产成人精品日本亚洲| 91丨九色丨首页在线播放| 色婷婷亚洲综合五月| 在线播放91| 久久精品女人天堂aaa| 欧美啪啪一区| 国产va欧美va在线观看| 国产91麻豆免费观看| 欧美午夜视频在线| 亚洲乱码在线视频| 91久久天天躁狠狠躁夜夜| 狠狠五月天中文字幕| 日韩最新中文字幕| 成人欧美日韩| 丝袜无码一区二区三区| 午夜不卡视频| 26uuu国产精品视频| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产成人精品免费av| 美女扒开下面流白浆在线试听| 亚洲欧美日韩另类在线一| 亚洲精品第五页| 日韩欧美国产中文| 99视频在线免费| 免费激情网站| 国产女人在线观看| 精品视频一区在线观看| 久久亚洲国产最新网站| 色吊丝av中文字幕| 国产成人精品高清不卡在线| 国产综合网站| 日韩AV无码一区| 日本在线免费网站| 国产Av无码精品色午夜| 国产69囗曝护士吞精在线视频 | 尤物在线观看乱码| 色综合天天操| 日韩av高清无码一区二区三区| 亚洲国产亚洲综合在线尤物|