《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于單片機串口實現1-Wire總線通信的方法
基于單片機串口實現1-Wire總線通信的方法
來源:微型機與應用2012年第11期
李 多,陳 軍
(東南大學 自動化學院,江蘇 南京 211189)
摘要: 主要介紹了一種借助單片機串口實現1-Wire總線通信的方法,并以集成數字溫度傳感器DS18B20為例,基于有限狀態機采用該方法完成了通信程序的設計。
Abstract:
Key words :

摘  要: 主要介紹了一種借助單片機串口實現1-Wire總線通信的方法,并以集成數字溫度傳感器DS18B20為例,基于有限狀態機采用該方法完成了通信程序的設計。
關鍵詞: 1-Wire總線;串口;有限狀態機;DS18B20

 1-Wire總線是Dallas半導體公司推出的一種半雙工串行總線,它采用單根信號線實現微控制器(主機)與接口器件(從機)之間的雙向通信,每個從機具有唯一的工廠光刻ID作為地址。
 1-Wire總線的優勢在于結構簡單、便于總線擴展,可以通過總線為器件供電。1-Wire器件種類豐富,典型器件包括溫度傳感器、存儲器、實時時鐘、電池管理等。在低功耗儀表、工業控制及家庭監控網絡等領域,1-Wire總線獲得了廣泛應用。
 1-Wire總線協議通常采用軟件延時實現,對于實時性高且無操作系統的單片機,該方式難以提高單片機效率,同時極大地降低了系統實時性。本文提出了一種基于單片機串口的1-Wire總線協議的軟硬件設計,該設計實現了1-Wire總線通信和單片機效率、實時性的兼顧。
1 1-Wire總線協議簡析
 1-Wire總線的單根信號線兼有地址總線、數據總線和控制總線的功能,因此,訪問1-Wire器件要嚴格遵循總線協議以保證數據完整性。
 1-Wire總線協議定義了初始化脈沖、寫脈沖和讀脈沖3類總線信號,其主要區別在于,總線上高低電平時間不同,下面分別對它們進行簡析。


2.2 通信協議接口
 單片機串口采用1 bit起始位、8 bit數據位、1 bit停止位的工作方式,發送時由LSB至MSB逐位發送。
 (1)初始化脈沖
設置波特率為9 600 b/s,即每1 bit的寬度為104.2 μs,發送數據0xf0,則起始位和低4 bit構成復位信號,高4 bit為1,即釋放總線。如總線上無應答信號,則串口接收的數據等于0xf0,否則說明總線上有應答信號。
 (2)讀寫脈沖
 設置波特率為115 200 b/s,即每1 bit的寬度為8.7 μs,完整的發送過程持續87 μs,滿足讀寫脈沖至少60 μs的協議要求。起始位、停止位分別用來啟動、終止讀寫脈沖。寫脈沖中,根據串口發送不同數據區分別實現寫0時序和寫1時序;讀脈沖中,串口發送數據0xff,起始位實現讀脈沖時序的啟動,LSB為1,此時,主機釋放并采樣總線,起始位與LSB共維持17.4 μs,滿足協議對讀時序的要求。根據串口接收的數據最低位即可區分從機發送至總線的數據。
 采用串口實現1-Wire總線通信的本質在于將3類總線信號與不同波特率下不同數據的串口收發過程建立聯系,初始化脈沖對應2次串口收發的過程,讀寫脈沖則對應1次串口收發的過程[4]。具體對應關系如表1所示。

3 1-Wire總線應用——DS18B20
 DS18B20是1-Wire總線的集成數字

 

