亚洲国产高清在线观看视频_日韩欧美国产aⅴ另类_奇米影视7777久久精品_欧美 国产 亚洲 卡通 综合

您的位置:首頁 > 熱點 >

CAN總線學習筆記五:SJA1000硬件電路設(shè)計

首先對CAN總線控制器SJA1000的管腳我們必須熟悉。下面是其各個管腳的功能參數(shù)。

各個管腳的符號功能什么的上面的表里介紹的很詳細,我就不多廢話了。

接著我們看SJA1000的這些管腳在實際電路中是怎么進行連接的,因為只談SJA1000的硬件電路設(shè)計,所以就截一張PIAE提供的電路原理圖里關(guān)于SJA1000的部分。

下面我們要具體解析這個電路圖。

AD0-AD7是地址/數(shù)據(jù)復(fù)用總線。因為這個電路是把SJA1000做外部RAM擴展了,所以它的電路連接也勢必要符合外部RAM的連接要求。(特權(quán)同學也是第一次接觸單片機的外部存儲器擴展應(yīng)用,所以開始的時候也很是納悶,然后拿起課本一陣惡補后才恍然大悟。)先補一下外部擴展RAM的知識,然后再談這個電路就容易多了:51單片機外部RAM的擴展最多是可以尋址64KB的,也就是最多可以有16條地址線來尋址,P0口是低八位地址擴展口,P2口是高八位地址擴展口。如果外部RAM不需要用到全部16條地址線(SJA1000就只有8條地址線),那么只要把低位地址線和外部RAM的相應(yīng)地址線連接,高位的地址線在尋址時都默認為1,比如這里的SJA1000,它的8條地址線是和P0口相連接的,所以對SJA1000的寄存器尋址時的地址應(yīng)該是FF00H-FFFFH,但是為什么PIAE提供的程序里的地址定義卻是FE00H-FEFFH呢?這就要討論CS信號的連接問題了,我們知道,CS是片選輸入信號,只有當它是低電平時才能訪問SJA1000。再看看它和誰連了?是P2.0口,正好是地址線高八位的最低位,如果按常理來說,尋址FF00H,那么P2.0就是高電平,SJA1000就不能被訪問。所以尋址FE00H時才選通SJA1000,這時才是SJA1000寄存器的地址。

上面討論了尋址的問題,只是就事論事,如果還不理解,我建議找本書詳細了解下單片機的外部存儲器的擴展后就會明白的。另外,我們知道單片機的P3.0和P3.1有第二功能,就是做RD和WR用,所以它們就和外部寄存器(這里指SJA1000)的RD和WR相連接了。單片機的ALE腳和存儲器的ALE腳也必須相連接。以上的這些連接使得SJA100成為了單片機的外部存儲器。

再看INT腳是和單片機的INT1相連,也就是作為接收中斷信號來告訴單片機接收到了新的數(shù)據(jù)幀。RST腳是復(fù)位腳,接P2.3成為可編程的。

TX0\RX0連接82C250的對應(yīng)腳,數(shù)據(jù)幀是通過這兩個腳傳送出去的(具體的工作原理可以參考82C250的資料,這里就不討論了)。MODE腳接正,說明工作在INTER模式下。XTAL1和XTAL2兩個腳接16MHz的晶體,SJA1000的工作是有一定的時序的,它可以完成數(shù)據(jù)的發(fā)送以及數(shù)據(jù)的校驗等功能,這完全是IC設(shè)計者考慮的東西,我們只要了解它的工作原理,通過單片機配置SJA1000的工作方式,并且向SJA1000寫數(shù)據(jù)或者讀數(shù)據(jù)就可以達到CAN總線通信的目的了。

標簽: CAN總線 SJA1000

相關(guān)閱讀

桃源县| 凉山| 嵩明县| 威海市| 广西| 谷城县| 维西| 万盛区| 额尔古纳市| 麟游县| 平阴县| 阳泉市| 赣州市| 郑州市| 永仁县| 北宁市| 舞阳县| 柳河县| 涡阳县| 民权县| 河间市| 土默特左旗| 昂仁县| 孟津县| 长泰县| 鞍山市| 娄烦县| 静安区| 辰溪县| 无锡市| 长沙县| 河曲县| 漠河县| 南丰县| 蓝山县| 宁化县| 于田县| 特克斯县| 南川市| 宁津县| 德格县|