This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于TLC1514的应用问题

Other Parts Discussed in Thread: TLC1514

各位前辈好!

最近在用TLC1514作ADC应用。但是总是不得要领。感觉没有正常启动。

基本情况:C51作控制。PWDN经10K电阻上拉5V;FS和CSTART接5V;初始化数据是A800H,每次单信道操作。

读取来的CFR=101H。不是我输入的。

初始化程序(汇编)如下:

ADCINIT: ;TLC1514 初始化。高位先输入
MOV R1,#0A8H
MOV R2,#00H ;4BIT控制+12BIT初始化数据:A800H。
CLR C
MOV B,#10H ;16BIT
CLR P2.2 ;SCLK=0
NOP
CLR P2.6 ;CS=0
NOP
NOP
ADCINIT1:
MOV A,R2
RLC A
MOV R2,A
MOV A,R1
RLC A
MOV R1,A
MOV P2.1,C ;C→SDI/P2.1
SETB P2.2 ;SCLK=1
NOP
CLR P2.2 ;SCLK=0
DJNZ B,ADCINIT1
SETB P2.6 ;CS=1
RET

-----------------------------------------------

读取CFR程序:

ADCRDCFR: ;读ADC.CFR R1=HSB,R2=LSB,高4BIT是1001B读控制
;----------------------写信息, 4BIT
CLR P2.2 ;SCLK=0
MOV A,R1
CLR C
MOV B,#04H
CLR P2.6 ;CS=0
ADCRDCFR1:
RLC A
MOV P2.1,C ;C→SDI/P2.1
SETB P2.2 ;SCLK=1
NOP
CLR P2.2 ;SCLK=0
DJNZ B,ADCRDCFR1
;----------------------读CFR
CLR C
MOV R1,#00H
MOV R2,#00H
MOV B,#0CH ;12BIT
ADCRDCFR2:
SETB P2.2 ;SCLK=1
CLR P2.2 ;SCLK=0
MOV C,P2.0 ;SDO/P2.0→C
MOV A,R2
RLC A
MOV R2,A
MOV A,R1
RLC A
MOV R1,A
DJNZ B,ADCRDCFR2
MOV A,R1
ANL A,#0FH
MOV R1,A
RET

-----------------------

请高人看看有什么问题?

谢谢!

如果高人有范例程序请留言或邮件给我。jljhma2000@163.com