新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于CAN的程序下載器與通訊調(diào)試器設(shè)計(jì)

基于CAN的程序下載器與通訊調(diào)試器設(shè)計(jì)

作者: 時(shí)間:2009-10-30 來源:網(wǎng)絡(luò) 收藏
1.引言
在電子產(chǎn)品的各種方式中,(Controller Area Network)總線以其高可靠性、實(shí)時(shí)性、傳輸距離遠(yuǎn)的特點(diǎn)得到廣泛的應(yīng)用,已經(jīng)成為許多高檔汽車(如奔馳、寶馬等)車電系統(tǒng)的總線標(biāo)準(zhǔn)。于是出現(xiàn)了許多內(nèi)部集成控制器的單片機(jī),如Atmel公司的T89C51CC0X系列單片機(jī)就是其中性價(jià)比較高的一款,它具有豐富的內(nèi)部資源,支持方式的在線編程。我們在使用此系列產(chǎn)品的過程中,針對其應(yīng)用普遍但編程器較少的特點(diǎn),開發(fā)了一款基于T89C51CC01CA芯片的CAN下載和CAN節(jié)點(diǎn)調(diào)試器,它既能對同類單片機(jī)進(jìn)行編程,又能通過CAN總線對具有CAN功能的設(shè)備進(jìn)行調(diào)試。
2.系統(tǒng)結(jié)構(gòu)框圖
2.1 系統(tǒng)原理框圖。如圖1所示,PC機(jī)通過高速的USB方式或低速的UART方式連接到下載調(diào)試器上,下載調(diào)試器將PC的消息封裝成CAN命令幀的形式轉(zhuǎn)發(fā),完成下載功能或CAN節(jié)點(diǎn)調(diào)試功能。


2.2 調(diào)試器框圖。如圖1所示,當(dāng)使用CAN調(diào)試器功能時(shí),在CAN總線上可以掛接多個(gè)設(shè)備。CAN調(diào)試器作為一個(gè)智能終端,參與總線的運(yùn)行。
2.3原理框圖。如圖2所示,當(dāng)使用功能時(shí),用戶可以選擇CAN下載方式或串口下載方式,但為了保證下載的正確性,每次只允許連接一個(gè)從設(shè)備。

圖2:原理框圖
3.下載調(diào)試器硬件及框圖
下載調(diào)試器連接PC機(jī)和CAN總線上的節(jié)點(diǎn),完成數(shù)據(jù)流格式的轉(zhuǎn)換,并且利用內(nèi)部的RAM空間對上/下行數(shù)據(jù)流的速度進(jìn)行緩沖匹配。整個(gè)硬件主要分成四個(gè)部分:主控器件、轉(zhuǎn)換芯片、功能控制部分和電源部分。硬件框圖和電路圖分別為圖3和圖4。

本文引用地址:http://m.butianyuan.cn/article/188540.htm


3.1 主控器件
主控芯片為Atmel公司的T89C51CC01芯片,該芯片采用51內(nèi)核技術(shù),與其它單片機(jī)相比具有很多的優(yōu)勢:
豐富的內(nèi)部資源: 32Kbytes 片內(nèi)Flash、 256bytes片內(nèi)RAM、 1Kbytes片內(nèi)XRAM、2Kbytes片內(nèi)EEPROM、2Kbytes片內(nèi)引導(dǎo)區(qū)、八通道10位AD等。
內(nèi)部集成完全支持V2.0A/V2.0B標(biāo)準(zhǔn)的CAN控制器,該控制器具有15個(gè)獨(dú)立的郵箱,每個(gè)郵箱具有多種工作模式。消息的接收、發(fā)送、校驗(yàn)過程完全通過硬件來完成,不需要用戶的干預(yù)。
片內(nèi)引導(dǎo)區(qū)支持ISP(In-Systerm Programming)和IAP(In-Application Programming)功能,使程序下載變得非常容易。
3.2 通訊轉(zhuǎn)換芯片
下載調(diào)試器與PC機(jī)的接口芯片為PL2303,它完全支持USB協(xié)議V1.1,能夠自動完成USB數(shù)據(jù)格式和UART數(shù)據(jù)格式間的轉(zhuǎn)換。并且為了匹配兩種方式的速度,該芯片分別為上傳和下傳的數(shù)據(jù)流配置了256字節(jié)的RAM。CAN總線的驅(qū)動芯片為ATA6660,它將TTL電平轉(zhuǎn)換為差分信號輸出,在通訊距離達(dá)到10km時(shí),傳輸速率仍可達(dá)到50kbit/s。
3.3 控制電路
控制電路主要有三個(gè)功能:下載器功能或調(diào)試器功能選擇,串口下載方式或CAN下載方式選擇,硬件復(fù)位條件控制。
4.編程器功能
4.1 編程對象
編程器的主要服務(wù)對象為一系列支持CAN下載或串口下載的器件,如T89C51CC01/02/03等。T89C51CC01在保留51系列并行下載方式的基礎(chǔ)上,又?jǐn)U展了串口UART或CAN 的ISP(在線)下載方式。 T89C51CC01有兩個(gè)系列,T89C51CC01UA芯片的程序引導(dǎo)區(qū)在生產(chǎn)時(shí)固化了UART引導(dǎo)程序,支持UART方式的在線下載功能;T89C51CC01CA芯片的程序引導(dǎo)區(qū)固化了CAN引導(dǎo)程序,支持CAN總線方式的在線下載功能。本文以CAN下載方式為例介紹下載原理。為了表達(dá)的方便,將用戶的PC機(jī)稱為主機(jī),被編程的器件稱為從機(jī)。
4.2 T89C51CC01CA芯片的程序引導(dǎo)區(qū)
T89C51CC01CA芯片內(nèi)部有2Kbytes的程序引導(dǎo)區(qū),分成3個(gè)部分:ISP通訊管理、函數(shù)調(diào)用管理、Flash存儲器管理?!癐SP通訊管理”部分管理從機(jī)引導(dǎo)程序區(qū)和編程器間的通訊,對編程器的串行數(shù)據(jù)流進(jìn)行解釋并轉(zhuǎn)換為對從機(jī)Flash存儲器的訪問;“函數(shù)調(diào)用管理”為IAP提供各種函數(shù);“Flash存儲器管理”執(zhí)行對從機(jī)Flash存儲器底層的讀、寫操作。
4.3 編程流程
從機(jī)中固化的驅(qū)動程序遵守CAN2.0A標(biāo)準(zhǔn)幀協(xié)議格式,數(shù)據(jù)幀的11位標(biāo)識符用來對目標(biāo)器件和目標(biāo)器件的寄存器尋址。因此將標(biāo)識符的高8位作為基地址,用來區(qū)分不同的器件;將標(biāo)識符的低3位作為偏移地址,用來代表不同的命令。


上一頁 1 2 下一頁

關(guān)鍵詞: CAN 程序 下載器 通訊

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