單片機時序是指單片機執行指令時應發出的控制信號的時間序列。這些控制信號在時間上的相互關系就是CPU的時序。它是一系列具有時間順序的脈沖信號。
CPU發出的時序有兩類:一類用于片內各功能部件的控制,它們是芯片設計師關注的問題,對用戶沒有什么意義。另一類用于片外存儲器或I/O端口的控制,需要通過器件的控制引腳送到片外,這部分時序對分析硬件電路的原理至關重要,也是軟件編程遵循的原則,需要認真掌握。
CPU發出的時序有兩類:一類用于片內各功能部件的控制,它們是芯片設計師關注的問題,對用戶沒有什么意義。另一類用于單片機外部芯片的控制,這部分時序對分析硬件電路的原理至關重要,也是軟件編程遵循的原則。
操作時序永遠使用是任何一片IC芯片的最主要的內容。一個芯片的所有使用細節都會在它的官方器件手冊上包含。所以使用一個器件事情,要充分做好的第一件事就是要把它的器件手冊上有用的內容提取,掌握其工作時序。
在這里我們以液晶1602為例,分析其操作時序。其基本時序有讀狀態,寫指令,讀數據和寫數據。
1602的引腳定義
我們首先來看1602的引腳定義,1602的引腳是很整齊的SIP單列直插封裝,所以器件手冊只給出了引腳的功能;
我們只需要關注以下幾個管腳:
3腳:VL,液晶顯示偏壓信號,用于調整LCD1602的顯示對比度,一般會外接電位器用以調整偏壓信號,注意此腳電壓為0時可以得到最強的對比度。
4腳:RS,數據/命令選擇端,當此腳為高電平時,可以對1602進行數據字節的傳輸操作,而此腳為低電平時,則是進行命令字節的傳輸操作。命令字節,即是用來對LCD1602的一些工作方式作設置的字節;數據字節,即使用以在1602上顯示的字節。值得一提的是,LCD1602的數據是8位的。
5腳:R/W,讀寫選擇端。當此腳為高電平可對LCD1602進行讀數據操作,反之進行寫數據操作。筆者認為,此腳其實用處不大,直接接地永久置為低電平也不會影響其正常工作。但是尚未經過復雜系統驗證,保留此意見。
6腳:E,使能信號,其實是LCD1602的數據控制時鐘信號,利用該信號的上升沿實現對LCD1602的數據傳輸。
7~14腳:8位并行數據口,使得對LCD1602的數據讀寫大為方便。
寫命令和寫數據
在此,我們分析兩個寫時序:寫命令和寫數據。
寫命令
當我們要寫指令字,設置LCD1602的工作方式時:需要把RS置為低電平,RW置為低電平,然后將數據送到數據口D0~D7,最后E引腳一個高脈沖將數據寫入。
voidWriteCommandLCD(unsignedcharWCLCD,BuysC)//BuysC為0時忽略忙檢測
{
if(BuysC)ReadStatusLCD();//根據需要檢測忙
LCD_Data=WCLCD;//將要寫的命令放在數據線上
LCD_RS=0;//RS為低表明要寫的為命令
LCD_RW=0;//RS為低表明執行的是寫操作
LCD_E=0;
LCD_E=0;
LCD_E=1;//以上三條語句引入一個高脈沖
}
寫數據
當我們要寫入數據字,在1602上實現顯示時:需要把RS置為高電平,RW置為低電平,然后將數據送到數據口D0~D7,最后E引腳一個高脈沖將數據寫入。
voidWriteDataLCD(unsignedcharWDLCD)
{
ReadStatusLCD();//檢測忙
LCD_Data=WDLCD;//將要寫的命令放在數據線上
LCD_RS=1;//RS為高表明要寫的為數據
LCD_RW=0;//RS為低表明執行的是寫操作
LCD_E=0;
LCD_E=0;
LCD_E=1;//以上三條語句引入一個高脈沖
}
寫指令和寫數據,差別僅僅在于RS的電平不一樣而已。以下是LCD1602的時序圖,大家寫驅動代碼的時候一定要充分理解器件的時序圖(配合文字說明),否則寫不出合格的驅動代碼,器件也就不能工作。大家可以將上面的代碼對照下圖,看是不是一回事。
看懂時序圖注意事項
1、注意時間軸,如果沒有標明(其實大部分也都是不標明的),那么從左往右的方向為時間正向軸,即時間在增長。
2、框出并注明了看懂此圖的一些常識:
(1)時序圖最左邊一般是某一根引腳的標識,表示此行圖線體現該引腳的變化,上圖分別標明了RS、R/W、E、DB0~DB7四類引腳的時序變化。
(2)有線交叉狀的部分,表示電平在變化,如上所標注。
(3)應該比較容易理解,如上圖右上角所示,兩條平行線分別對應高低電平,也正好吻合(2)中電平變化的說法。
(4)下,密封的菱形部分,注意要密封,表示數據有效,Valid Data這個詞也顯示了這點。
3、需要十分嚴重注意的是,時序圖里各個引腳的電平變化,基于的時間軸是一致的。一定要嚴格按照時間軸的增長方向來精確地觀察時序圖。要讓器件嚴格的遵守時序圖的變化。在類似于18B20這樣的單總線器件對此要求尤為嚴格。
4、以上幾點,并不是LCD1602的時序圖所特有的,絕大部分的時序圖都遵循著這樣的一般規則,所以大家要慢慢的習慣于這樣的規則。
時序參數
時間的標注,也是個十分重要的信息,這些時間的標注表明了某些狀態所要維持的最短或最長時間。因為器件的工作速度也是有限的,一般都跟不上主控芯片的速度,所以它們直接之間要有時序配合。
上一篇:基于單片機的流水燈介紹_51單片機流水燈的五種實現方法
下一篇:在數據分析工作中的地位與R語言、SAS、SPSS 比較如何?
推薦閱讀
史海拾趣
隨著國內市場的不斷飽和,APLUS Products公司開始尋求國際化發展的道路。在XXXX年,公司成功打入歐洲市場,并在當地建立了分支機構。通過深入了解歐洲消費者的需求和偏好,公司不斷優化產品設計和營銷策略,逐漸贏得了歐洲消費者的認可和喜愛。
洲光源公司自2011年成立以來,一直致力于紅外LED光源器件的研發和生產。在公司成立的初期,市場上對于紅外LED的需求并不高,但洲光源公司堅信其未來的潛力。通過不斷的技術研發和創新,洲光源成功開發出了高效、穩定、可靠的紅外LED產品,逐漸在市場上樹立了良好的口碑。隨著智能家居、安防監控等領域的快速發展,紅外LED的需求迅速增長,洲光源公司也迎來了發展的黃金時期。
隨著全球對環保意識的不斷提高,Delphi Connection Systems公司也積極響應環保號召,致力于研發和生產環保型連接器產品。公司采用環保材料和工藝,減少生產過程中的污染排放,同時推出可回收、可再利用的連接器產品。這一舉措不僅符合了環保要求,也為客戶提供了更加環保的解決方案。
隨著環保意識的不斷提高,Eurohm Resistors公司積極響應綠色發展的號召。公司投入大量資源研發環保型電阻器產品,采用可再生材料和綠色生產工藝,降低產品對環境的影響。同時,公司還積極參與各種環?;顒?,推動行業的綠色發展。
Comax Industrial Co Ltd公司自創立之初,便明確了其在電子行業中的定位與發展方向。公司初期便注重技術研發,引進了一批高素質的技術人才,并投入大量資源進行技術研發與創新。通過不懈的努力,Comax成功開發出一系列具有競爭力的電子產品,并在市場上獲得了良好的口碑。這些產品不僅滿足了客戶的需求,也為公司的發展奠定了堅實的技術基礎。
常憶科技股份有限公司,始創于1995年,總部位于臺灣。在電子行業的發展歷程中,常憶科技以其專注于IC設備制造領域的執著和創新能力,逐漸嶄露頭角。公司成立之初,便致力于開發P型晶體管非揮發性內存,由pFlash和pFusion兩個事業單位組成,分別負責不同方面的工作。pFlash專注于開發和生產標準型NOR內存,而pFusion則負責向晶圓代工廠及IC設計公司提供嵌入式非揮發內存的生產技術及知識產權,并提供定制化設計及技術咨詢服務。
隨著消費電子產品、電腦及周邊設備、無線通訊和網絡裝置等領域的快速發展,常憶科技的產品得到了廣泛應用。公司憑借其卓越的技術和產品質量,逐漸在市場上占據了一席之地,為后續的蓬勃發展奠定了堅實基礎。
設備驅動程序是直接與硬件或者虛擬設備進行交互,將對硬件或者虛擬設備的操作打包成一組操作系統 調用,并完全隱藏了設備工作細節的編程接口,因此驅動程序的編寫在嵌入式系統開發中是一個重要的環節。本文通過闡述Windows CE操作系統中流式接口驅 ...… 查看全部問答∨ |
|
VB 高仿《串口調試助手V2.2》源代碼+C51串口調試程序 曾經學習VB時,仿照《串口調試助手V2.2》編寫了一個串口軟件,可能存在漏洞,希望高手拍磚。 串口調試助手V2.2是用VC++編寫的,串口調試軟件V1.0是VB編寫的,下面來個界面大比拼: ...… 查看全部問答∨ |
USBDeviceAttach中LocalAlloc 異常 Device.exe ce 5.0 USB驅動 USBDeviceAttach函數中使用LocalAlloc(LPTR,sizeof(struct pointer)) 我現在的問題是:驅動在加載時,通常會在LocalAlloc處冒異常,不一定在哪個地方(不一定是哪一次調用),但基本上在連續兩次調用LocalAlloc處(或前或后)。 ...… 查看全部問答∨ |
之前有貼,回復后無奈頂不上來,因為非常非常急,所以再問 【請問有沒有人往WINCE下移植FLASH播放器? 】 http://topic.eeworld.net/u/20070702/14/9d45b749-db60-4df0-8c28-e1e445885589.html?seed=290424281 關于WM5上利用Adobe的控件和庫實現 ...… 查看全部問答∨ |
|
TI貌似又出新貨了,手表式的藍牙開發套件。是基于MSP430F5438A 和CC2560的藍牙解決方案開發套件。外觀很炫,但是很有些貴199刀!https://estore.ti.com/MSP-WDS430BT2000D-Bluetooth-Wearable-Watch-development-system-with-Digital-display-P2447 ...… 查看全部問答∨ |