本文是以時(shí)鐘芯片DS1302為例子來(lái)分析時(shí)序圖并寫(xiě)出代碼。DS1302是采用SPI三線接口與單片機(jī)進(jìn)行同步通信。重點(diǎn)分析單字節(jié)讀時(shí)序,單字節(jié)寫(xiě)時(shí)序,寄存器讀時(shí)序,寄存器寫(xiě)時(shí)序,并完成4個(gè)函數(shù)。完整代碼以
/******************************************************************** ** File : SPI.c | Master Send Receive Interrupt | ** Version : 1.0 ** D
1。主機(jī)發(fā)送讀取/******************************************************************** ** File : SPI.c | Master Send | ** Version : 1.0 ** Desc
1 引 言 如今隨著信息產(chǎn)業(yè)的飛速發(fā)展,以微處理器為核心的嵌入式系統(tǒng)正在智能化儀表、實(shí)時(shí)控制系統(tǒng)等方面發(fā)揮著巨大的作用。在許多實(shí)際應(yīng)用中經(jīng)常面臨的問(wèn)題是需要支持大容量的數(shù)據(jù)存儲(chǔ)功能。 但是
現(xiàn)今,在低端數(shù)字通信應(yīng)用領(lǐng)域,我們隨處可見(jiàn)IIC (Inter-Integrated Circuit) 和 SPI (Serial Peripheral Interface)的身影。原因是這兩種通信協(xié)議非常適合近距離低速芯片間通信。Philips(for IIC)和Motorola(for SPI) 出于不同背景和市場(chǎng)需求制定了這兩種標(biāo)準(zhǔn)通信協(xié)議。
任何一個(gè)微處理器都要與一定數(shù)量的部件和外圍設(shè)備連接,但如果將各部件和每一種外圍設(shè)備都分別用一組線路與CPU直接連接,那么連線將會(huì)錯(cuò)綜復(fù)雜,甚至難以實(shí)現(xiàn)。為了簡(jiǎn)化硬件
串口下載”是大多數(shù)工程師最早接觸的程序下載方式,尤其是一開(kāi)始使用51單片機(jī)的工程師們。隨著硬件集成度越來(lái)越高,芯片資源不斷被壓縮,工程師也想到了另一種“串口下載”方式,只需一根數(shù)據(jù)線即可。
許多的1 - Wire 兼容的外圍設(shè)備可用,但對(duì)于那些缺乏的1 - Wire能力,圖1所示電路一種方法可以實(shí)現(xiàn)它。顯示的例子允許遠(yuǎn)程LED顯示屏是由1線通過(guò)SPI兼容的顯示控制器的網(wǎng)絡(luò)
設(shè)計(jì)一個(gè)要求高通道密度的系統(tǒng)時(shí),例如在測(cè)試儀器儀表中,電路板上通常需要包括大量開(kāi)關(guān)。當(dāng)使用并行接口控制的開(kāi)關(guān)時(shí),控制開(kāi)關(guān)所需的邏輯線路以及用于生成GPIO控制信號(hào)的串行轉(zhuǎn)并行轉(zhuǎn)換器會(huì)占用很大比例的板空間。本文討論旨在解決這種設(shè)計(jì)挑戰(zhàn)的ADI公司新一代SPI控制開(kāi)關(guān)及其架構(gòu),以及相對(duì)于并行控制開(kāi)關(guān),它在提高通道密度上有何優(yōu)勢(shì)。ADI公司創(chuàng)新的多芯片封裝工藝使得新型SPI轉(zhuǎn)并行轉(zhuǎn)換器芯片可以與現(xiàn)有高性能模擬開(kāi)關(guān)芯片結(jié)合在同一封裝中。這樣既可節(jié)省空間,又不會(huì)影響精密開(kāi)關(guān)性能。
最近有用戶反映一個(gè)非常蹊蹺的現(xiàn)象,在燒錄文件時(shí),編程器全過(guò)程提示PASS,但是芯片貼板后產(chǎn)品無(wú)法正常使用,這種現(xiàn)象自然而然會(huì)首先懷疑是設(shè)備的問(wèn)題,那作為設(shè)備提供方,
總線(Bus)是計(jì)算機(jī)各種功能部件之間傳送信息的公共通信干線,它是由導(dǎo)線組成的傳輸線束,按照計(jì)算機(jī)所傳輸?shù)男畔⒎N類,計(jì)算機(jī)的總線可以劃分為數(shù)據(jù)總線、地址總線和控制總線,分別用來(lái)傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號(hào)。總線是一種內(nèi)部結(jié)構(gòu),它是CPU、內(nèi)存、輸入、輸出設(shè)備傳遞信息的公用通道,主機(jī)的各個(gè)部件通過(guò)總線相連接,外部設(shè)備通過(guò)相應(yīng)的接口電路再與總線相連接,從而形成了計(jì)算機(jī)硬件系統(tǒng)。在計(jì)算機(jī)系統(tǒng)中,各個(gè)部件之間傳送信息的公共通路叫總線,微型計(jì)算機(jī)是以總線結(jié)構(gòu)來(lái)連接各個(gè)功能部件的
SPI總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。正是由于有了通信方式,我們才能夠通過(guò)芯片控制各種各樣的外圍器件,實(shí)現(xiàn)很多“不可思議”的現(xiàn)代科技。這里將以SPI為題,從編程角度來(lái)介紹SPI總線。
SPI總線系統(tǒng)是一種同步串行外設(shè)接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。正是由于有了通信方式,我們才能夠通過(guò)芯片控制各種各樣的外圍器件,實(shí)現(xiàn)很
SPI總線接口芯片為完成單片機(jī)的常規(guī)外圍電路擴(kuò)展設(shè)計(jì)帶來(lái)了機(jī)遇,可擴(kuò)展的外圍電路包括A/D與D/A轉(zhuǎn)換器、顯示、時(shí)鐘、存儲(chǔ)器、監(jiān)視復(fù)位、I/O、顯示等。本文利用國(guó)內(nèi)目前較為流行的I2C,SPI串行通信協(xié)議實(shí)現(xiàn)單片機(jī)外圍電路的A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、時(shí)鐘、I/O擴(kuò)展、E2PROM以及LED驅(qū)動(dòng)器件的擴(kuò)展功能,實(shí)現(xiàn)了單片機(jī)系統(tǒng)功能模塊化,電路集成化的目的。
凌力爾特公司 (Linear Technology Corporation) 推出 6 通道 SPI / 數(shù)字或 I2C μModule® 隔離器 LTM2887,該器件面向低電壓組件,包括較新的 DSP 和微處理器。
任何一個(gè)微處理器都要與一定數(shù)量的部件和外圍設(shè)備連接,但如果將各部件和每一種外圍設(shè)備都分別用一組線路與CPU直接連接,那么連線將會(huì)錯(cuò)綜復(fù)雜,甚至難以實(shí)現(xiàn)。為了簡(jiǎn)化硬件
Flash存儲(chǔ)器,簡(jiǎn)稱Flash,它結(jié)合了ROM和RAM的長(zhǎng)處,不僅具備電子可擦除可編程的性能,還不會(huì)因斷電而丟失數(shù)據(jù),具有快速讀取數(shù)據(jù)的特點(diǎn);在現(xiàn)在琳瑯滿目的電子市場(chǎng)上,F(xiàn)las
SPI,是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時(shí)為PCB的布局上節(jié)省空間,提供方便,正是出于這種簡(jiǎn)單易用的特性,現(xiàn)
0 引言20世紀(jì)80年代初,德國(guó)BOSCH公司提出了控制器局域網(wǎng)(Controller Area Network,CAN)來(lái)解決汽車內(nèi)部的信號(hào)傳輸問(wèn)題。由于CAN總線優(yōu)良的穩(wěn)定性和實(shí)時(shí)性能、成熟的仲裁和
本文提出一個(gè)基于FPGA的SPI Flash讀寫(xiě)硬件實(shí)現(xiàn)方案,該方案利用硬件對(duì)SPI Flash進(jìn)行控制,能夠非常方便地完成Flash的讀寫(xiě)、擦除、刷新及預(yù)充電等操作,同時(shí)編寫(xiě)的SPI Fla