999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

1-Wire在微處理器中的搜索算法的研究

2010-05-10 11:04:18羅正生
制造業(yè)自動化 2010年7期
關(guān)鍵詞:差異

羅正生

(四川攀枝花學(xué)院,攀枝花 617000)

0 引言

隨著微處理的高速發(fā)展,微處理系統(tǒng)外圍接口從原來的并行方式為主被串行方式代替。通常的串行擴展接口和串行擴展總線有:UART的移位寄存器方式,MOTOROLA公司的SPI,NS公司的Microwire,和Dallas公司的1-Wire總線等。而1-Wire總線是一種最簡單的總線形式,它通過單條連接線完成了全部的控制、通信和供電,節(jié)省了I/O口,降低了系統(tǒng)成本并簡化了設(shè)計。1-Wire 器件不僅解決了主機/配件之間的所有互聯(lián)問題,而且僅僅需要一個專用接點即可達到這一目的[1]。

1 搜索算法

1-Wire器件與微控制器的硬件配置比較簡單。作為主機的微控制器通過1根I/O口與1-Wire器件的數(shù)據(jù)線相連,外接一個4.7kΩ的上拉電阻;微控制器的地線與1-Wire器件的地線相連。在標準速率下,1-Wire總線的最大速率為16.3kbps.在高速模式下,速率可達142kbps[2]。

1-Wire器件的應(yīng)用關(guān)鍵在于軟件算法的實現(xiàn)。每片1-Wire器件都有唯一的64位序列碼,它存儲在只讀存儲器(ROM)中。在1-Wire網(wǎng)絡(luò)中,序列碼用于主機對從機器件進行逐一尋址。我們采用的搜索算法是二叉樹型結(jié)構(gòu),搜索過程沿各分節(jié)點進行,直到找到的ROM碼,即葉子為止。后續(xù)的搜索操作沿著節(jié)點上的其他路經(jīng)進行,按照同樣的方式直到找到總線上的所有器件代碼。搜索算法首先通過復(fù)位(Reset)和在線應(yīng)答脈沖(Presence Pulse)時隙將1-Wire總線上的所有器件復(fù)位;成功地執(zhí)行該操作后,發(fā)送1個字節(jié)的搜索命令;搜索命令使1-Wire器件準備就緒、開始進行搜索操作。

搜索命令分為兩類:標準搜索命令(0FH)用來搜索連接到網(wǎng)絡(luò)中的所有器件;報警或有條件搜索命令(ECH)只用來收縮那些處于報警狀態(tài)下的期間,這種方式縮小了搜索范圍,可以快速查找到所需注意的器件。搜索命令發(fā)出之后,開始搜索。首先總線上的所有從機器件同時發(fā)送ROM碼(也叫注冊碼)中的第一位(最低有效位)。與所有的1-Wire通信一樣,無論是讀取數(shù)據(jù)還是向從機器件寫數(shù)據(jù),都由1-Wire主機啟動每一位操作。按照1-Wire的特點,當所有從機器件同時應(yīng)答主機時,結(jié)果相當于全發(fā)送數(shù)據(jù)位的邏輯AND;從機發(fā)送其ROM碼的第一位后,主機啟動下一位操作、接著從機發(fā)送第一位數(shù)據(jù)的補碼;從兩次讀到的數(shù)據(jù)位可以對ROM碼的第一位做出表2的判斷。

按照搜索算法的要求,1-Wire主機必須向總線上的從機發(fā)回一個指定位;如果從機器件中ROM碼的當前位的值與該數(shù)據(jù)位匹配,則繼續(xù)參與搜索過程;若從機器件的當前位與之不匹配,則該器件轉(zhuǎn)換到等待狀態(tài),并保持等待狀態(tài)直到下一個1-Wire復(fù)位信號到來。其余63位ROM碼的搜索依然按照這種“讀兩位”、“寫一位”的模式進行重復(fù)操作。表1為主機和從機的搜索過程。

表 1 1-Wire主機和從機的搜索過程

