国产激情久久久久影院小草_国产91高跟丝袜_99精品视频99_三级真人片在线观看

ADμC812的串行外設(shè)接口SPI及其應(yīng)用

時間:2024-08-16 12:06:22 理工畢業(yè)論文 我要投稿
  • 相關(guān)推薦

ADμC812的串行外設(shè)接口(SPI)及其應(yīng)用

摘要:ADμC812是一種新型的集成12位數(shù)據(jù)采集系統(tǒng)。它的串行外設(shè)接口SPI(serial peripheral interface)可進行主機和多片從外圍器件的信息傳遞,即主機對從機的控制及從機向主機提供各種信息等,從而實現(xiàn)系統(tǒng)之間的各種控制和操作。

概述

ADμC812是一種全集成的12位數(shù)據(jù)采集系統(tǒng)。它在單個芯片內(nèi)包含了高性能的自校準多通道ADC、2個12位DAC以及可編程的8位MCU(與8051兼容)。為便于MCU與各種外圍設(shè)備進行通信,ADμC812提供了3種串行I/O端口:UART接口、I2C兼容的串行接口和串行外設(shè)接口(SPI)。其中,SPI接口是工業(yè)標(biāo)準的同步串行接口,是一種全雙工、三線通信的系統(tǒng)。它允許MCU與各種外圍設(shè)備以串行方式(8位數(shù)據(jù)同時、同步地被發(fā)送和接收)進行通信。在SPI接口中,數(shù)據(jù)的傳輸需要1個時鐘信號和兩條數(shù)據(jù)線。

SPI可工作在主模式或從模式下。在主模式,每一位數(shù)據(jù)的發(fā)送/接收需要1次時鐘作用;而在從模式下,每一位數(shù)據(jù)都是在接收到時鐘信號之后才發(fā)送/接收。1個典型的SPI系統(tǒng)包括1個主MCU和1個或幾個從外圍器件。SPI接口可設(shè)置成在發(fā)送/接收1個字節(jié)的結(jié)束時產(chǎn)生1次中斷。

主時鐘可以通過編程而成為不同的狀態(tài),既可編程為4種不同主波特率的任一種,又可對時鐘的極性和相位進行編程。

SPI也可用于那些需要比微控制器上的并行I/O端口更多輸入或輸出端的場合中。SPI提供了一種擴展I/O功能的最簡單的辦法,只需使用最少的微控制器引腳。

一、工作原理

1.SPI的信號說明

SPI系統(tǒng)使用4條線可與多種標(biāo)準外圍器件直接接口:串行時鐘線(SCLOCK)、主機輸入/從機輸出數(shù)據(jù)線MISO、主機輸出/從機輸入數(shù)據(jù)線MOSI和低電平有效的從機選擇線SS。

SCLOCK是主機的時鐘線,為MISO數(shù)據(jù)的發(fā)送和接收提供同步時鐘信號。每一位數(shù)據(jù)的傳輸都需要1次時鐘作用,因而發(fā)送或接收1個字節(jié)的數(shù)據(jù)需要8個時鐘的作用。主機的時鐘是通過主機的硬件設(shè)置的,并和各個從機的SCLOCK相連。時鐘的波特率、極性、相位是由SPICON(SPI控制寄存器)來設(shè)置的。

MISO是主機的輸入/從機的輸出數(shù)據(jù)線。主機的MISO應(yīng)與從機的MISO相連進行高位在前的數(shù)據(jù)交換。

MOSI是SPI接口的SPI主機輸出/從機輸入數(shù)據(jù)引腳。這一引腳應(yīng)當(dāng)連接主微控制器的數(shù)據(jù)輸出和從微控制器的數(shù)據(jù)輸入端MOSI,進行高位在前數(shù)據(jù)的交換。

SS只在從方式中用于低電平選中從。SS對應(yīng)的是P1.5,在初始化時P1口被設(shè)置為模擬輸入,因而通過清除P1.5可將其設(shè)置為數(shù)據(jù)輸入,才可完成主、從機的通信。

2.SPI的寄存器

