POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 4729|回复: 14
打印 上一主题 下一主题

打磨T200B,解决默认断电开机不记忆音量,不影响音质

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-15 21:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 mgldjp 于 2010-1-19 22:02 编辑 : }. R; T  }1 A1 C9 N
3 U1 R* j: x+ S+ D, I
T200B关电源后开机不记忆音量,开机后总是一个很小的音量,用起来很不方便。我对t200b的音量控制电路软件、硬件进行了研究,修改了控制软件,实现了开机记忆音量功能。
' B, b: B% ^% a0 b. C' y& Y首先说说我发现T200B软件的一些问题:
6 R* _, k5 T  W( T+ V6 M: H6 z1.开机不记忆上次关机音量,这是最大的问题。
3 B+ s; E, _0 m+ E, ~2.开机没有对音量调整芯片AT89C2051。CS3310规格书明确要求上电开机mute脚要拉低,以实现CS3310内部补偿校正,T200B软件没有做这个工作。
0 K/ e$ t+ {  r6 X" e$ |3.音量设置有偏差,也就是即使每次设置同样的音量,音量大小会有三四个dB的误差,这是我通过示波器观察单片机设置CS3310的波形时发现的,这是软件算法不准确造成的。不过听觉一般感觉不到。9 Z7 ~' g# c# R# p
4。禁音时音箱灯没有禁音警示。7 u" S8 `* E  V6 r* l+ n5 e

+ @- b0 O! s7 N- D: O. ?4 V由T200B音量控制电路图可见,实现音量记忆其实是很容易实现的,因为电路中有24C02,24C02是个EEPROM,断电记忆数据的。可以把音量信息存在24C02中,开机时再读出来。AT89C2051是个阉割版的51单片机,用来控制CS3310,遥控解码,步进电位器控制等功能,软件也就在这个芯片里面。我修改了AT89C2051的软件,在以下方面进行了优化:( {; r+ Z7 A; J$ N( J; J% L  u; k# X  R
1。记忆音量开机。开机时读取24C02中存储的上次关机音量数据,并按上次关机时的音量设置音箱。
- v0 k. z5 w+ K7 A2.开机CS3310内部补偿校正,也就是使MUTE脚拉低2.5ms
% }" Z5 Q, h# O- c/ c3.改进音量控制算法,实现每次都精确控制。8 O1 Z1 B1 L$ i+ q6 Q, t
4禁音时指示灯变为红色,提示为禁音状态。; }# ~8 `  a4 q+ L
5。渐进式启动,保护扬声器。由于记忆音量,可能开机音量会很大,所以开机时单片机控制CS3310音量渐增到记忆的音量,不是一步到位,这个过程为1S.如果记忆音量为63则以40音量启动。. O0 [5 m) C5 k- h: `3 `
1 O9 V6 q& L6 T  G) R
本修改不需要该硬件。附图为T200B中的AT89C2051照片,它是有插座的,可以随便拔下来,烧写新软件就可以了。如果要保留以前的软件,直接重新买一块AT89C2051烧写就可以了。要用回老软件就直接换回原来的AT89C2051。由于t200b上没有封条,拆了惠威也不知道,所以不影响质保。本人出售修改好的单片机芯片,qq150352134淘宝连接:# J) [& K8 Q* a0 ?. V
http://item.taobao.com/auction/item_detail.jhtml?x_id=0db1&item_id=4e3e5a99867fa22202d510e2ead65442
- E. g6 {9 ?1 ^1 @$ A' @7 o: R/ h$ q. M( {, C3 Q& E2 q/ r

- M* s+ g7 J4 G! n$ }
7 D% g# x5 h! c- {$ K; N  a  G1 M

( Q; |7 c( m8 D& T8 t( _$ s
: p7 u$ o' o0 u. c( l下面是汇编程序:  
- q( o/ O1 `' K+ f1 tSDA BIT P1.6: M* v0 v# g8 A6 A
          SCL BIT P1.7% H! A. X+ _/ D6 B% L8 M" ^
          ORG 0000H
5 V' ]- P$ i8 _0 P/ }          JMP START
& {& T2 K4 _5 H    ORG 000BH2 Y9 X+ a) w7 L$ q; }6 }$ {
        JMP INTT0: u1 c- A( _+ k, y- n5 E; \
  
/ u, X7 _1 v9 L) |            ORG 001BH
& a4 a7 V+ u4 m            SETB P1.5: m1 L+ D% z% F1 l4 ^' e
    JMP INTR
* q2 C' I0 w8 U) hSTART:      CLR P3.7, q: X# Y5 W  J7 D& J; p! F
            CLR P1.4" t. H  b6 F1 a$ l
            CLR P1.3% A* b# V5 r, t8 |% x1 d
            MOV SP,#60H
! T6 P) L7 H& K7 Q$ N0 g    CLR P1.5) U% H; e& P4 i8 g3 K6 t9 |$ @# c
    MOV R6,#50
( X4 Z1 B0 N9 g) e    CALL DELLAY
8 _- ~8 C$ {2 ^  [# F! d            SETB P1.5
+ J0 C1 j2 L! w6 [8 w6 C& p8 y: r    CALL READIIC
# \) K# ^+ J4 B' V1 M    MOV 50H,A
  T, ~+ e" _5 G) y+ F8 a    SUBB A,#1898 G0 R. G8 x# d
    JC NORMAL
5 x& V1 r3 H  W+ U& R$ L: a& [! v. V    MOV A,#120" k9 I% ?0 `5 F" @, J
    MOV 50H,A
5 G. @& V, p! D7 D8 sNORMAL:  MOV A,50H
  w% S$ M- t, y-----------------------------------
4 R9 n. h2 P9 K! B7 O# `5 l* x/ A渐进式启动软件,保密" I# E, L6 p8 b4 s
-------------CALL SENDCS5 e* I- I0 F5 S# X- P+ j
    MOV TMOD,#61H) V9 s& K1 m* C
    MOV TH1,#0FFH
# y. M- {6 ?/ [, [* I& k    MOV TL1,#0FFH$ x2 u* n; r3 G) P. y% c) R
    SETB ET1
. W- x0 }* L0 r, u- A    SETB ET0
& n4 L: @6 L& V& u9 h, n% T8 a: K    SETB EA3 \' ^5 r6 y& v1 o6 S. {: g0 T9 f" O/ }
    SETB TR1  ~( u% ]/ s% ?5 |; e) ~
L7:         JB P1.1,$) b) y. R% J1 _& _7 u! ?
            CALL RC( ]& l* C/ V. g+ B  u, f* \
    JZ L78 _* P+ k; Y/ W* N- [( v  ]4 s
        MOV 50H,A
' K9 p; {7 W" p            CALL SENDCS
/ U( p1 c; z; h& F4 s           SETB P3.7
' T# U0 R3 q2 r; ]2 Z. R           CLR P1.0
1 U) S, i8 j2 w* i! r( ~           MOV R1,#35 H) G3 \, [" A' T' Z( z
     MOV R2,#3
# p, o% w6 c: K# v% {           MOV TH0,#00H
4 n% @' K% V. \4 \# l$ w           MOV TL0,#00H. S3 U9 |1 J! c2 q  a% _: b
           SETB TR0
* b+ A) q- j  [     JMP L7
) V! R1 C0 S+ N
& ?4 P% n' g3 b! z2 uINTT0:     DJNZ R1,GOON. Z5 K- i4 {7 S8 e! M
           CPL P1.0
$ U& P% k: O/ k- K" J     MOV R1,#3
% {; L$ h7 I5 F. }( n: i( o     DJNZ R2,GOON
" `" T! A. o  Y$ F! \8 K     CLR TR0
3 D3 {  w  @- ^# E# |            JNB P1.5,MU
8 H' E) ?& E3 a1 O: r    CLR P3.7
+ w5 }. A* N. V    SETB P1.0* q, u  l* A+ h/ o* u# s
    PUSH ACC! ~' b& [- u) L
    MOV A,50H3 R* m, y' I4 i5 N3 e3 b% r( k  i
            CALL WRITEIIC
/ r6 r7 M4 j7 H    POP ACC( Q* v1 Y. U* b; N
    RETI
6 r( T3 Q5 d- Z1 UMU:         CLR P1.0     ;MUTE红灯亮
2 ^6 ]2 k6 ]5 E. O0 r$ l    SETB P3.7
5 i( \4 q5 B1 L    PUSH ACC# C% p4 v: l: @8 L
            MOV A,50H
& h1 Z1 v. h, \% Z  Z) B' S* r4 _            CALL WRITEIIC& N5 @  X  H" B  b
    POP ACC
, q! ?1 U$ q9 U& oGOON:   RETI
! `2 Q# A  }6 T      / `0 I9 j% |& p* n2 L* S4 P# Q  H9 L
INTR:   JB P3.4,DEVOL! J- Z( {5 h( M% {
            MOV A,50H" k1 H8 }  K0 b
    CJNE A,#10111101B,ADDVOL
( e1 i4 B: M% X4 h- ^0 ~9 M            JMP RETIINTR1 l2 F- d2 `( r" C9 X
ADDVOL:     CJNE A,#00000001B,NO1
2 _: \. {. [, I! ^& |: J            MOV A,#00000011B4 J7 P8 G/ {% q1 Y$ ^
    MOV 50H,A
$ k! V2 J2 p9 X    CALL SENDCS5 [6 @5 |* l: d  R& w
    JMP RETIINTR
: z( x, L* `0 RNO1:        INC A3 U  |+ c2 ]% e
            INC A% z8 _8 q* v* m1 _. D* A
        INC A
# d' a+ `$ W& I3 \    MOV 50H,A( Y$ I8 B  k7 M' e$ P0 Z
    CALL SENDCS
/ r+ o3 u% d* `" K# M& i    JMP RETIINTR
4 t  ^& f# g% v1 I/ d( W& lDEVOL:      MOV A,50H8 u2 L. B- W3 P9 \
            CJNE A,#00000001B,DECRVOL
" R4 |# Q) p, V5 Z. |    JMP RETIINTR+ Y( ^" d5 B0 t, X; h- i8 j/ v( w
DECRVOL:    CJNE A,#00000011B,NO3$ n) [* D1 L8 A" o9 C7 r
            MOV A,#00000001B5 J$ v$ F8 c& ?. D: Q
    MOV 50H,A
) _" ?+ q  G; m: l3 I) E8 I    CALL SENDCS
% q. o) N2 B) w! _' h$ O    JMP RETIINTR
! A" L( b9 K% o( c! L, UNO3:        DEC A0 K4 h9 D' G. U9 L
            DEC A
5 \! B, n/ G2 o; B- j4 _            DEC A( g0 Q2 P* C* w+ }- y7 q) b4 |
    MOV 50H,A
, n; J5 z, a( L/ N# g. |( O    CALL SENDCS) k" y7 y2 \2 @5 }7 p7 h; r
RETIINTR: SETB P3.79 U* X7 }0 M8 p  Q+ I- e8 E. }. U% p
           CLR P1.0) D7 }0 ^) x" d2 H; H
           MOV R1,#3+ t4 s* Y" s. C, `9 q$ L
     MOV R2,#3
7 D6 M. e0 [% `: C           MOV TH0,#00H8 B9 W, X; G2 d% |! f' r( H
           MOV TL0,#00H" f0 q1 O* }" X1 \( r  q
           SETB TR0( z  Y/ k- H3 ^) v" M5 M
    RETI  X  s+ T0 X/ |, i8 L( b" f
WRITEIIC:    MOV A,#10100000B           ;将50H单元的数据存EEPROM
' l* \  q- U' B4 b             CALL STARTIIC& R+ Q0 V/ z- g6 ?7 v& P" q
             CALL SENDIIC
3 R2 e+ X2 O& c5 g$ F             SETB SCL
$ M! U5 |3 p  @6 z6 M( [/ B. I             MOV C,SDA
" h& ]3 ^( J, J9 h             JC WRITEIIC% O# j+ p3 O1 Y1 _9 Z  n! m, K
             CLR SCL1 P2 A) `: b4 m* v9 A
             MOV A,#11000000B           ;存在11000000B单元
: u9 I3 }" }( Q             CALL SENDIIC
3 r2 ~/ H! q7 J% u" @) g             SETB SCL2 m% w! G* \( d. ~' p; d
             MOV C,SDA9 K2 z, v2 }) @
             JC WRITEIIC
0 j$ F# R: X9 B             CLR SCL9 F! `" l; l- {
             MOV A,50H
9 y& S& l; I- q1 r8 _, t             CALL SENDIIC& i  h( m" {( u) \& p
             SETB SCL
7 X9 T  D+ y$ E& ?( x' h             MOV C,SDA
( i. J2 A  T: [: R3 {             JC WRITEIIC
2 f1 d8 x- Q& a4 q     CLR SCL
( v9 x) s( y. N$ D0 E# \, K     CALL ENDIIC; `  B* W8 l+ B, S5 B" t8 V
             RET" m) |$ e1 {& V) {
READIIC:     MOV A,#10100000B          ;读数据到A
5 s" l7 v1 @/ U2 j             CALL STARTIIC* }4 K( y/ ^8 a4 e2 U- m7 \/ T( ?
     CALL SENDIIC
3 J* C$ Y' n  K! [% @% l* l     SETB SCL! U* t4 m2 X8 m( Z, R; Z* S$ @
     MOV C,SDA
: @6 V0 [; ~: Y  H! e     JC READIIC
) x  ^7 Z' b3 k7 g3 P% n     CLR SCL! Z- u. G. c: ^" c: Y+ F
             MOV A,#11000000B           ;读11000000B单元" O, ~1 \8 B7 X; X( T$ \
             CALL SENDIIC" r& S- S% D% J  V! T
             SETB SCL
% J7 |" Y- N7 y% V             MOV C,SDA
" \4 }1 ~+ ?2 P$ j. a$ i" E4 j! M1 T" w             JC READIIC
4 b( @) i7 |' a) k. h0 _             CLR SCL
3 y. e) @6 O' N, L; q% \     CALL STARTIIC6 [! \5 C: T! C
             MOV A,#10100001B
) L! B6 X  j) N5 X2 ^: ~! [% `             CALL SENDIIC
  U$ x! D2 m& y& v8 ]. N% k& L     SETB SCL
0 b) @( T2 l: c- m1 S1 l& U3 [     MOV C,SDA! o: @5 t5 K) F; v( f9 `
     JC READIIC& s3 |  }* T, c7 E5 P
     MOV R7,#8
3 H& r  w) j* `+ q7 Y1 s. sREADIICBIT:  CLR SCL( u2 V" j2 m' g; M8 f/ d$ V" b& R
     NOP
- _2 }0 L+ a* H# b5 z             SETB SCL* a+ F$ z9 [1 u+ t1 E% i5 k; F
     MOV C,SDA5 W, q* D! S# m, h# I$ G( ]
             RLC A            & ]" b# B6 N+ U$ L* `, s( `( _
     DJNZ R7,READIICBIT, \; `9 o5 C. P8 _; w
             CLR SCL
! i- \1 T4 @- M' i( I: ?4 U     NOP
* t" H$ D# X6 A8 `6 x) n/ W% H5 Y3 w! W     SETB SCL
) @! l2 Z: ~9 v7 M9 S" D     NOP
; i. m; H; e" |; O) y& g# ~     CLR SCL+ D' `9 f' C) a
     CALL ENDIIC
6 h; U! w' [/ `     RET8 M: G( F9 Y% _3 t5 H( t
STARTIIC:    SETB SDA' l! S- c/ E7 `* w/ n9 \
             SETB SCL
# @2 x4 _0 o1 N1 }5 ^8 Y             NOP4 }4 ^- G6 i7 U- f+ y
     CLR SDA
9 T& ]. t6 @3 i             NOP7 V! a. o/ P6 G
             CLR SCL
' D8 B. x, Z/ L% P% j) ]             RET. x9 r5 f) F$ V8 G- |, K
ENDIIC:     CLR SDA. J) `9 p0 J: h* s: X7 R- b
            NOP( }% p$ j- w  J* \; b7 k( E2 T
            SETB SCL% _5 C3 E7 t- D
            NOP; D9 J2 Z/ J/ m
            SETB SDA
2 `# H! B1 ^/ K$ b" S, L* A  |6 Q            RET3 L: }  w  m" `' F3 W$ J( }
SENDIIC:    MOV R7,#8            ;发送A的内容3 o5 v4 e# b4 ]9 N
LOOPIIC:    RLC A5 a& T: m- e+ J; G( j" ^
            MOV SDA,C
( E1 ?* G4 F% f9 L6 P9 r$ z, V! |            SETB SCL& Z5 {2 g; G7 C8 i8 N+ j* `# E0 ~
            NOP* h2 }. q/ t4 I1 r
            CLR SCL
( K5 ?( E4 z7 v) x+ \6 x* Y& d2 B# U            DJNZ R7,LOOPIIC
/ ~! v" R2 c* P  v3 Y6 I# d, k    SETB SDA
8 }9 O! h& j6 k/ A9 N            RET
2 [& g7 s  A: _1 S! P+ @RC :        MOV R0,#30H              ;遥控接收子程序% c: D- b1 y, h  u5 T' }1 @
            MOV R5,#9
/ l/ ~5 b& S8 l# S$ bL1:         MOV R6,#16
7 R0 k( {  C6 I9 N. @7 J" h# x            CALL DELLAY
5 r* ~/ ^; G1 \" v+ F: B            JB P1.1,OUT
. g* j$ o* ^# w9 |/ r            DJNZ R5,L1
$ {% s  A5 o* w. p6 z- f5 F           JNB P1.1,$' A7 h$ _- U4 S6 g4 Y' p: K
            MOV R5,#5. J8 [# E) m% L- g; u
L2:         MOV R6,#150 I7 e3 t; u, ]; T8 W: H
            CALL DELLAY
6 n0 J3 N* m' |3 x' K            JNB P1.1,OUT- }3 j8 s6 s9 @; C: Z' _' T+ w7 H5 o
            DJNZ R5,L2
! w' W3 j+ X4 o6 Z* |" b            MOV R6,#11; ?3 o+ c$ u+ e2 V# L/ v- ?
            CALL DELLAY            
6 s- ~* c+ @- b/ }+ U5 z+ r            MOV R3,#8
, M( e0 J# y; Q+ ^. MREADBYTE:   MOV R4,#8, |* B7 L9 X( m
READBIT:    JNB P1.1,$
8 a. |- F$ f3 H8 J1 v& H# |, L            MOV R6,#17; U. m3 w& ]. I# h, K5 O* D
            CALL DELLAY
+ G2 w( w! t. ^! l. {- f            MOV C,P1.1
9 L# |$ O: N3 j) a/ \% c            JNC ZERO
. u6 p2 c! N" [0 E/ R) H8 }1 ?( b. `            MOV R6,#22
; j/ a$ P9 j0 E% w            CALL DELLAY
( M, v( d( D1 c2 ?  PZERO:       RRC A1 b* z7 F3 {6 X4 U; l6 J. Y
            DJNZ R4,READBIT
4 p7 {2 e4 T5 m. k2 d" x            MOV @R0,A
6 _% _. B, U- M3 w            INC R07 L& u- ]4 j$ a. K
            DJNZ R3,READBYTE
; T0 w" D, J, S% D/ i2 G* l    MOV R6,509 F5 S" {2 T, \, N6 a
    CALL DELLAY ' ^7 T* a# I4 d, Z, ~( {
---------------------------------------------           
8 E4 V  j/ @! U& F---保密部分, Y* Y& V- D* ^1 Y: C4 N( O
----------------------------------------------( g% @: l$ L% ?$ ^- @6 C- {
     RET
' s# J. M  L, Q% Z; R- u        / f! Z- c) k, V' `! o: {' B# I( G
DELLAY:     MOV R7,#25            
2 ~2 R$ w3 u6 k4 @/ V/ L            DJNZ R7,$
) M" f  n+ T" \# |7 s8 a            DJNZ R6,DELLAY  f) }9 G. L: ~+ W2 ^/ P9 c
            RET
7 n* K. A1 S, o" uSENDCS:      CLR P1.2           ;将A的内容发送到CS3310           
) Z" w% Y+ t) {! |6 w             MOV R5,#16
) O! s4 F4 V0 o9 z1 J2 L; W5 u4 XLOOPCS:      MOV C,ACC.7: a5 L( o7 U7 C) t. n  u
             MOV P1.3,C
0 Q1 k5 _; m3 y$ L6 c             NOP
6 W6 v6 |0 \8 Q% _2 M' R8 D1 a* K             SETB P1.41 r5 o+ a  w( f" Y
             NOP& `* F0 S$ z% T" i# {" P% g1 Q" x& Y
             CLR P1.4) y: H0 p# z2 Q# i3 u) T
             RL A8 Y& T3 ]) A; f3 ~* f
             DJNZ R5,LOOPCS" p, J$ n+ ^7 b7 J2 J% Y0 q
             CLR P1.3
) \/ U# q/ S3 o) n4 ^' p2 o. D; C1 {* J             SETB P1.2     4 l( r! b( K$ C! i# a) U. Q
             RET0 [! }- c9 A9 s7 N! F# K
             END---------------------
2#
发表于 2010-1-16 07:27 | 只看该作者
有优惠价不?考虑买一对
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-16 07:49 | 只看该作者
感谢楼主的好方法
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-17 09:50 | 只看该作者
谢谢楼主,,
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-17 10:26 | 只看该作者
顶啊 好东西 可惜我海美誉哦T200B
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-18 00:26 | 只看该作者
记得上次有人发过类似的帖子
回复 支持 反对

使用道具 举报

7#
发表于 2010-1-18 10:14 | 只看该作者
进来学习下了
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2010-1-19 22:01 | 只看该作者
感谢楼主的好方法& [! n% U4 t( }3 m
空即色 发表于 2010-1-16 07:49

6 n, B; m! m6 P, V" p% Z
9 K! r1 ]* r  u3 l$ M' _- o9 c- Q) d5 d1 E
    你用过了么?
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2010-1-22 16:04 | 只看该作者
你用过了么?' Q4 {& U+ P: K5 j* U& j
mgldjp 发表于 2010-1-19 22:01

  R$ Y7 ~/ z: Q) \4 D1 M
9 a! A; {  K! ]: n1 ]/ W3 z  M
! y& H1 v9 J% @    用过得都说好
回复 支持 反对

使用道具 举报

10#
发表于 2010-1-22 16:20 | 只看该作者
T200B有无源版么?自从XP改无源彻底对有源丧失兴趣……
回复 支持 反对

使用道具 举报

11#
发表于 2010-1-22 17:21 | 只看该作者
进来拜神的
回复 支持 反对

使用道具 举报

12#
发表于 2010-1-26 10:19 | 只看该作者
哥们太牛逼了,呵呵,我新买的箱子,等过了新鲜期再买一对改改,呵呵。收藏之。
回复 支持 反对

使用道具 举报

13#
 楼主| 发表于 2010-2-1 18:36 | 只看该作者
哥们太牛逼了,呵呵,我新买的箱子,等过了新鲜期再买一对改改,呵呵。收藏之。: Y$ ^8 |. ]- N% e/ ~" E
mark821224 发表于 2010-1-26 10:19

- k$ v6 q7 q6 A9 |8 r5 d
( m9 F8 ?- D* U! @. ^
( L: f) ]0 E( j% y" ~) B    你的新鲜期可真够久的
回复 支持 反对

使用道具 举报

14#
发表于 2010-2-4 15:31 | 只看该作者
进来拜神的
回复 支持 反对

使用道具 举报

15#
发表于 2010-2-7 18:29 | 只看该作者
呵呵,我入了,没有问题,不用每次都拿出遥控器来遥控了
8 x% J3 p2 m1 r7 ]
; U: `% |6 U. s' V0 n+ }; v楼主是女的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2026-7-11 00:02

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表