可以看出,如果所有總線上的器件在當前位具有相同值,那么只有一條分支路徑可選。總線上沒有器件相應(yīng)的情況是一種異常狀態(tài),可能是要查找的器件在搜索過程中與1-Wire總線脫離。如果當前位既有0也有1,這種情況稱為位值差異,它對在后續(xù)搜索過程中查找器件起關(guān)鍵作用。搜索伏安法制定在第一輪查找中若出現(xiàn)差異(數(shù)據(jù)位/補碼 = 0/0),則選用“0”路徑。記錄最后一次值差異的位置提供下一次搜索使用,搜索算法計算還對最初8位過程中出現(xiàn)的最后一次位差異保持跟蹤;64位注冊碼的前8位是家族碼,在器件的搜索過程中可以按照其家族碼進行分類。記錄家族碼的最后一次差異可以用于有選擇性地跳過1-Wire器件的整個分組。如需進行選擇性地搜索,可參考關(guān)于高級變量搜索的詳細解釋。64位ROM碼中包括8位循環(huán)冗余校驗(CRC);CRC值用于校驗是否搜索到正確的ROM碼。

2 搜索命令

圖1 搜索算法流程圖

“FIRST”操作是搜索1-Wire縱向上的第一個從機器件。該操作是通過將LastDiscrepancy、LastFamilyDiscrepancy和LastDeviceFlag置零,然后進行搜索完成的。最后ROM碼從ROM_NO寄存器中讀出。若1-Wire總線上沒有器件,復(fù)位序列就檢測不到應(yīng)答脈沖,搜索過程中止。高級變量搜索有3種利用同一組狀態(tài)變量LastDescrepancy、LastFamilyDiscrepancy、LastDeviceFlag、ROM_NO實現(xiàn)的高級變化搜索可以得到三種高級變量搜索算法,這幾種高級搜索算法允許來指定作為搜索目標的器件的類型(家族碼)或者是制定需要跳過或驗證某類型的器件是否在線。

“TARGET SETUP”操作就是用預(yù)置搜索狀態(tài)的方式首先查找一個特殊的家族類型,每個1-Wire都有一個字節(jié)的家族碼內(nèi)嵌在ROM碼中,逐級可以通過家族碼來識別器件按所具有的特性和功能。如1-Wire總線上有多片器件是,通常是將搜索目標首先定位在需注意的器件類型上。為了將一個特殊的家族作為搜索目標,需要將所希望的家族碼字節(jié)方到ROM_NO寄存器的第一個字節(jié)中,并且將ROM_NO寄存器的復(fù)位狀態(tài)置零[3]。

3 搜索算法的應(yīng)用

有了上面的搜索算法以及高級變量搜索,利用1-Wire的通訊協(xié)議就可以很容易辨別在單總線上的多節(jié)點1-Wire器件。用搜索算法可以很容易找出在總線上某一家族碼的所有1-Wire器件,通過微機的串口可以向總線上具有某一特定的家族碼的1-Wire器件中寫入希望的內(nèi)容,圖1列出了對一個器件進行搜索的流程圖[4]。

圖中com_id_bit是id_bit的補碼,是搜索過程中所有應(yīng)答期間的id_bit_number位的補碼的邏輯AND;id_bit是在位搜索中第一次讀取的值,是搜索過程中所有應(yīng)答期間的id_bit_number位的邏輯AND;id_bit_number是記錄當前搜索1到64位ROM中的哪一位的量;LastDeviceFlag是指明前一次搜索歸的已經(jīng)是最后一個器件的標志位;LastDiscrepancy是位指針,指明下次搜索從哪一個差異值開始;last_zero是上次被寫入0的值差異位的位置;ROM_NO是記錄當前正在查找的ROM注冊碼的8字節(jié)緩沖器;search_direction是位變量,其值用來指明方向,具有此數(shù)據(jù)位規(guī)定值的所在器件繼續(xù)響應(yīng)操作,其他器件轉(zhuǎn)入等待狀態(tài)直到下一次1-wire復(fù)位[4]。

4 結(jié)束語

