<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 電源與新能源 > 設計應用 > 三個(gè)方面助你快速讀懂單片機時(shí)序圖

三個(gè)方面助你快速讀懂單片機時(shí)序圖

作者: 時(shí)間:2018-08-10 來(lái)源:網(wǎng)絡(luò ) 收藏

對于使用來(lái)說(shuō),是較為核心也較為重要的一個(gè)知識點(diǎn)。在廠(chǎng)家給出的芯片數據手冊中,也是非常重要的參數細節。開(kāi)發(fā)者拿到一款芯片時(shí),首先需要做的就是閱讀其數據手冊,對上面的內容進(jìn)行提取和掌握。因此能夠順利的閱讀并了解到想要傳達的意思是非常關(guān)鍵的,本文就將為大家介紹能夠順利讀懂時(shí)序圖的方法。

本文引用地址:http://dyxdggzs.com/article/201808/386245.htm

為了方便大家理解,這里以1602為例進(jìn)行講解,1602的引腳是很整齊的SIP單列直插封裝,所以器件手冊只給出了引腳的功能數據表:

開(kāi)發(fā)者只需要關(guān)注以下幾個(gè)管腳:

3腳:VL,液晶顯示偏壓信號,用于調整LCD1602的顯示對比度,一般會(huì )外接電位器用以調整偏壓信號,注意此腳電壓為0時(shí)可以得到最強的對比度。

4腳:RS,數據/命令選擇端,當此腳為高電平時(shí),可以對1602進(jìn)行數據字節的傳輸操作,而此腳為低電平時(shí),則是進(jìn)行命令字節的傳輸操作。命令字節,即是用來(lái)對LCD1602的一些工作方式作設置的字節;數據字節,即使用以在1602上顯示的字節。值得一提的是,LCD1602的數據是8位的。

5腳:R/W,讀寫(xiě)選擇端。當此腳為高電平可對LCD1602進(jìn)行讀數據操作,反之進(jìn)行寫(xiě)數據操作。筆者認為,此腳其實(shí)用處不大,直接接地永久置為低電平也不會(huì )影響其正常工作。但是尚未經(jīng)過(guò)復雜系統驗證,保留此意見(jiàn)。

6腳:E,使能信號,其實(shí)是LCD1602的數據控制時(shí)鐘信號,利用該信號的上升沿實(shí)現對LCD1602的數據傳輸。

7~14腳:8位并行數據口,使得對LCD1602的數據讀寫(xiě)大為方便。

LCD1602的操作時(shí)序

在此,可以先不讀出它的數據的狀態(tài)或者數據本身。所以只需要看兩個(gè)寫(xiě)時(shí)序:

①當要寫(xiě)指令字,設置LCD1602的工作方式時(shí):需要把RS置為低電平,RW置為低電平,然后將數據送到數據口D0~D7,最后E引腳一個(gè)高脈沖將數據寫(xiě)入。

②當要寫(xiě)入數據字,在1602上實(shí)現顯示時(shí):需要把RS置為高電平,RW置為低電平,然后將數據送到數據口D0~D7,最后E引腳一個(gè)高脈沖將數據寫(xiě)入。

實(shí)際上寫(xiě)指令和寫(xiě)數據,差別僅僅在于RS的電平不一樣而已。以下是LCD1602的時(shí)序圖:

只要慢慢學(xué)會(huì )看時(shí)序圖,要知道操作一個(gè)器件的精華便蘊藏在其中,看懂看準了時(shí)序,再操控這個(gè)芯片就是非常容易的事了。這里使用1602作為例子主要是因為1602的時(shí)序是目前最簡(jiǎn)單的時(shí)序之一。

注意時(shí)間軸,如果沒(méi)有標明(其實(shí)大部分也都是不標明的),那么從左往右的方向為時(shí)間正向軸,即時(shí)間在增長(cháng)。圖1框出并注明了看懂此圖的一些常識:

(1)時(shí)序圖最左邊一般是某一根引腳的標識,表示此行圖線(xiàn)體現該引腳的變化,上圖分別標明了RS、R/W、E、DB0~DB7四類(lèi)引腳的時(shí)序變化。

(2)有線(xiàn)交叉狀的部分,表示電平在變化,如上所標注。

(3)應該比較容易理解,如上圖右上角所示,兩條平行線(xiàn)分別對應高低電平,也正好吻合(2)中電平變化的說(shuō)法。

(4)上圖下,密封的菱形部分,注意要密封,表示數據有效,ValidData這個(gè)詞也顯示了這點(diǎn)。

需要十分嚴重注意的是,時(shí)序圖里各個(gè)引腳的電平變化,基于的時(shí)間軸是一致的。一定要嚴格按照時(shí)間軸的增長(cháng)方向來(lái)精確地觀(guān)察時(shí)序圖。要讓器件嚴格的遵守時(shí)序圖的變化。在類(lèi)似于18B20這樣的單總線(xiàn)器件對此要求尤為嚴格。

時(shí)間標注

細心的朋友或許注意到了文中關(guān)于時(shí)間的標注,這也是個(gè)十分重要的信息,這些時(shí)間的標注表明了某些狀態(tài)所要維持的最短或最長(cháng)時(shí)間。因為器件的工作速度也是有限的,一般都跟不上主控芯片的速度,所以它們直接之間要有時(shí)序配合。下面是時(shí)序參數表:

開(kāi)發(fā)者要注意估計主控芯片的指令時(shí)間,可以在官方數據手冊上查到MCU的一些級別參數。比如現在用AVRM16做為主控芯片,外部12MHz晶振,(1/12MHz)s是振蕩周期,而不是時(shí)鐘周期,因為時(shí)鐘周期(狀態(tài)周期)等于兩個(gè)振蕩周期,換句話(huà)說(shuō)就是對振動(dòng)頻率進(jìn)行“二分頻”的振蕩信號,所以(2/12MHz)s才是晶振為12MHz時(shí)的時(shí)鐘周期。

以上給的時(shí)間參數全部是ns級別的,所以即便在程序里不加延時(shí)程序,也應該可以很好的配合LCD1602的時(shí)序要求了。怎么看這個(gè)表呢?很簡(jiǎn)單,在時(shí)序圖里可以找到TR1,對應時(shí)序參數表,可以查到這個(gè)是E上升沿/下降沿時(shí)間,最大值為25ns,表示E引腳上的電平變化,必須在最大為25ns之內的時(shí)間完成。

以上介紹的這些內容,雖然是以L(fǎng)CD1602為例,但這僅僅是為了幫助大家進(jìn)行理解,其中提到的參數是大部分都會(huì )有的,因此大家可以通過(guò)本文中給予的解讀方式來(lái)套用到其他當中,大部分的單片機時(shí)序圖都會(huì )遵循文中給出的規則,當大家漸漸掌握其中的內容后,就可以發(fā)現其實(shí)看懂單片機的時(shí)序圖其實(shí)并不難。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>