1 HT9200A芯片介紹
HT9200A是串行式DTMF電路,具有很好的溫度適應(yīng)性,其工作溫度范圍為-20℃~+70℃,它采用8腳DIP或SOP封裝形式,其管腳排列昭圖1所示。各引腳的功能說明如下:
●CE:片選信號輸入端,低電平有效;
●X1、X2:3.579545MHz晶振接入端;
●VDD、VSS:電源正負(fù)輸入端,正常工作電壓范圍為2~5.5V,工作電流為2mA左右;
●CLK:串行數(shù)據(jù)的同步信號輸入端,fCLK為100kHz左右;
●DATA:串行數(shù)據(jù)輸入端;
●DTMF:DTMF信號輸出端。
圖2所示為HT9200A的輸入輸出時(shí)序圖當(dāng)CE為低電平時(shí),選中芯片并在CLK的下降沿將串行口DATA上的數(shù)據(jù)鎖存。每個(gè)數(shù)據(jù)為5位二進(jìn)制碼,在CLK下降沿到來時(shí),選鎖存低位,再鎖存高位。當(dāng)5位均為1時(shí),結(jié)束DTMF的發(fā)送。
HT9200A的輸入與輸出頻率由5位(D4~D0)不同的位碼組合決定,表1所列為HT9200的輸入位碼組合與輸出頻率的對應(yīng)關(guān)系。
表1 HT9200A輸入組合與輸出頻率
D4
| D3
| D2
| D1
| D0
| 符號
| 輸出頻率(HZ)
|
0
| 0
| 0
| 0
| 0
| 0
| 941+1633
|
0
| 0
| 0
| 0
| 1
| 1
| 697+1209
|
0
| 0
| 0
| 1
| 0
| 2
| 697+1336
|
0
| 0
| 0
| 1
| 1
| 3
| 697+1477
|
0
| 0
| 1
| 0
| 0
| 4
| 770+1209
|
0
| 0
| 1
| 0
| 1
| 5
| 770+1336
|
0
| 0
| 1
| 1
| 0
| 6
| 770+1477
|
0
| 0
| 1
| 1
| 1
| 7
| 852+1209
|
0
| 1
| 0
| 0
| 0
| 8
| 852+1336
|
0
| 1
| 0
| 0
| 1
| 9
| 852+1477
|
0
| 1
| 0
| 1
| 0
| 0
| 941+1336
|
0
| 1
| 0
| 1
| 1
| *
| 941+1209
|
0
| 1
| 1
| 0
| 0
| #
| 941+1477
|
0
| 1
| 1
| 0
| 1
| A
| 697+1633
|
0
| 1
| 1
| 1
| 0
| B
| 770+1633
|
0
| 1
| 1
| 1
| 1
| C
| 852+1633
|
1
| 1
| 1
| 1
| 1
| DTMF結(jié)束
| -
|
HT9200A主要用于分布式電話網(wǎng)絡(luò)測控系統(tǒng),它與89C51微控制器的接口電路如圖3所示。
在圖3中,89C51單片機(jī)的P1.0用于產(chǎn)生串行同步信號,P1.1用于輸出串行數(shù)據(jù),由P2.7產(chǎn)生低電平的片選信號。
MSM7512B為嵌入式調(diào)制解調(diào)專用電路[1],它采用CCITTV.23標(biāo)準(zhǔn),具有1200bps半雙工或1200bps接收/75bps發(fā)送兩種通訊方式。圖中,由單片機(jī)控制HT9200A并產(chǎn)生DTMF信號,以供MSM7512B的EAI輸入端使用,經(jīng)MSM7512B內(nèi)部放大器處理后,再由MSM7512B的AO腳輸出。在主叫機(jī)與被叫分機(jī)通過電信程控交換機(jī)建立聯(lián)接后,MSM7512B就可在89C51單片機(jī)控制下進(jìn)行數(shù)據(jù)收發(fā)工作。
可以看出,HT9200A主要起著拔號聯(lián)接的作用,以使主叫機(jī)與被叫分機(jī)建立聯(lián)系。
3 編程
根據(jù)圖3所示電路,現(xiàn)給出AT89C51與HT9200A進(jìn)行接口控制的軟件編程
:
…
MOV R1,#30H
TEL:MOV A,@R1 ;發(fā)8位電話號碼
TCALL DTMF
INC R1
CJNE R1,#38H,TEL
…
DTMF:MOV R0,#0
LA: SETB P1.0 ;準(zhǔn)備接收
CLR C
RRC A
MOV P1.1,C ;送數(shù)據(jù)到P1.1口
LCALL D50US
CLR P1.0 ;鎖存
LCALL D50US
INCR0
CJNE R0,#5,LA
RET
D50US:MOV R7,#10
DD1:NOP
NOP
DJNZ R7,DD1
RET
工作時(shí),首先從89C51內(nèi)部RAM的30H~37H單元取出被叫方的8位電話號碼,然后調(diào)OTMF子程序并移位到P1.1口,最后通過P1.0下降沿鎖存。由于HT9200A的CLK頻率范圍為100kHz~500kHz,因此,在發(fā)送過程中,需調(diào)用50μs延時(shí)子程序以使fCLK處在100kHz左右。