SPI有2個相關(guān)寄存器:SPICON和SPIDAT,其中SPICON包含各種標(biāo)志位、使能位、方式位及時鐘位。各位都是可尋址的,如表1及表2所列。

表1 SPICON寄存器

ISPIWCOLSPESPIMCPOLCPHASPR1SPR0FFH 0FEH 0FDH 0FCH 0FBH 0FAH 0F9H 0F8H 0R/WR/WR/WR/WR/WR/WR/WR/W

表2 SPICON各位功能

位功 能ISPI中斷標(biāo)志位。
當(dāng)發(fā)送和接收1字節(jié)數(shù)據(jù)完畢時自動置全。該位也可以通過軟件控制。當(dāng)于中斷時,應(yīng)當(dāng)打開中斷EA,將IE2.0置位。當(dāng)執(zhí)行中斷服務(wù)程序時,硬件自動清除該位WCOL寫沖突錯誤標(biāo)志位。
當(dāng)SPI正進行數(shù)據(jù)交換時,若向SPIDAT中寫數(shù)據(jù)將產(chǎn)生寫沖突錯誤,寫入的數(shù)據(jù)將無效,原有交換繼續(xù)執(zhí)行。必須由軟件清除SPESPI使能位。
SPE=0,I2C串口使能,SPI串口禁止;
SPE=1,I2C串口禁止,SPI串口使能SPIM主模式選擇位。
SPIM=0,SPI工作于從模式;
SPIM=1,SPI工作于主模式CPOL時鐘極性選擇位。
CPOL=0,主機時鐘有高到低的跳變讀取數(shù)據(jù),數(shù)據(jù)字節(jié)之間傳輸時,時鐘處于高電平空閑狀態(tài);
CPOL=1,主機時鐘有低到高的跳變讀取數(shù)據(jù),各數(shù)據(jù)字節(jié)之間傳輸時時鐘處于低電平空閑狀態(tài)(見圖1)CPHA時鐘相位選擇位。
CPHA=0,傳輸數(shù)據(jù)的高位MSB在SS的降沿出現(xiàn),在時鐘第1個前沿讀入;之后下一數(shù)據(jù)位在時鐘后沿出現(xiàn),在下一個前沿讀入;直到8位數(shù)據(jù)讀完。
CPHA=1,數(shù)據(jù)在時鐘前沿出現(xiàn),在同一時鐘周期的后沿讀入(見圖1)。
讀位還可控制從機的同步方式SPR1
SPR0SPI波行選擇位。
SPR1 SPR0 波特率
0 0 fosc/4
0 1 fosc/8
1 0 fosc/32
1 1 fosc/64
注:從方式下這兩位都清零

另一個SPI寄存器是SPIDAT。對這一寄存器的寫操作會產(chǎn)生從高位開始的一位位的數(shù)據(jù)發(fā)送。如果寫操作發(fā)生在其他數(shù)據(jù)正在傳遞的過程中,那么WCOL將置位。如果寫操作進行時沒有其他數(shù)據(jù)在傳遞,SPIDAT中的數(shù)據(jù)將自動鎖存到移位寄存器中,移位寄存器從高位開始發(fā)送數(shù)據(jù),發(fā)送結(jié)束后輸入的字節(jié)將鎖存到SPIDAT中,可進行軟件讀出。

3.主模式

【ADμC812的串行外設(shè)接口SPI及其應(yīng)用】相關(guān)文章:

基于串行外設(shè)接口(SPI)的CAN總線隔離擴展設(shè)計03-18

串行DataFlash存儲器及其與單片機的接口03-18

串行接口鍵盤控制器SK5278及其在單片機系統(tǒng)中的應(yīng)用03-18

PCI接口芯片s5935及其應(yīng)用03-19

基于ADμC812的CAN總線智能節(jié)點的設(shè)計03-19

USB總線接口芯片CH371及其應(yīng)用03-18

異步串行通信接口的IP核設(shè)計03-18

高精度AD轉(zhuǎn)換器LTC1606及其應(yīng)用03-18

80C196MC的外設(shè)事務(wù)服務(wù)器及其應(yīng)用03-19