www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]I2C總線(xiàn)是Philips公司推出的芯片間串行傳輸總線(xiàn)。

摘要:I2C總線(xiàn)是Philips公司推出的芯片間串行傳輸總線(xiàn)。目前,已有不少大電氣公司半導(dǎo)體廠(chǎng)商推出了不少帶有I2C總線(xiàn)接口的單片機(jī)。本文介紹一種利用Philips公司生產(chǎn)的P87LPC764單片機(jī)作為I2C總線(xiàn)控制器與I2C總線(xiàn)顯示器件SAA1064構(gòu)成的I2C顯示電路,并給出相應(yīng)的程序清單。

    關(guān)鍵詞:I2C總線(xiàn) P87LPC764單片機(jī) SAA1064 顯示電路

I2C總線(xiàn)是Philips公司推出的芯片間串行傳輸總線(xiàn)。它以串行數(shù)據(jù)線(xiàn)(SDA)和串行時(shí)鐘線(xiàn)(SCL)2根連線(xiàn)實(shí)現(xiàn)了完善的全雙工同步數(shù)據(jù)傳送,可以極方便地構(gòu)成多機(jī)系統(tǒng)和外圍器件擴(kuò)展系統(tǒng)。關(guān)于I2C總線(xiàn)的結(jié)構(gòu)和工作原理詳見(jiàn)參考文獻(xiàn)1。

一、P87LPC764單片機(jī)I2C總線(xiàn)接口

P87LPC764是Philips公司生產(chǎn)的一種小封裝、低成本、高性能的單片機(jī)(有關(guān)它的詳細(xì)介紹見(jiàn)參考文獻(xiàn)2)。它采用80C51加速處理器結(jié)構(gòu),片內(nèi)帶有支持I2C總線(xiàn)的硬件接口。當(dāng)激活I(lǐng)2C總線(xiàn)時(shí),P87LPC764端口1中的P1.2與P1.3分別作為SCL和SDA行使I2C總線(xiàn)功能。其I2C總線(xiàn)由3個(gè)特殊功能寄存器控制,這3個(gè)寄存器為I2C控制寄存器I2CON、I2C配置寄存器I2CFG和I2C數(shù)據(jù)寄存器I2DAT。各寄存器格式和位含義參見(jiàn)本刊第5期第36頁(yè)。

二、I2C總線(xiàn)顯示器件SAA1064

1.引腳功能

SAA1064是I2C總線(xiàn)系統(tǒng)中典型的LED驅(qū)動(dòng)控制器件,為雙極型集成電路,有2×8位輸出驅(qū)動(dòng)接口,可靜態(tài)驅(qū)動(dòng)2位或動(dòng)態(tài)驅(qū)動(dòng)4位8段LED顯示器。SAA1064的器件地址為0111,其引腳地址端ADR按輸入電平大小將A1A0編為4個(gè)不同的從地址,故在1個(gè)I2C總線(xiàn)系統(tǒng)中最多可以?huà)旖?片SAA1064,實(shí)現(xiàn)16位LED顯示。SAA1064為24腳雙列直插封裝,其引腳排列如圖1所示。

    ADR 尋址端,SAA1064通過(guò)對(duì)該腳輸入不同的模擬電壓,以確定其不同的地址。SAA1064規(guī)定輸入該腳的電壓值為VEE、(3/8)Vcc、(5/8)Vcc及Vcc時(shí),分別對(duì)應(yīng)十六地地址70H、72H、74H、76H(寫(xiě)操作)或71H、73H、75H、77H(讀操作)。

CEXT 時(shí)鐘振蕩器的外接電容,典型值為2.7nF。

P1~P8 段驅(qū)動(dòng)輸出端口1。P1為最低位,P8為最高位。

P9~P16 段驅(qū)動(dòng)輸出端口2。P9為最低位,P16為最高位。

MX1、MX2 動(dòng)態(tài)顯示方式時(shí)的公共極驅(qū)動(dòng)信號(hào)輸出端,用以切換兩對(duì)數(shù)碼管輪流顯示。

SDA、SCL I2C總線(xiàn)的數(shù)據(jù)線(xiàn)和時(shí)鐘線(xiàn)。

2.數(shù)據(jù)操作格式

SAA1064除了與LED驅(qū)動(dòng)控制相關(guān)的寫(xiě)操作外,還有能反映系統(tǒng)上電標(biāo)志的讀操作。SAA1064的讀操作狀態(tài)字節(jié)的讀出操作,其狀態(tài)字節(jié)僅最高位有意義,定義為PR。上電后PR為"1",在對(duì)其進(jìn)行讀狀態(tài)字節(jié)操作后清零。因此,PR=1表示從上次讀狀態(tài)后出現(xiàn)過(guò)掉電和加電。利用這一功能,在系統(tǒng)中可作為冷熱啟動(dòng)標(biāo)志。

(1)數(shù)據(jù)的輸入操作

