欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種spi通訊接口的制作方法

文檔序號:6396710閱讀:310來源:國知局
專利名稱:一種spi通訊接口的制作方法
技術(shù)領(lǐng)域
本實(shí)用新型屬DCS (分散控制系統(tǒng))技術(shù)領(lǐng)域,具體涉及一種應(yīng)用于卡件內(nèi)部及卡件之間芯片SPI通訊接口。
背景技術(shù)
分散控制系統(tǒng)(DCS)廣泛地應(yīng)用于電力、冶金、石油化工等各個行業(yè)。隨著DCS的發(fā)展,單模塊雙單片機(jī)甚至多單片機(jī)的情況越來越多,或者是單模塊有多個可編程芯片。SPI通訊協(xié)議靈活、可控度高,而且很多CPU芯片已經(jīng)支持帶DMA的SPI通訊,使SPI通訊變得更加簡單便捷,并且占用CPU的時間更少,所以很多芯片間的通訊都采用SPI協(xié)議的通訊模式。SPI通訊的雙方分為主機(jī)和一個或多個從設(shè)備,一般使用4條線:串行時鐘線(SCK)、主機(jī)輸入/從機(jī)輸出數(shù)據(jù)線MIS0、主機(jī)輸出/從機(jī)輸入數(shù)據(jù)線MOSI和低電平有效的從機(jī)選擇線CS。一般的SPI通訊時,主機(jī)處于主動和主導(dǎo)的地位,從機(jī)只能被動接受。但是作為從機(jī)的芯片一般還需要執(zhí)行其他命令和任務(wù),而被動地接受主機(jī)的通訊命令不可避免的要打斷和影響當(dāng)前執(zhí)行的任務(wù),尤其是如果雙方的通訊內(nèi)容是不斷更新的數(shù)據(jù)的話,從機(jī)被動地接受SPI通訊命令可能會打斷當(dāng)前的數(shù)據(jù)采集或者打斷數(shù)據(jù)區(qū)賦值,造成從機(jī)采集到的數(shù)據(jù)不可靠和數(shù)據(jù)錯位等問題,甚至有可能引起很嚴(yán)重的故障。
發(fā)明內(nèi)容
本實(shí)用新型要解決的技術(shù)問題是提供一種SPI通訊接口,避免SPI通訊中處于從機(jī)地位的可編程芯片的當(dāng)前任務(wù)被打斷,也避免了通訊傳輸?shù)臄?shù)據(jù)發(fā)生錯位等問題,提高傳輸效率和處理器的運(yùn)算效率。為達(dá)到上述目的,采用的技術(shù)方案是:一種SPI通訊接口,包括SPI通訊的主機(jī)與至少一臺從機(jī)、MISO線、MOSI線、SCK線和CS線,其特征在于:每臺所述從機(jī)都有一條Ready線與所述主機(jī)連接,用于確保SPI通訊的數(shù)據(jù)完整。本實(shí)用新型的積極效果是:通過在SPI通訊的主機(jī)和每臺從機(jī)間增設(shè)一條Ready線,使從機(jī)擁有對通訊的主動權(quán),消除了現(xiàn)有SPI通訊中從機(jī)被動接受通訊指令時被打斷當(dāng)前操作的影響。同時由于CS線的存在,SPI通訊的主機(jī)也沒有丟失對通訊的控制權(quán),主機(jī)和從機(jī)都不會因被動的接受通訊命令而打斷自己的其他任務(wù),從而能使SPI通訊的質(zhì)量顯著提高,確保了 SPI通訊的數(shù)據(jù)完整,也提高了 SPI通訊的主機(jī)和從機(jī)的CPU的工作效率。

