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é)任編輯:湯靜]

主站蜘蛛池模板: 久久亚洲高清国产| 人妻丝袜无码视频| 精品人妻AV区| 欧美日韩高清| 香蕉99国内自产自拍视频| 热这里只有精品国产热门精品| 国产成人高清精品免费| 久爱午夜精品免费视频| 午夜国产理论| 欧美日韩久久综合| 国产精品入口麻豆| 亚洲精品老司机| 国产jizz| 日本三级欧美三级| 男女猛烈无遮挡午夜视频| 五月婷婷导航| 久久精品丝袜| 国产高颜值露脸在线观看| 色呦呦手机在线精品| 欧美日韩资源| 亚洲欧美一区二区三区麻豆| 日本久久网站| 欧美一级在线播放| 夜夜操狠狠操| 久久久精品久久久久三级| 成人午夜福利视频| 鲁鲁鲁爽爽爽在线视频观看| 一区二区影院| www.精品国产| 99视频在线免费看| 伊伊人成亚洲综合人网7777| 国产成人精品日本亚洲| 欧美精品另类| 欧美中出一区二区| 国产精品福利导航| 波多野结衣无码AV在线| 久久精品电影| 国产精品精品视频| 视频国产精品丝袜第一页 | 污污网站在线观看| www.91中文字幕| 国产手机在线观看| Aⅴ无码专区在线观看| 日韩无码视频播放| 国产sm重味一区二区三区| www.91中文字幕| 亚洲午夜福利精品无码不卡 | 女人18毛片水真多国产| 亚洲av无码人妻| 日本午夜视频在线观看| 少妇精品在线| 国产亚洲精品97AA片在线播放| 91成人免费观看在线观看| 国产欧美日本在线观看| 欧美中文字幕一区| 国产在线高清一级毛片| 亚洲一区毛片| 无遮挡国产高潮视频免费观看| 日本亚洲欧美在线| 精品国产女同疯狂摩擦2| 乱人伦视频中文字幕在线| 精品国产中文一级毛片在线看| 精品福利网| 高清色本在线www| 国产精品林美惠子在线播放| 亚洲无线观看| 亚洲免费毛片| 综合久久五月天| 91色在线观看| 欧美激情视频二区| 高清无码一本到东京热| 国产99视频精品免费视频7| 亚洲三级a| 福利片91| 欧美日韩国产在线观看一区二区三区| 狠狠久久综合伊人不卡| 亚洲毛片一级带毛片基地| 欧美成人第一页| 亚洲免费成人网| 亚洲中文在线看视频一区| 色噜噜久久| 亚洲成人高清在线观看|