SAA1064的顯示驅(qū)動(dòng)控制只需要I2C總線(xiàn)對(duì)其進(jìn)行寫(xiě)入操作,即按照子地址(SUBADR)寫(xiě)入控制命令字節(jié)及顯示器的段碼數(shù)據(jù)即可,其數(shù)據(jù)操作格式如下:

S SLAW A SUBADR A COM A
data1 A data2 A data3 A data4 A P

SLAW為SAA1064的地址。

SUBADR為SAA1064片內(nèi)地址單元首址。

COM為SAA1064的控制命令。

data1~data4為動(dòng)態(tài)顯示方式的4個(gè)LED顯示器的共陰極段選碼。

(2)子地址單元

SAA1064片內(nèi)有5個(gè)地址單元,占用了3位地址位(SC、SB、SA),分別用于裝入控制字節(jié)和4個(gè)顯示段碼,具體地址分配如表1所列。由于SAA1064寫(xiě)操作具有地址自動(dòng)加1功能,故在數(shù)據(jù)操作格式的寫(xiě)入順序中,SUBADR應(yīng)為00H。

0 0 0 0 SA SB SC 單元地址 功    能
0 0 0 0 0 0 0 00H 控制寄存器
0 0 1 01H 數(shù)字位1
0 1 0 02H 數(shù)字位2
0 1 1 03H 數(shù)字位3
1 0 0 04H 數(shù)字位4
1 0 1 05H 保留不用
1 1 0 06H 保留不用
1 1 1 07H 保留不用

(3)控制命令COM格式

SAA1064具有較強(qiáng)的控制功能,能實(shí)現(xiàn)亮度控制,顯示器測(cè)試,動(dòng)、靜態(tài)及位亮、暗顯示。這些控制命令集中設(shè)置在控制寄存器中??刂泼睿–OM)格式如下:

- C6 C5 C4 C3 C2 C1 C0

C0 動(dòng)態(tài)、靜態(tài)顯示選擇,C0=1動(dòng)態(tài)顯示。

C1 數(shù)碼管1、3亮滅選擇,C1=1選擇亮。

C2 數(shù)碼管2、4亮滅選擇,C2=1選擇亮。

C3 測(cè)試位,C3=1時(shí)所有段點(diǎn)亮,正常工作時(shí)該位為0。

C4、C5、C6 輸出電流控制位,為1時(shí)分別對(duì)應(yīng)3mA、6mA、12mA。皆為1時(shí)輸出電流最大為21mA。

三、顯示電路實(shí)例

圖2是P87LPC764與SAA1064的接口電路實(shí)例。P87LPC764單片機(jī)采用6MHz的內(nèi)部RC振蕩器,訪(fǎng)問(wèn)4片SAA1064,驅(qū)動(dòng)16只數(shù)碼管顯示,每片SAA1064的接線(xiàn)如圖2所示。

    該應(yīng)用電路是一個(gè)單主的I2C總線(xiàn)系統(tǒng),不會(huì)出現(xiàn)總線(xiàn)競(jìng)爭(zhēng)問(wèn)題,而且數(shù)據(jù)傳送操作只有主發(fā)送方式,因此,在編程過(guò)程中沒(méi)有檢測(cè)總線(xiàn)錯(cuò)誤。在數(shù)據(jù)發(fā)送過(guò)程中,每發(fā)送1個(gè)字節(jié),都檢測(cè)應(yīng)答信號(hào),如無(wú)應(yīng)答信號(hào),建立標(biāo)志位F0,程序重新開(kāi)始發(fā)送數(shù)據(jù)。

以下是該I2C總線(xiàn)顯示電路的程序清單,顯示緩沖區(qū)為30H到3FH單元。

START:MOV R0,#30H ;顯示緩沖區(qū)首地址

MOV R1,#17H ;SAA1064控制碼

MOV R2,#70H ;SAA1064(1)的地址

MOV R3,#04H ;4片SAA1064

LOOP:ACALL DISP

JB F0,START ;無(wú)應(yīng)答信號(hào)重新開(kāi)始

INC R2 ;

INC R2 ;

DJNZ R3,LOOP ;

以下是顯示子程序

DISP:CLR F0 ;清除無(wú)應(yīng)答標(biāo)志

MOV I2CFG,#30H ;請(qǐng)求成為I2C總線(xiàn)主機(jī)

JNB MASTER,$ ;等待成為I2C總線(xiàn)主機(jī)

MOV I2CON,#1CH ;清除起動(dòng)條件

MOV A,R2 ;取從設(shè)備地址

ACALL SEND ;發(fā)送從設(shè)備地址

JB F0,DISP2 ;無(wú)應(yīng)答信號(hào)轉(zhuǎn)移

MOV A,#0 ;SAA1064子地址

ACALL SEND ;發(fā)送子地址

JB F0,DISP2 ;無(wú)應(yīng)答信號(hào)轉(zhuǎn)移

MOV A,R1 ;取SAA1064控制碼