由于1-Wire器件有節(jié)省線資源、結(jié)構(gòu)簡單等諸多優(yōu)點,所以其應(yīng)用也越來越廣泛,文章只介紹了1-Wire用于多節(jié)點操作系統(tǒng)的搜索算法和一個1-Wire器件燒寫器的簡單應(yīng)用,以拋磚引玉。

[1] 譚浩強.C 程序設(shè)計[M] .北京:清華大學(xué)出版社,1997.

[2] 胡漢才.單片機原理及其接口技術(shù)[M].北京:清華大學(xué)出版社,2001.

[3] DS2432 1kb Protected 1-Wire EEPROM with SHA-1.Engine.www.maximic.com.

[4] 謝洪波.嵌入式網(wǎng)絡(luò)數(shù)字監(jiān)控系統(tǒng)接口與網(wǎng)絡(luò)帶寬測量[D].成都.電子科技大學(xué),2005.

猜你喜歡
差異
“再見”和bye-bye等表達的意義差異
英語世界(2023年10期)2023-11-17 09:19:16
JT/T 782的2020版與2010版的差異分析
相似與差異
音樂探索(2022年2期)2022-05-30 21:01:37
關(guān)于中西方繪畫差異及對未來發(fā)展的思考
收藏界(2019年3期)2019-10-10 03:16:40
找句子差異
DL/T 868—2014與NB/T 47014—2011主要差異比較與分析
生物為什么會有差異?
法觀念差異下的境外NGO立法效應(yīng)
構(gòu)式“A+NP1+NP2”與“A+NP1+(都)是+NP2”的關(guān)聯(lián)和差異
論言語行為的得體性與禮貌的差異
主站蜘蛛池模板: 亚洲国产黄色| 国产精品三级专区| 久久久久国产精品熟女影院| 国内精品手机在线观看视频| 精品色综合| 成人日韩欧美| 美女国产在线| 激情综合五月网| 中美日韩在线网免费毛片视频| 亚洲无码A视频在线| 欧美一区二区啪啪| 青青草原国产av福利网站| 99久久亚洲精品影院| 国产精品免费p区| 日韩在线网址| 国产99视频免费精品是看6| 国产在线拍偷自揄拍精品 | 国产国模一区二区三区四区| 亚洲欧美日韩色图| 亚洲成人免费看| 黄色在线网| 日韩视频免费| 特级精品毛片免费观看| 玩两个丰满老熟女久久网| 99re视频在线| 人人91人人澡人人妻人人爽| 9999在线视频| 中文字幕乱妇无码AV在线| 欧美亚洲一区二区三区导航| 国产激情国语对白普通话| 久久人妻xunleige无码| 欧美不卡视频在线| 日韩小视频在线观看| 国产成人精品第一区二区| 国产亚洲精品资源在线26u| 人妻精品久久无码区| 欧美成人手机在线观看网址| 亚洲综合色在线| 国产哺乳奶水91在线播放| 夜夜拍夜夜爽| 波多野结衣亚洲一区| 亚洲人视频在线观看| 成人第一页| jizz国产在线| 欧美午夜视频在线| 亚洲无线国产观看| 欧美日韩专区| 久久伊人色| 国产区成人精品视频| 天堂成人在线视频| 青青青草国产| 国产后式a一视频| 国产国产人免费视频成18| 乱系列中文字幕在线视频| 亚洲娇小与黑人巨大交| 国产一级毛片网站| 日韩黄色大片免费看| 日韩在线第三页| 亚洲视频欧美不卡| 人妻一区二区三区无码精品一区| 国产成人喷潮在线观看| 99久久精品免费看国产电影| 久久semm亚洲国产| 好吊妞欧美视频免费| 激情无码字幕综合| 丝袜美女被出水视频一区| 欧美一区国产| 露脸一二三区国语对白| 99re热精品视频国产免费| 美女国产在线| 欧美人与性动交a欧美精品| 九色91在线视频| 极品私人尤物在线精品首页 | 午夜精品久久久久久久2023| 欧美全免费aaaaaa特黄在线| 少妇精品网站| 国产av无码日韩av无码网站| 色网站在线免费观看| 国产成人精品一区二区秒拍1o| 国产一级毛片网站| 91在线免费公开视频| 内射人妻无码色AV天堂|