溫度傳感器,其精度高、體積小,在智能儀器儀表、工業控制等領域中廣泛應用。
 傳統應用方式是采用一根I/O引腳配合軟件延時的方式實現相關協議,1-Wire總線協議需要微秒級時間分辨率,在通信過程中必須關閉系統所有中斷,否則極容易因為中斷服務程序的執行而造成通信數據錯誤。但是關閉中斷降低了系統實時性,使得系統不能及時響應外部請求。對于任務少、實時性要求不高的系統,這種做法是可行的,但是對于任務多且無操作系統的單片機,以初始化脈沖為例,在至少960 μs的時間內,單片機都會被1-Wire總線占用,效率大為降低,實時性難以保證。
 基于單片機串口中斷實現1-Wire協議,并配合狀態機實現與DS18B20通信,為上述問題提出了解決方案。由于串口的收發都是通過硬件完成,因此數據收發過程中單片機可以處理其他任務,在實現1-Wire通信的同時,兼顧了實時性和效率。
 通信程序包括中斷服務程序和通信狀態機。中斷服務程序為物理層,完成數據緩沖區中的數據收發,并通過全局變量標識總線的狀態;通信狀態機為DS18B20協議層,將對DS18B20的訪問劃分為子狀態,根據表1將對DS18B20的不同操作轉化為相應數據并存入數據緩沖區,在總線處于空閑狀態時,依次完成狀態轉移。通信狀態轉換圖如圖5所示[4]。

 本文提出了一種基于單片機串口的1-Wire總線通信方式,結合1-Wire器件DS18B20詳細介紹了其軟硬件設計。相比于傳統1-Wire通信方式,本文提出的方式提高了單片機效率,兼顧了1-Wire通信和系統的實時性,為多任務且無操作系統的單片機應用1-Wire器件提供了新的解決方案。