ACALL SEND ;發(fā)送控制碼

JB F0,DISP2 ;無(wú)應(yīng)答信號(hào)轉(zhuǎn)移

MOV R4,#04H ;四只數(shù)碼管

DISP1:MOV A,@R0 ;取字形代碼

ACALL SEND ;發(fā)送字形代碼

JB F0,DISP2 ;無(wú)應(yīng)答信號(hào)轉(zhuǎn)移

INC R0 ;修正顯示單元地址

DJNZ R4,DISP1 ;

DISP2:ACALL SSTP ;發(fā)送停止位

RET ;

;發(fā)送1個(gè)字節(jié)

SEND:MOV R4,#8H ;設(shè)置數(shù)據(jù)格式為8位

SENDB:MOV I2DAT,A ;發(fā)送數(shù)據(jù)位

RL A ;取下一個(gè)數(shù)據(jù)位

JNB DRDY,$ ;等待數(shù)據(jù)準(zhǔn)備好

DJNZ R4,SENDB ;

MOV I2CON,#0A0H ;轉(zhuǎn)換為接收模式

JNB ATN,$ ;等待應(yīng)答信號(hào)

JNB RDAT,SENDE ;是應(yīng)答位嗎?

SETB F0 ;建立無(wú)應(yīng)答信號(hào)標(biāo)志

SENDE:RET ;

;發(fā)送停止位

SSTP:CLR MASTRQ ;取消主機(jī)位置

MOV I2CON,#21H ;產(chǎn)生總線(xiàn)停止條件

JNB ATN,$ ;等待

MOV I2CON,#20H ;清除數(shù)據(jù)準(zhǔn)備好標(biāo)志

JNB ATN,$ ;等待發(fā)送停止條件

MOV I2C0N,#91H ;釋放I2C總線(xiàn)

CLR TIRUN ;停止定時(shí)器I的運(yùn)行

RET

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

8位單片機(jī)在嵌入式設(shè)計(jì)領(lǐng)域已經(jīng)成為半個(gè)多世紀(jì)以來(lái)的主流選擇。盡管嵌入式系統(tǒng)市場(chǎng)日益復(fù)雜,8位單片機(jī)依然不斷發(fā)展,積極應(yīng)對(duì)新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機(jī)系列,配備了先進(jìn)的獨(dú)立...

關(guān)鍵字: 單片機(jī) 嵌入式 CPU

在嵌入式系統(tǒng)開(kāi)發(fā)中,程序燒錄是連接軟件設(shè)計(jì)與硬件實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機(jī)燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對(duì)應(yīng)開(kāi)發(fā)調(diào)試、量產(chǎn)燒錄、遠(yuǎn)程升級(jí)等不同場(chǎng)景。...

關(guān)鍵字: 單片機(jī) ISP ICP IAP 嵌入式系統(tǒng)開(kāi)發(fā)

在嵌入式系統(tǒng)開(kāi)發(fā)中,看門(mén)狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門(mén)狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門(mén)狗 嵌入式系統(tǒng)

本文中,小編將對(duì)單片機(jī)予以介紹,如果你想對(duì)它的詳細(xì)情況有所認(rèn)識(shí),或者想要增進(jìn)對(duì)它的了解程度,不妨請(qǐng)看以下內(nèi)容哦。

關(guān)鍵字: 單片機(jī) 開(kāi)發(fā)板 Keil

隨著單片機(jī)系統(tǒng)越來(lái)越廣泛地應(yīng)用于消費(fèi)類(lèi)電子、醫(yī)療、工業(yè)自動(dòng)化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機(jī)系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問(wèn)題。

關(guān)鍵字: 單片機(jī) 電磁兼容

以下內(nèi)容中,小編將對(duì)單片機(jī)的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對(duì)單片機(jī)的了解,和小編一起來(lái)看看吧。

關(guān)鍵字: 單片機(jī) 復(fù)位電路

在這篇文章中,小編將為大家?guī)?lái)單片機(jī)的相關(guān)報(bào)道。如果你對(duì)本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 單片機(jī) 異常復(fù)位

今天,小編將在這篇文章中為大家?guī)?lái)單片機(jī)的有關(guān)報(bào)道,通過(guò)閱讀這篇文章,大家可以對(duì)它具備清晰的認(rèn)識(shí),主要內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 仿真器

單片機(jī)將是下述內(nèi)容的主要介紹對(duì)象,通過(guò)這篇文章,小編希望大家可以對(duì)它的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 中斷 boot

一直以來(lái),單片機(jī)都是大家的關(guān)注焦點(diǎn)之一。因此針對(duì)大家的興趣點(diǎn)所在,小編將為大家?guī)?lái)單片機(jī)的相關(guān)介紹,詳細(xì)內(nèi)容請(qǐng)看下文。

關(guān)鍵字: 單片機(jī) 數(shù)字信號(hào) 模擬信號(hào)
關(guān)閉