圖1是現(xiàn)有SPI通訊的硬件原理框圖;圖2是本實(shí)用新型的SPI通訊的硬件原理框圖;圖3是本實(shí)用新型的SPI通訊方法的單字節(jié)時序圖;[0011]圖4是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時的時序圖;圖5是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時的時序圖;圖6是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時從機(jī)的流程圖;圖7是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時主機(jī)的流程圖;圖8是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時從機(jī)的流程圖;圖9是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時主機(jī)的流程圖。
具體實(shí)施方式
一種SPI通訊接口,包括SPI通訊的主機(jī)與至少一臺從機(jī)、MISO線、MOSI線、SCK線和CS線,其特征在于:每臺所述從機(jī)都有一條Ready線與所述主機(jī)連接,用于確保SPI通訊的數(shù)據(jù)完整。使用上述SPI通訊接口,第一種確保數(shù)據(jù)完整的通訊方法,其特征在于,包括以下步驟:(I)從機(jī)數(shù)據(jù)采集完畢并將數(shù)據(jù)放入SPI發(fā)送buff區(qū),準(zhǔn)備好進(jìn)行SPI通訊時,拉低Ready線;(2)主機(jī)檢測到某從機(jī)Ready線為低時,拉低該從機(jī)對應(yīng)的CS線;(3)主機(jī)與該從機(jī)進(jìn)行SPI通訊;
·[0022](4)通訊完畢,主機(jī)拉高CS線,從機(jī)拉高Ready線。使用上述SPI通訊接口,第二種確保數(shù)據(jù)完整的通訊方法,其特征在于,包括以下步驟:(I)從機(jī)數(shù)據(jù)采集完畢并將數(shù)據(jù)放入SPI發(fā)送buff區(qū),準(zhǔn)備好進(jìn)行SPI通訊時,拉低Ready線;(2)主機(jī)檢測到某從機(jī)Ready線為低時,拉低該從機(jī)對應(yīng)的CS線;(3)該從機(jī)與主機(jī)開始SPI通訊,傳輸一個字節(jié);(4)判斷數(shù)據(jù)傳輸是否完畢,傳輸完畢則轉(zhuǎn)至步驟(7),未完畢則轉(zhuǎn)至步驟(5);(5)從機(jī)將下一字節(jié)放入SPI數(shù)據(jù)寄存器,并翻轉(zhuǎn)一次Ready線的電平;(6)主機(jī)根據(jù)傳送的字節(jié)數(shù)判斷Ready線電平是否正確,正確則轉(zhuǎn)至步驟(3),不正確則轉(zhuǎn)至步驟(7);(7)主機(jī)拉高CS線,從機(jī)拉高Ready線,通訊結(jié)束。圖1是現(xiàn)有SPI通訊的硬件原理框圖,圖2是本實(shí)用新型的SPI通訊的硬件原理框圖,對比圖1和圖2可見,本實(shí)用新型的SPI通訊比現(xiàn)有的SPI通訊在硬件上多了一條Ready線,這條線的信號由從機(jī)輸出,輸入到主機(jī),是從機(jī)對整個SPI通訊的控制線,這條線使主機(jī)在整個SPI通訊中有了主動權(quán),因此,從機(jī)當(dāng)前執(zhí)行的任務(wù)如數(shù)據(jù)采集等不再被主機(jī)發(fā)出的SPI通訊命令打斷。圖3是本實(shí)用新型的SPI通訊方法的單字節(jié)時序圖,由時序圖中可以看出,只有在Ready線拉低之后CS線才會拉低,而只有在Ready和CS線都是低的情況下CLK才會有效,從而數(shù)據(jù)才會有效,正是Ready線和CS線的存在,才使SPI通訊的主機(jī)和從機(jī)雙方都有了主控權(quán),主機(jī)和從機(jī)都不會因被動的接受通訊命令而打斷自己的其他任務(wù),從而能保證SPI通訊的數(shù)據(jù)和其他數(shù)據(jù)完整和真實(shí)準(zhǔn)確。[0033]本實(shí)用新型有兩種通訊模式:圖4是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時的時序圖,圖5是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時的時序圖。兩種通訊模式的相同之處在于,從機(jī)都有Ready控制線,都對通訊有控制權(quán);不同之處在于第一種模式Ready線只翻轉(zhuǎn)一次,開始通訊之前拉低,通訊完畢拉高,適用于對通訊速度要求高的情況,主機(jī)、從機(jī)都可以用DMA等快速數(shù)據(jù)傳輸手段;而第二種模式在每個字節(jié)傳輸完畢Ready線都翻轉(zhuǎn)一次,在這種情況下,主機(jī)在除第一個字節(jié)以外的每個字節(jié)傳輸之前都需要判定Ready線的電平,從而更能確保通訊的正確性,但這種模式的缺陷在于,由于每次從機(jī)都要翻轉(zhuǎn)Ready線而主機(jī)每次都需要判定Ready線的狀態(tài),從而降低了 SPI的通訊速度,并且不能使用DMA等高速通訊方法。所以在使用時可以根據(jù)實(shí)際情況來選擇使用第一種模式還是第二種模式。圖6是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時從機(jī)的流程圖,圖7是本實(shí)用新型的第一種通訊方法多字節(jié)通訊時主機(jī)的流程圖。如圖所示,當(dāng)從機(jī)數(shù)據(jù)準(zhǔn)備好時,拉低Ready線;主機(jī)檢測到某從機(jī)Ready線為低時,拉低該從機(jī)對應(yīng)的CS線;主機(jī)與該從機(jī)進(jìn)行SPI通訊;通訊完畢,主機(jī)拉高CS線,從機(jī)拉高Ready線。圖8是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時從機(jī)的流程圖,圖9是本實(shí)用新型的第二種通訊方法多字節(jié)通訊時主機(jī)的流程圖。如圖所示:(1)從機(jī)數(shù)據(jù)采集完畢并將數(shù)據(jù)放入SPI發(fā)送buff區(qū),準(zhǔn)備好進(jìn)行SPI通訊時,拉低Ready線;(2)主機(jī)檢測到某從機(jī)Ready線為低時,拉低該從機(jī)對應(yīng)的CS線;(3)該從機(jī)與主機(jī)開始SPI通訊,傳輸一個字節(jié);(4)判斷數(shù)據(jù)傳輸是否完畢,傳輸完畢則轉(zhuǎn)至步驟(7),未完畢則轉(zhuǎn)至步驟(5);(5)從機(jī)將下一字節(jié)放入SPI數(shù)據(jù)寄存器,并翻轉(zhuǎn)一次Ready線的電平;(6)主機(jī)根據(jù)傳送的字節(jié)數(shù)判斷Ready線電平是否正確,正確則轉(zhuǎn)至步驟(3),不正確則轉(zhuǎn)至步驟(7);(7)主機(jī)拉高CS線,從機(jī)拉高Ready線,通訊結(jié)束。由上述兩種通訊模式的流程圖可以看出,在每次通訊開始前,都要對Ready線進(jìn)行操作,這是從機(jī)可以選擇何時開始通訊,而主機(jī)因?yàn)镃S線的存在,也沒有丟失對通訊的控制權(quán),這樣從機(jī)可以在數(shù)據(jù)采集或者其他任務(wù)完成后來控制Ready線通知主機(jī)可以通訊,而主機(jī)也可以選擇在其他任務(wù)完成后來控制CS線來開始通訊,這樣主機(jī)和從機(jī)都擁有的控制權(quán)使通訊變得可控性非常強(qiáng),使主機(jī)和從機(jī)的其他操作不會被打斷,保證了其他操作的設(shè)計(jì)到的數(shù)據(jù)完整性。實(shí)驗(yàn)驗(yàn)證:對于本實(shí)用新型的性能進(jìn)行測試,同現(xiàn)有SPI通訊方式進(jìn)行對比,兩者硬件電路相同,都采用主機(jī)為LPC2136、二從機(jī)為STM32F103,主機(jī)同時進(jìn)行多種通訊,從機(jī)同時進(jìn)行脈沖量的計(jì)頻測量,測量范圍為I一 10000Hz。實(shí)驗(yàn)證明,當(dāng)采用傳統(tǒng)的SPI通訊方法時,從機(jī)因?yàn)楸粍拥慕邮芡ㄓ嵜?,在脈沖頻率較高的時候或者脈沖頻率較低的時候,從機(jī)的計(jì)頻操作會被SPI通訊打斷,從而造成計(jì)算結(jié)果跟輸入的信號源不一致。當(dāng)采用本實(shí)用新型的SPI通訊方法時,從機(jī)選擇在計(jì)算完畢后拉低Ready線開始通訊,經(jīng)過長時間的觀察,從機(jī)的計(jì)算結(jié)果跟輸入的信號保持一致,在測量范圍內(nèi),誤差為±1Ηζ。由實(shí)驗(yàn)結(jié)果可知,本實(shí)用新型能確保SPI通訊雙方其他操作的正確性,能確保SPI通訊雙方執(zhí)行其他計(jì)算 時涉及到的數(shù)據(jù)的完整。
權(quán)利要求1.一種SPI通訊接口,包括SPI通訊的主機(jī)與至少一臺從機(jī)、MISO線、MOSI線、SCK線和CS線,其特征在于:每臺所述從機(jī)都有一條Ready線與所述主機(jī)連接,用于確保SPI通訊的數(shù)據(jù)完整 。
專利摘要本實(shí)用新型屬分散控制系統(tǒng)技術(shù)領(lǐng)域,涉及一種SPI通訊接口,要解決從機(jī)在被動接受通訊指令時可能會打斷當(dāng)前的數(shù)據(jù)采集或打斷數(shù)據(jù)區(qū)賦值,造成從機(jī)采集到的數(shù)據(jù)不可靠或數(shù)據(jù)錯位等技術(shù)問題。SPI通訊接口包括SPI通訊的主機(jī)與至少一臺從機(jī)、MISO線、MOSI線、SCK線和CS線,其特征在于每臺所述從機(jī)都有一條Ready線與所述主機(jī)連接,用于確保SPI通訊的數(shù)據(jù)完整。利用上述SPI通訊接口,可有兩種通訊方法來確保SPI通訊的數(shù)據(jù)完整。本實(shí)用新型通過在SPI通訊的主機(jī)和從機(jī)間增設(shè)一條Ready線,消除了現(xiàn)有SPI通訊中從機(jī)被動接受通訊指令時被打斷當(dāng)前操作的影響,確保了SPI通訊的數(shù)據(jù)完整。
文檔編號G06F13/38GK203117968SQ201220735758
公開日2013年8月7日 申請日期2012年12月28日 優(yōu)先權(quán)日2012年12月28日
發(fā)明者李煒瑋, 邵繼紅 申請人:上海自動化儀表股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
德钦县| 巫山县| 讷河市| 武陟县| 胶南市| 沾化县| 额济纳旗| 池州市| 大港区| 清流县| 安陆市| 喀什市| 景东| 东城区| 延津县| 太谷县| 全椒县| 桦南县| 保亭| 田林县| 承德市| 内江市| 安丘市| 凤冈县| 汪清县| 瑞丽市| 原平市| 吴旗县| 辽阳市| 溧水县| 依兰县| 遵义市| 南陵县| 长治市| 云龙县| 塔城市| 调兵山市| 大连市| 南乐县| 遂昌县| 临颍县|