參考文獻
[1] 馬潮.AVR單片機嵌入式系統原理與應用實踐(第二版)[M].北京:北京航空航天大學出版社,2011.
[2] Maxim. DS18B20 datasheet[Z]. 2008.
[3] Maxim. Application note 214: using a UART to implement a 1-Wire bus master[Z]. 2002.
[4] ATMEL. AVR318: Dallas 1-Wire master [Z]. 2004.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩性视频在线| 国产视频在线一区二区| 亚洲一区三区视频在线观看| 亚洲全黄一级网站| 久久福利毛片| 欧美呦呦网站| 亚洲先锋成人| 中文一区二区在线观看| 夜夜嗨av色综合久久久综合网 | 99国产精品一区| 亚洲精品久久久久中文字幕欢迎你 | 夜夜嗨av一区二区三区网站四季av | 亚洲视频你懂的| 亚洲午夜激情| 亚洲欧美激情四射在线日 | 99精品视频免费全部在线| 日韩视频久久| 99精品视频免费观看视频| 99av国产精品欲麻豆| 99精品国产福利在线观看免费| 国产精品theporn| 国产精品久久久久aaaa| 国产精品免费小视频| 国产精品男人爽免费视频1| 国产精品午夜视频| 国内精品久久久久久影视8| 永久免费精品影视网站| 亚洲人成网站999久久久综合 | 亚洲人成在线观看一区二区| 亚洲另类一区二区| 亚洲视屏在线播放| 欧美一区二区在线免费播放| 久久aⅴ国产欧美74aaa| 亚洲黄色成人久久久| 99国内精品久久| 亚洲一区影音先锋| 欧美一区观看| 久久亚洲精品伦理| 欧美精品在线观看播放| 国产精品久久久久久福利一牛影视| 国产精品区二区三区日本| 国产一区二区三区不卡在线观看| 经典三级久久| 99国产精品自拍| 欧美一区二区视频免费观看| 亚洲精品久久久久中文字幕欢迎你 | 国内精品久久久久久久影视麻豆| 亚洲电影免费观看高清| 99国产精品一区| 欧美资源在线| 一本色道久久综合亚洲精品按摩| 午夜国产精品视频免费体验区| 久久久福利视频| 欧美日韩和欧美的一区二区| 国产精品永久| 亚洲黄色av| 亚洲在线电影| 亚洲三级网站| 欧美亚洲一级| 欧美激情国产精品| 国产女人18毛片水18精品| 亚洲国产精品精华液网站| 中国成人黄色视屏| 亚洲人成人一区二区在线观看 | 国产精品v欧美精品v日本精品动漫| 国产一区二区三区四区在线观看| 亚洲成色www久久网站| 国产麻豆91精品| 亚洲欧洲中文日韩久久av乱码| 亚洲中字黄色| 亚洲精品在线观看视频| 欧美在线视频一区| 欧美日韩精品免费看| 国产揄拍国内精品对白| 一本色道久久综合亚洲91| 亚洲国产精品久久精品怡红院| 亚洲尤物在线| 欧美精品福利在线| 国产真实久久| 亚洲综合色婷婷| 一本色道久久综合狠狠躁篇的优点| 久久久久久久久久久久久9999| 欧美色欧美亚洲高清在线视频| 狠狠色综合一区二区| 亚洲一区二区三区四区五区午夜| 亚洲人成人99网站| 久久久国产精品一区二区中文| 国产精品v欧美精品∨日韩| 亚洲国产综合91精品麻豆| 香蕉成人啪国产精品视频综合网| 一片黄亚洲嫩模| 麻豆国产va免费精品高清在线| 国产欧美一区二区三区国产幕精品| 亚洲精品欧美激情| 亚洲福利视频网| 欧美在线观看你懂的| 国产精品福利在线| 亚洲免费av观看| 日韩视频在线你懂得| 欧美96在线丨欧| 黄色国产精品一区二区三区| 亚洲欧美不卡| 午夜精品福利在线| 国产精品久久| 亚洲视频二区| 亚洲综合国产| 国产精品chinese| 一本色道久久综合精品竹菊 | 久久精品91久久久久久再现| 欧美一区二区三区播放老司机| 欧美系列电影免费观看| 日韩视频一区二区三区| 亚洲另类在线视频| 欧美激情一区二区三区蜜桃视频 | 在线不卡中文字幕| 欧美中文在线免费| 久久国产欧美精品| 国产日韩欧美高清| 午夜精品久久久久久久| 性做久久久久久免费观看欧美 | 国产欧美日韩在线视频| 亚洲男人av电影| 欧美一区二区三区久久精品茉莉花| 国产精品v日韩精品| 日韩午夜在线电影| 亚洲视频精选在线| 欧美午夜免费影院| 亚洲少妇诱惑| 羞羞色国产精品| 国产亚洲成av人在线观看导航 | 欧美剧在线免费观看网站| 91久久精品国产91久久性色tv| 亚洲国产精品一区二区尤物区| 久久久噜噜噜久久中文字幕色伊伊| 国产亚洲一区在线播放| 久久国产精品亚洲va麻豆| 久久综合色综合88| 亚洲日本精品国产第一区| 一本色道**综合亚洲精品蜜桃冫| 欧美日韩国产精品自在自线| 日韩视频在线一区二区| 亚洲综合电影| 国产亚洲一区二区三区在线观看| 久久精品99无色码中文字幕| 欧美aaaaaaaa牛牛影院| 日韩亚洲综合在线| 亚洲欧美日韩国产一区| 国产私拍一区| 亚洲激情成人在线| 欧美日韩免费在线观看| 亚洲伊人伊色伊影伊综合网 | 国产精品久久一区二区三区| 午夜精品久久久久久久99水蜜桃| 久久久久中文| 亚洲激情一区二区| 亚洲午夜久久久久久久久电影院 | 性欧美xxxx大乳国产app| 久久综合伊人77777麻豆| 亚洲精品久久久久久久久久久| 午夜精品福利在线观看| 韩国一区二区三区美女美女秀| 亚洲精品视频在线播放| 国产精品国产精品国产专区不蜜| 欧美一级久久久| 欧美另类videos死尸| 亚洲男人的天堂在线观看| 农村妇女精品| 亚洲一区精品视频| 久热国产精品视频| 国产精品99久久久久久有的能看 | 国产欧美精品xxxx另类| 亚洲人在线视频| 国产精品免费观看视频| 亚洲黄色影片| 国产精品亚洲综合| 亚洲日本激情| 国产欧美精品日韩区二区麻豆天美| 亚洲国产美女| 国产精品久久久99| 亚洲人成欧美中文字幕| 国产欧美日韩综合| 一卡二卡3卡四卡高清精品视频| 国产婷婷97碰碰久久人人蜜臀| 日韩午夜在线播放| 国产一区二区日韩| 亚洲一区二区毛片| 在线精品一区二区| 午夜精品福利一区二区三区av| 亚洲第一在线综合网站| 欧美一区二区三区四区在线观看地址| 在线免费观看成人网| 欧美在线观看天堂一区二区三区 | 欧美在线不卡| 国产精品成人一区二区三区夜夜夜 | 欧美亚洲在线播放| 亚洲理论在线观看| 欧美1区2区视频| 欧美一区二区免费| 国产精品久久久一区二区| 亚洲麻豆av|