1. 信號從感測器怎麼傳到單片機上
霍爾元件測的數據是模擬的!!!
要經過放大(可以在網路收到這資料),然後把數據經過A/D轉換。就是模擬量變成數字量!(高低電平格式 0和1類的)最後傳給單片機的一個引腳。可以是32個I/O口的一個。然後在程序上做個判斷是0就寫0是1就寫1.按位寫入8位寄存器。
具體給介紹下我推薦的模數轉換晶元
下面是我的學報
第19 卷第5 期蘇 州 絲 綢 工 學 院 學 報Vol . 19 No. 5
1999 年10 月JOURNAL OF SUZHOU INSTITUTE OF SILK TEXTILE TECHNOLOGY Oct . 1999
文章編號:1000 - 1999 (1999) 05 - 0045 - 06
12 位A/ D 轉換器TLC2543 與51 系列
單片機介面技術
X
王宜懷
(蘇州大學工學院 蘇州,215006)
摘 要:從應用角度介紹了具有11 個輸入端的12 位A/ D 轉換器TLC2543 的結構
與編程要點,探討了TLC2543 與51 系列單片機的介面方法,用軟體合成SPI 操作,
給出了介面電路與A/ D 採集程序設計實例,並對實際應用時應注意的問題進行了
探討。
關鍵詞:A/ D 轉換;TLC2543 晶元;51 系列單片機;介面技術
中圖法分類號:TP33417 文獻識別碼:B
具有11 個輸入端的12 位模數轉換器TLC2543 是美國德州儀器公司於近幾年推出的一
種性能價格比較優的12 位A/ D 轉換晶元,具有多種封裝形式,並具有民用級、工業級、軍用
級產品。在產品型號、規格、封裝形式、適用范圍等方面,已形成一個系列。一九九八年以來開
始在我國推廣使用。就12 位A/ D 轉換器來說, TCL2543 具有轉換快、穩定性好、與微處理器
介面簡捷、價格低等優點,相信在我國單片機應用領域將會很快推廣。鑒於51 系列單片機是
我國單片機應用領域的主流型號,一批與之兼容的單片機(如AT89 C51、GMS97 C51 等) 於近
幾年相繼推廣使用,51 系列術語含義可以擴大,我們可以把與51 系列兼容的單片機稱為廣
義51 系列或51 系列兼容機,以下統一使用51 系列術語。可以預計,51 系列單片機的開發應
用,在我國的單片機應用領域仍將是主導地位,因此,探討TLC2543 與51 系列單片機介面具
有實際意義。但是, TLC2543 與帶有串列外設介面( S PI , Serial Peripheral Interf ace) 的微處理
器易於介面,而51 系列單片機不具有S PI ,因此必須用軟體合成S PI 的操作。本文結合實際
應用TLC2543 的體會, 從應用角度出發, 介紹了TLC2543 的基本結構與編程要點, 給出了
TLC2543 與51 系列單片機的介面電路以及A/ D 採集程序設計實例,同時討論了TLC2543 應
用中一些應注意的問題。
1 TLC2543 的引腳及功能
X 收稿日期:1999 - 06 - 30
作者簡介:王宜懷(1962 - ) ,男,副教授
基金項目:科技三項費用
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
TLC2543 是12 位開關電容逐次逼近模數轉換器,有多封裝種形式,其中DB 、DW 或N 封
裝的管腳圖見圖1。TLC2543 有20 根引腳,其它封裝形式引腳數及引腳功能相同。引腳的功
能簡要分類說明如下:
(1) 電源引腳
Vcc ,20 腳:正電源端,一般接+ 5V 。GND ,
10 腳:地。
REF + ,14 腳: 正基準電壓端, 一般接+
5V 。
REF - ,13 腳:負基準電壓端,一般接地。
(2) 控制引腳
CS ,15 腳:片選端, 由高到低有效, 由外部
輸入。
EOC ,19 腳:轉換結束端,向外部輸出。
I/ O CLOCK,18 腳:控制輸入輸出的時鍾,
由外部輸入。
圖1 TLC2543 管理圖
(3) 模擬輸入引腳
AIN0 ~ AIN10 ,1 ~ 9 腳、11 ~ 12 腳:11 路模擬輸入端,輸入電壓范圍:0. 3V ~ Vcc + 0.
3V 。
(4) 控制字輸入引腳
DATA TN PUT ,17 腳:控制字輸入端,選擇通道及輸出數據格式的控制字由此輸入。
(5) 轉換數據輸出引腳
DATA OUT ,16 腳:A/ D 轉換結果輸出的3 態串列輸出端。
2 TLC2543 的編程要點
211 控制字的格式
控制字為從DATA IN PUT 端串列輸入TLC2543 晶元內部的8 位數據,它告訴TLC2543 要
轉換的模擬量通道、轉換後的輸出數據長度、輸出數據的格式。其中高4 位( D7 ~ D4) 決定
通道號,對於0 通道至10 通道,該4 位分別為0000、0001、⋯、1010 ,該4 位為其它數字時的功
能,用於檢測校正,本文不作具體介紹。低4 位決定輸出數據長度及格式, 其中D3、D2 決定
輸出數據長度, TLC2543 的輸出數據長度有8 位、12 位、16 位,但由於TLC2543 為12 位A/ D
轉換晶元,經過分析可以看出,8 位、16 位輸出對TLC2543 的應用意義不大, 宜定在12 位輸
出, D3、D2 兩位為00 即可。D1 決定輸出數據是高位先送出,還是低位先送出,若為高位先送
出,該位為0 ,反之為1。D0 決定輸出數據是單極性(二進制) 還是雙極性(2 的補碼) ,若為單
極性,該位為0 ,反之為1。
舉例說明:設採集第6 通道、輸出數據為12 位、高位先送出、輸出數據的格式為二進制,
則控制字為:0110 0000 ,用十六進製表示即為60 H,本文基於此格式說明轉換過程。
212 TLC2543 的內部寄存器
46 蘇州絲綢工學院學報 第5 期
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
從編程角度看, TLC2543 內部寄存器有輸入數據寄存器與輸出數據寄存器。輸入數據寄
存器存放從DATA IN PUT 端移入的控制字。輸出數據寄存器存放轉換好的數據, 以供從
DATA OUT 端移出。
213 轉轉過程
上電後,片選CS 必須從高到低,才能開始一次工作周期,此時EOC 為高,輸入數據寄存
器被置為0 ,輸出數據寄存器的內容是隨機的。
開始時,片選CS 為高, I/ O CLOCK、DATA IN PUT 被禁止, DATA OUT 呈高阻狀態, EOC
為高。使CS 變低, I/ O CLOCK、DATA IN PUT 使能, DATA OUT 脫離高阻狀態。12 個時鍾信號
從I/ O CLOCK端依次加入,隨著時鍾信號的加入,控制字從DATA INPUT一位一位地在時鍾
信號的上升沿時被送入TLC2543 (高位先送入) , 同時上一周期轉換的A/ D 數據, 即輸出數
據寄存器中的數據從DATA OUT 一位一位地移出。TLC2543 收到第4 個時鍾信號後,通道號
也已收到,因此,此時TLC2543 開始對選定通道的模擬量進行采樣,並保持到第12 個時鍾的
下降沿。在第12 個時鍾下降沿, EOC 變低,開始對本次采樣的模擬量進行A/ D 轉換,轉換時
間約需10μs ,轉轉完成EOC 變高,轉轉的數據在輸出數據寄存器中, 待下一個工作周期輸
出。此後,可以進行新的工作周期。
3 TLC2543 與51 系列單片機介面
目前使用的51 系列單片機沒有S PI 或相同的介面能力,為了與TLC2543 介面,可以根據
上節所給出的編程要點, 利用軟體合成S PI 操作, 完成A/ D 數據的採集。圖2 給出了
TLC2543 與51 系列介面的一種方式。圖中TLC2543 與單片機之間只用4 根線,轉換結束EOF
未接入單片機,這是基於二個工作周期之間的單片機指令一般大於10μs ,轉換已經完成,不
必判斷EOF ,也可以通過試驗或計算指令執行時間確定轉換是否結束, 這樣可以省去一根
接線。下一節將根據此電路進行A/ D 採集程序的設計。需要說明的是, 圖2 僅給出原理圖,
為了使電路簡捷,有關電源、參考電壓、去耦等電路未畫出。
圖2 TLC2543 與51 系列單片機的介面電路
4 數據採集程序設計
根據TLC2543 的工作原理及圖2 電路,可以進行A/ D 採集程序的設計。設TLC2543 工作
於輸出數據為12 位、高位先送出、輸出數據為二進制的格式,這樣控制字的高4 位為通道號,
低4 位均為0。以下是採集一個通道的TLC2543A/ D 轉換子程序,其中給出了詳細的注釋。
第19 卷 王宜懷:12 位A/ D 轉換器TLC2543 與51 系列單片機介面技術47
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
以下是利用上述子程度採集0 通道數據放入內存21 H、22 H,採集1 通道數據放入內存
23 H、24 H 的主程序。注意其中調用了三次子程序,而第一次調用取出的數據是隨機數。
48 蘇州絲綢工學院學報 第5 期
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
5 應用TLC2543 應注意的幾個問題
在TLC2543 的應用中,以下幾個問題值得注意:
511 硬體設計中, EOC 引腳是否連接問題。EOC 引腳由高變低是在第12 個時鍾的下降沿,
它標志TLC2543 開始對本次采樣的模擬量進行A/ D 轉換,轉換完成後EOC 變高,標志轉換
結束。從理論上講,應該通過EOC ,判斷是否可以進行新的周期以便從TLC2543 中取出已轉
換的A/ D 數據,但是,正如前面介紹, TLC2543 的一次A/ D 轉換時間約為10μs ,而一般情況
下,一個工作周期後,單片機的後續處理工作已大於10μs ,因此,除非特別需要,一般可以不
接EOC。
512 一個輸入輸出工作周期為12 個時鍾信號, 隨這12 個時鍾信號的進入, TLC2543 的
DATA OUT 引腳送出的12 位數,為上一個工作周期的A/ D 轉換數據,而這一數據是何通道
的採集量,取決於上一工作周期從DATA INPUT 引腳送入TLC2543 的控制字的前四位。那麼
對於系統上電後第一個工作周期,從DATA OUT 取出的數據是沒有意義的。
513 控制字的低4 位決定輸出數據長度及格式,初始設定後,一般不要在運行過程中改變,
以免數據混亂。而在工作周期循環,若累加器A 中數據沒有處理好,容易把非法的控制字帶
入TLC2543 ,引起輸出數據格式錯誤,這一點,應予特別注意。
514 CS 端控制著TLC2543 的轉換初始化與輸入輸出。本文中CS 端控制轉換過程, CS 在輸
入輸出數據過程必須保持為低,即在輸入12 個時鍾信號期間CS 必須保持0。之後, CS 端被
置高,以便使CS 由高到低的變化,而產生下一工作周期。CS 端被置高時,與TLC2543 相聯的
其它三線,呈高阻狀態,可為其它線路使用,硬體設計時,可設計為共享線路,軟體編程時,根
據CS 情況決定誰使用這些線路。
第19 卷 王宜懷:12 位A/ D 轉換器TLC2543 與51 系列單片機介面技術49
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
515 對於轉換結果用二進制方式輸出,當輸入電壓等於VREF+ 時,轉換結果為12 個「1」,即
(1111 1111 1111) ,當輸入電壓等於VREF- 時,轉換結果為12 個「0」,即(0000 0000 0000) ,當輸
入電壓等於( VREF+ + VREF- ) / 2 時, 轉換結果為(1000 0000 0000) , 供校正參考。12 位採集數
據,對於8 位單片機,分放在兩個內存地址中, 若是向微機系統傳送, 可以直接發送, 由微機
系統計算。若是自身使用,計算合成後,仍需放兩個地址。
參考文獻
[1 ] Texas Instruments Incorporated. TLC2543 Application Report . http :/ / www ,ti . com,1999
[2 ] 何立民主編1 單片機應用技術選編(6) [M]1 北京:北京航空航天大學出版社,1998 :283~286
THE INTERFACE TECHNOLOGY ABOUT 12 - BIT
A/ D CONVERTERS TLC2543 AND 51 - SINGLECHIP
WANG Yihuai
( College of Technology of Suzhou University , Suzhou ,215006)
Abstract :The TLC2543 are 12 - bit analog - to - digital converters and have 11 analog input chan2
nels . In this paper its structure and progamming outlin is described. The interface method about the
TLC2543 and 51 - singlechip is discussed. The Serial Peripheral Interface (SPI) is performed by soft2
ware.A interface circuitry about TLC2543 with 51 - singlechip and A/ D program is presented. Some
valuable suggestions and references for use of TLC2543 are put forward.
Key words :A/ D converter ;TLC2543 chip ;51 - Singlechip ; Interface technology
50 蘇州絲綢工學院學報 第5 期
&; 1995-2005 Tsinghua Tongfang Optical Disc Co., Ltd. All rights reserved.
2. 單片機C語言程序設計實訓100例的圖書目錄
第1章 PIC單片機C語言程序設計概述 1
1.1 PIC單片機簡介 2
1.2 MPLAB+C語言程序開發環境安裝及應用 6
1.3 PICC/PICC18/MCC18程序設計基礎 8
1.4 PIC單片機內存結構 17
1.5 PIC單片機配置位 19
1.6 基本的I/O埠編程 21
1.7 中斷服務程序設計 23
1.8 PIC單片機外設相關寄存器 24
1.9 C語言程序設計在PIC單片機應用系統開發中的優勢 35
第2章 PROTEUS操作基礎 36
2.1 PROTEUS操作界面簡介 36
2.2 模擬電路原理圖設計 37
2.3 元件選擇 40
2.4 模擬運行 44
2.5 MPLAB IDE與PROTEUS的聯合調試 44
2.6 PROTEUS在PIC單片機應用系統開發中的優勢 47
第3章 基礎程序設計 48
3.1 閃爍的LED 48
3.2 用雙重循環控制LED左右來回滾動顯示 50
3.3 多花樣流水燈 51
3.4 LED模擬交通燈 53
3.5 單只數碼管循環顯示0~9 55
3.6 4隻數碼管滾動顯示單個數字 57
3.7 8隻數碼管掃描顯示多個不同字元 59
3.8 K1~K5控制兩位數碼管的開關、加減與清零操作 61
3.9 數碼管顯示4×4鍵盤矩陣按鍵 63
3.10 數碼管顯示撥碼開關編碼 66
3.11 繼電器及雙向可控硅控制照明設備 68
3.12 INT中斷計數 70
3.13 RB埠電平變化中斷控制兩位數碼管開關與加減顯示 73
3.14 TIMER0控制單只LED閃爍 76
3.15 TIMER0控制流水燈 80
3.16 TIMER0控制數碼管掃描顯示 81
3.17 TIMER1控制交通指示燈 84
3.18 TIMER1與TIMER2控制十字路口秒計時顯示屏 88
3.19 用工作於同步計數方式的TMR1實現按鍵或脈沖計數 93
3.20 用定時器設計的門鈴 95
3.21 報警器與旋轉燈 98
3.22 用工作於捕獲方式的CCP1設計的頻率計 101
3.23 用工作於比較模式的CCP1控制音階播放 105
3.24 CCP1 PWM模式應用 108
3.25 模擬比較器測試 113
3.26 數碼管顯示兩路A/D轉換結果 117
3.27 EEPROM讀寫與數碼管顯示 121
3.28 睡眠模式及看門狗應用測試 125
3.29 單片機與PC雙向串口通信模擬 130
3.30 PIC單片機並行從動埠PSP讀寫測試 139
第4章 硬體應用 146
4.1 74HC138與74HC154解碼器應用 146
4.2 74HC595串入並出晶元應用 149
4.3 用74HC164驅動多隻數碼管顯示 152
4.4 數碼管BCD解碼驅動器7447與4511應用 155
4.5 8×8LED點陣屏顯示數字 157
4.6 8位數碼管段位復用串列驅動晶元MAX6951應用 160
4.7 串列共陰顯示驅動器MAX7219與7221應用 167
4.8 14段與16段數碼管串列驅動顯示 171
4.9 16鍵解碼晶元74C922應用 175
4.10 1602LCD字元液晶測試程序 178
4.11 1602液晶顯示DS1302實時時鍾 183
4.12 1602液晶工作於4位模式實時顯示當前時間 189
4.13 帶RAM內存的實時時鍾與日歷晶元PCF8583應用 194
4.14 2×20串列字元液晶演示 201
4.15 LGM12864液晶顯示程序 204
4.16 PG160128A液晶圖文演示 211
4.17 TG126410液晶串列模式顯示 227
4.18 HDG12864系列液晶演示 236
4.19 Nokia7110液晶菜單控製程序 243
4.20 8通道模擬開關74HC4051應用測試 252
4.21 用帶I2C介面的MCP23016擴展16位通用I/O埠 254
4.22 用帶SPI介面的MCP23S17擴展16位通用I/O埠 261
4.23 用I2C介面控制MAX6953驅動4片5×7點陣顯示器 266
4.24 用I2C介面控制MAX6955驅動16段數碼管顯示 272
4.25 用帶SPI介面的數/模轉換器MCP4921生成正弦波形 277
4.26 用帶SPI介面的數/模轉換器MAX515控制LED亮度循環變化 283
4.27 正反轉可控的直流電機 286
4.28 PWM控制MOSFET搭建的H橋電路驅動直流電機運行 288
4.29 正反轉可控的步進電機 293
4.30 用L297+L298控制與驅動步進電機 296
4.31 PC通過RS-485器件MAX487遠程式控制制單片機 304
4.32 I2C介面DS1621溫度感測器測試 308
4.33 SPI介面溫度感測器TC72應用測試 314
4.34 溫度感測器LM35全量程應用測試 320
4.35 K型熱電偶溫度計 324
4.36 用鉑電阻溫度感測器PT100設計的測溫系統 329
4.37 DS18B20溫度感測器測試 337
4.38 SHT75溫濕度感測器測試 347
4.39 1-Wire式可定址開關DS2405應用測試 353
4.40 光敏電阻應用測試 359
4.41 MPX4250壓力感測器測試 361
4.42 用I2C介面讀寫存儲器AT24C04 364
4.43 用SPI介面讀寫AT25F1024 372
4.44 PIC18 I2C介面存儲器及USART介面測試程序 380
4.45 PIC18 SPI介面存儲器測試程序 384
4.46 PIC18定時器及A/D轉換測試 389
4.47 用PIC18控制Microwire介面繼電器驅動器MAX4820 392
4.48 MMC存儲卡測試 395
4.49 ATA硬碟數據訪問 404
4.50 微芯VLS5573液晶顯示屏驅動器演示 412
第5章 綜合設計 425
5.1 用DS1302/DS18B20+MAX6951設計的多功能電子日歷牌 425
5.2 用PCF8583設計高模擬數碼管電子鍾 433
5.3 用4×20LCD與DS18B20設計的單匯流排多點溫度監測系統 439
5.4 用內置EEPROM與1602液晶設計的加密電子密碼鎖 453
5.5 用PIC單片機與1601LCD設計的計算器 459
5.6 電子秤模擬設計 468
5.7 數碼管顯示的GP2D12模擬測距警報器 473
5.8 GPS全球定位系統模擬 479
5.9 能接收串口信息的帶中英文硬字型檔的80×16點陣顯示屏 485
5.10 用M145026與M145027設計的無線收發系統 494
5.11 紅外遙控收發模擬 499
5.12 交流電壓檢測與數字顯示模擬 506
5.13 帶位置感應器的直流無刷電機PMW控制模擬 511
5.14 3端可調正穩壓器LM317應用測試 516
5.15 模擬射擊訓練游戲 520
5.16 帶觸摸屏的國際象棋游戲模擬 531
5.17 溫室監控系統模擬 543
5.18 PIC單片機MODBUS匯流排通信模擬 549
5.19 PIC單片機內置CAN匯流排通信模擬 563
5.20 基於PIC18+Microchip TCP/IP協議棧的HTTP伺服器應用 585
3. mpc89e515ae鍗曠墖鏈虹洿鎺ュ湪緗戜笂涔拌屼笉琛
琛屻傛槸鍙浠ュ湪緗戜笂涔扮殑mpc89e515ae鍗曠墖鏈虹殑錛屼絾闇瑕佹鏌ユ満鍣ㄦ崯鍧忓拰璋冩暣鐩稿簲鐨勫弬鏁版墠鑳界敤銆傚崟鐗囨満鏄涓縐嶉泦鎴愮數璺鑺鐗囷紝鍗曠墖寰鍨嬭$畻鏈烘満鐢ㄤ簬嫻嬫帶棰嗗煙錛岀畝縐板崟鐗囨満銆