收藏本站

开盘机音响技术网

 找回密码
 注册加入
查看: 8191|回复: 14
收起左侧

苹果遥控器+51系列单片机=红外控制STUDER录音机

[复制链接]
发表于 2012-2-18 12:29:14 | 显示全部楼层 |阅读模式

赶快注册并登录访问我们网站,呈现更多精彩内容!

您需要 登录 才可以下载或查看,没有帐号?注册加入

x
本帖最后由 zzrs 于 2012-2-18 12:40 编辑
* V+ D. y/ N5 |2 e* O$ k; K
' U! z8 U3 H$ O6 [2 }* f本人曾在论坛发文详解用计算机实现控制STUDER录音机与大家共享使用心得,下面我再与大家分享红外遥控STUDER录音机的方法。1 h5 }& D% d0 J- F$ P/ s

0 m; K$ ?3 g5 f5 I说明:
& J% _/ d1 L& ?" m" v+ u1、STUDER录音机控制代码在《用计算机控制开盘机》一文中已有描述,在此不在赘述;
2 N' d. d4 y9 d' q2、阅读此文需要了解8051系列或兼容单片机电路原理和指令系统和汇编语言程序设计,在此不作更多解释;4 x0 c1 c/ @/ P; }

6 F' W0 i7 h, ~. r一、基本思路
7 T' D- p& F8 \: t8 M4 g* A+ B7 f使用现有的红外遥控器发送指令-->单片机系统通过红外接收并分析遥控指令-->单片机将遥控指令转换成STUDER录音机控制指令并通过串行口发送给STUDER录音机-->STUDER录音机执行相应动作。
$ |  l7 _, b" O% W- t; @! W8 i# T! y$ |: S! p( r$ O
二、红外遥控器& c' h  J+ B6 o3 d: o, a2 H3 T
我找了几款红外遥控器,但大多不好看,感觉无论如何都配不上我们心仪的STUDER录音机,后来发现苹果的遥控器小巧、精致、时尚,虽然与STUDER伟岸的身驱对比强烈,但它们骨子里都有高贵的气质,还真是门当户对,因此决定就先用“她”与STUDER配对了(虽有乔太守乱点鸳鸯谱之嫌,但本人还是乐此不彼)。* I$ e, ^2 I5 h% `# l
Apple-Remote.jpg
! B3 l; c* w; c: z: @+ e7 }好了,为了使用这个娇小的美女,我们首先要知道苹果的遥控器各键发出的指令代码。如何得到这些指令代码确实不容易,因为APPLE公司不公布,不要紧,我已经用电路分析得到这此东西,下面送给你。
+ E& u7 E( R% }5 M# G) e Apple-Remote - 副本.jpg
, t4 S8 e# x, ]0 {* E6 `在我的示例中将这些键定义为STUDER相应的控制功能,对应关系如下:3 x9 Z2 [: r8 }4 R: C6 B# X3 U  p
Apple-Remote - 副本.jpg + E) h6 D6 j% `9 @

" K$ W' V( B( v! K1 Z三、红外编码5 H7 Q7 y: q: K* k. k/ V
红外遥控编码国际上有一套通用的方案,即一个指令由32位组成,即一次按键,红外发射管向外串行送出32位指令。: F5 T9 ]2 D6 o/ Z, e/ ?
前16位为设备码,主要用于设备选择,不同设备先此码应不同,以防止误控。% w5 T+ M6 y: B* d$ x9 [  F
后16位为控制码,主要用于实施具体的控制。8 \6 F3 O7 P- Z; d; f1 f
这16位中高8位和低8位互为反码,以提高可靠度。
' o9 i) J3 g1 l! h' k% U& u3 k( G3 t9 T" b2 T: K6 B2 T
以播放为例,其编码如下:
# ~- V4 d4 ?7 G/ j8 y: L00000000 00000000 01011100 00000000
! m8 n0 @5 r" @: O) f: F1 e- S7 r' }0 R) e: U9 K8 i
你会说:这串编码不符合规定。没错,它的确不符合通用规定,这恰恰是使用苹果遥控特殊的地方,请你记住了:设备码为全零,且低8位与高8位不是互为反码。& d9 N. _. x* s7 K0 D, ]/ V% t
, u* I( ?+ _8 f9 E$ U$ Q
四、单片机系统
6 O2 R& c8 ~" [& V8 t. o. }
这里采用了应用广泛、价格低廉的51系列单片机,原型机为INTEL8051,但有大量的其他厂家兼容机,全部通用。在此我用了AT89S52,这是一个8位微处理器,主频可达33M,片内4K程序存储器、125B随机存储器,四组8位接口,内置串行信功能。先上图给大家。
! g2 T7 I1 F$ I; v* r c51.png / `+ C$ a- n! g) |" A, d

3 R/ M7 h' w; M5 I7 ^" u1 J+ `4 K0 J电路很简单,功能如下:3 z! X0 r5 g( n) @/ F
1、一个AT89S52单片机作为核心;: l! V  ]9 f3 [0 s  z: ^
2、一个TL1838为红外接收头直接串行输出数据信号;3 C0 D" I) l7 `9 Z" v
3、单片机的P3.1(TXD)串行输出控制信号到MAX232转换电路,将TTL电平(5V)转换成RS232电平(12V),以适应外部RS232串口设备的要求;: h% G9 B( _1 h- ?5 {1 E
4、一个9针D型插座用于连接STUDER录音机,连接对应关系请参阅《用计算机控制开盘机》一文。
0 ]0 B9 \& A! i- ~1 \ 1 K; E7 ?- `$ {/ }
关于供电,你可从STUDER录音机的RS232串口取出一个25V电压,用7805之类的稳压模块给此电路供电。( t: B% M" V  }4 G: ~# a% G

8 S. N) I+ E- c7 e) R" F0 T) x/ q! M) E7 q5 I$ `
五、控制软件
' p, r) ^3 r1 i- V3 k
控制软件用汇编语言写,源程序如下:: v# A5 A3 H& O
     ORG 00H
; b8 n' T1 O" l  D  n     LJMP MAIN3 v, s- g/ u' J( `9 L5 ?: z/ ~4 I
     ORG 30H
* \, c9 l! y: H. `" p, nMAIN:& u& Z4 k" E6 \6 e: v1 O8 F# s) Z
     MOV 20H,#00H  ;设置串口工作方式,速率9600,(11.0592M晶体)
1 ]+ y3 w' u' |+ M+ K6 h) r     MOV TMOD,#22H  ;22H) g+ g. s/ H: _2 @1 J8 S+ ^
     MOV SCON,#40H  ;40H1 Y" |$ `7 Z$ R/ n1 ~
     MOV TH1,#0FAH  ;F3H1 L5 z% ?/ o$ v9 d! K
     MOV PCON,#80H  Q6 l5 `7 t9 a3 H
     SETB TR15 j6 [( @: B& F: l. Y* b
START:9 g" w8 [( y: E9 V7 m$ m
     JB P3.7,$ ;遥控信号处理
( \+ e) n/ B2 Y2 {( P+ l6 zSB:
5 T0 O' p$ }( G+ {. m     MOV R4,#8   
! ]; G2 Y4 _# B* ~; hSBA:
1 d# k; w- t  B& a# V" [/ b% t: s     MOV R5,#2501 @* w( J! a" |2 l
SBB:
# u3 q: j2 W" A$ q' U2 K     JB P3.7,SXB1! w' }2 n$ S- e" {3 T) e, U1 U- ^
     DJNZ R5,SBB
/ o( s: X; ?; G* X! @     DJNZ R4,SBA/ u: z$ T/ r6 ^3 V
     MOV R4,#2; D, T" Z2 L# S3 S$ {6 a
     JMP SBC1 G7 U8 X* q7 {* W8 }; r
SXB1:
3 J# [! e3 x) t+ H0 [. m. T  O* e     MOV R5,#5$ _7 N3 Q; _! p, L2 m6 R8 O4 U
SXB2:              
* _1 v  T3 I* [) v2 w( Z5 N" x# w  ]     JNB P3.7,SBB, A9 }! G4 Y- F- g! }1 P) ?1 G4 m
     DJNZ R5,SXB23 a  h& z1 V. Y8 K# o0 {* H5 a
     JMP START, s, u* M: V1 ^! \4 q+ [% s- H
SBC:
! z9 V5 [" p# `. p" F9 T3 d: o     MOV R5,#250
0 T9 W8 O& X! uSB1:' l  e4 a* b* s( K7 U: j4 q- r5 |& ]
     JB P3.7,SB2  
; g. R. X, A; b8 U5 \     DJNZ R5,SB1; r6 O' U& X$ h. w' e
DJNZ R4,SBC
, F1 C: p% U9 F. _9 X     JMP START- U/ ?) Q7 q' `4 c* a5 {) c
SB2:                 6 x% s, R9 B4 {- c
     MOV R5,#5* H& g* C! O+ F- ?" g2 V
SB2_A:) D/ H/ f' T) g2 F
     JNB P3.7,SB1
  `+ N- U1 d! h4 f# f2 }  r: q7 F* x     DJNZ R5,SB2_A4 p- i# t8 D. `1 E" g' g" T) G
     MOV R4,#3# _& G' K! l  X5 }5 t' g
SB2_1:  u5 q+ ~0 g) o6 i: ~9 p# U
     MOV R5,#250/ G; I& F2 m* h0 X9 M4 ]8 ~4 w- h
SB3:                  3 F8 c8 x9 |3 o
     JNB P3.7,SXC" l& ~: M- v9 n
     DJNZ R5,SB3
0 F$ _9 y* w& d) t" j7 ?0 q% W     DJNZ R4,SB2_1
6 o- u1 G2 I* N8 e, @. f4 D4 `4 }     MOV R4,#2
) G4 c5 k# u' B4 ?. q     JMP SB3_1
9 u: ]; x$ s4 b/ ISXC:                  
0 `) R4 g" H0 O- J     MOV R5,#57 H: w! w% }: k1 q) L. }7 J7 \
SXC1:
5 q2 w( p) J$ z' [) P( m     JB P3.7,SB3
7 a7 Q9 h6 B$ R) O8 z     DJNZ R5,SXC1$ _3 x5 B  s) X1 ], i* h$ c6 J
     JMP START+ E$ ]' E: J' Z! f/ d5 u
SB3_1:                 0 R6 w) K7 i! E4 ]% w& `
     MOV R5,#250
. U9 x3 v" s, ]2 h5 xSB3_2:4 x3 v3 V0 v6 [0 s4 g2 T) @
     JNB P3.7,SB4
( ^* V7 g! Q2 |) b1 t1 |     DJNZ R5,SB3_2
  s& O# X- o' C% `3 @, ]0 f     DJNZ R4,SB3_1& R% S* U! e, z5 ]* H: W0 r; m
     JMP START7 D- ?) N7 j9 s3 [( R$ X& e
SB4:                    
/ ?7 ]- k8 f0 r! n; t     MOV R5,#5' D3 O1 L  K% t5 Y
SB4_1:
6 z6 [6 h  C9 G* S+ p     JB P3.7,SB3_2: ?. T  W2 `# D2 S, v: E% y
     DJNZ R5,SB4_1; X1 m  s( u& g& M' u
     MOV R1,#1AH  & {" [: |4 D! `. S& Q$ A. f' Y! C2 F
     MOV R2,#4
2 K! G* c7 M' _PP:  MOV R3,#8
8 N  R2 y( G/ n; l) ~- D. zJJJJ:
" M7 T% p, U, g+ V2 p' ^     MOV R5,#250
, f: ], p6 i- b/ v0 G; h/ Q$ QJJJJ2:               
7 [& y/ \6 f9 G3 X" ^' B0 ?     JB P3.7,JJJJ33 a" v. k: h( |  o! F; k
     DJNZ R5,JJJJ2
9 d2 {; h: o8 O1 a     JMP START; Q% B6 N( x2 }1 t7 Y# X8 e
JJJJ3:( T" m. ]# ~& V1 j& \) f
     LCALL YS1  
5 ~5 V& X+ |8 q2 }( F" z     MOV C,P3.7   
7 W( R7 w8 e: p+ e& E4 U5 V     JNC UUU      & S6 f. K, h. B1 W. S( F
     MOV R5,#250
) b5 B" C7 [- m" _2 u  `JJJJ4:% B& [! _2 |: g( Q8 ]' \( [( u  U" B
     JNB P3.7,UUU. U! O  @! ~4 ^! p1 A; D$ q
    NOP, w# w, F0 g: ]. h
     DJNZ R5,JJJJ4
" @+ N# q9 g3 ]# ?$ z0 T2 b, Y, b6 J     JMP START8 U* G$ f1 R: F( J7 I" f, n
UUU: MOV A,@R1  
' t- s4 P+ P& i' P5 D9 r     RRC A           1 S6 |5 b. Q/ _8 U$ b$ \
     MOV @R1,A      
6 ?( w: c2 d, }  H8 O; b     DJNZ R3,JJJJ   1 ?3 p1 ?; Z5 ?! D/ e; n
     INC R1       ) U' T2 b3 T0 t# u
     DJNZ R2,PP   " `, z8 j7 r* @
( |; T; m0 ~7 |/ Z
     MOV A,1AH " p8 ]4 `8 j. R/ `
     XRL A,#11101110B
3 V% |( A% a" [     JNZ EXIT ! M, V- g% ]" j1 c* X4 _
     MOV A,1BH
/ @; \. n& ~  e& U% B1 ~     XRL A,#10000111B
  X8 v: j: L: p; ?0 U3 |, T6 F. m6 z     JNZ EXIT   s# g; `9 d1 H& ^# w  I
     LCALL YS3( U) V3 q1 I4 O) z. P
     MOV A,1DH
0 R0 y5 a2 p& Q$ ~     CJNE A,#10111100B,EXIT
% v# V8 \% H4 x# R6 u% a     LCALL YS3: |( F2 N! W! e+ F8 t
     CLR P2.6  , Q" @* C. }3 |( I, H
     AJMP BIJIAO
6 r# l' p' |1 Q! B   
# Z* Z; _% e  B% q/ ~AA: $ [& P9 w" x# A$ S
     MOV R1,#25
! d* x" D4 J; x/ tXX:
9 W* k! M+ R+ S8 `/ g# F# c" a     ACALL YS2
" s: x- P1 V  q% E, @     JNB P3.7,HH + w% J( x" g9 a7 a7 @
     DJNZ R1,XX
  a5 |) |& y9 aEXIT:    " T6 r1 p, V' t& T% D$ A; ?
     AJMP START
# C, Q$ n4 w; d2 ^2 O9 o   
/ b5 m& r: w9 d2 MHH:6 y$ O/ V! R7 s* r1 D. V7 s
     MOV R6,#41 C( N' I) U0 }  W" m
S: 8 Q% l, z% i4 n
     ACALL YS1 9 R# \$ o: E1 _$ U5 |/ t
     JB P3.7,EXIT ) P" R4 \& B! d. v0 g  ~8 h
     DJNZ R6, S 8 e6 i) y& m9 @. C8 h# Q( U- E1 C
     JNB P3.7, $  
: g: ]; S! p/ y% n2 n2 |     LCALL YS3
2 a  d5 x5 V, k% m2 w' x) ~& E1 g     AJMP AA! F8 Q: w9 Y# i3 [2 ]/ ?; y' d
BIJIAO:
$ `; N) P2 ?" H5 l; X     MOV A,1CH
$ e7 M4 f, y3 c7 j     CJNE A,#03H,N1  
! J5 e7 g1 A" M5 ]     MOV P0,#7EH    , r' \# \. Y0 a- D1 F; P
                     
0 h8 H4 F; b; k( w, ^6 s; o8 e: ? ;处理STUDERV录音机控制码1 h* l% O3 y& w& G* s3 X/ }
N1: ) Z. y1 c5 v5 n% V
     CJNE A,#5FH,N2 ;播放键5 W: `6 E- D% f( M* ~; c
     MOV DPTR,#REP  `, Q6 J1 C+ m! N1 T
     ACALL SENDA
9 o4 |# u' P0 m4 e0 y     ACALL YS47 U, t0 E. B* X
     MOV DPTR,#PLY4 D* E; i/ k% m: ^
     ACALL SENDA, p: Q% ?3 g( d
N2:
+ ?6 u3 |1 r8 @( i' [( h     CJNE A,#5CH,N3  ;停止键
9 J: O% E4 K, D/ V- N  W, D. M! }; ^     MOV DPTR,#STP& h/ Z. p3 S, C# y
     ACALL SENDA
) X! t, Y% I5 A+ }N3:% L! j! I: _/ Z
     CJNE A,#06H,N4 ;快进键
8 k& }+ p5 \6 n9 e* x& U5 d     MOV DPTR,#FWD* k; n# [$ L  p, m! h
     ACALL SENDA" U4 K" f* x5 l+ }% h5 Q! h
N4:
! k( t- a' e3 ^; D     CJNE A,#09H,N5  ;快倒键$ M; i) p  F3 k0 M2 P
     MOV DPTR,#RWD1 F0 T& ]5 y( V+ F/ d$ k
     ACALL SENDA
8 L% V/ v& B9 s% U! U7 N3 O. i3 L* [- QN5:
1 t) |. S' Z3 _      CJNE A,#0AH,N6  ;置零键1 Z: `% b7 h$ Y- R% ^& ?+ Q
      MOV DPTR,#RTM$ H2 }$ O, |% X  }, N% B
     ACALL SENDA
) Z/ H6 j/ j! |7 s  m: O. ^N6:3 Y7 `$ ]% [- j/ Y# _- ~# }
     CJNE A,#0CH,N7  ;定位到零键
+ A# v8 z9 r$ u# h1 |  T5 Y! `# ^     MOV DPTR,#LZA9 |! H* M0 C1 G; ^/ i2 I' m. R
     ACALL SENDA& k5 ]5 N: @; w: S4 O
N7:
& b/ Y3 q" Q- o& \     AJMP AA* ?% e( \2 x7 i1 v8 B. s
SENDA:+ ?, l: f4 @0 S, u6 r" x% Y
     CLR A" t% Z6 ?8 K2 l* D5 c9 T; q# c
     MOVC A,@A+DPTR/ e$ v" G4 f2 e$ }8 e2 A+ e
     CJNE A,#'$',SENDB
* U- F6 Z. k: C) \( |     AJMP SENDC$ }5 c7 R6 p! @
SENDB:
2 h2 R. M; C3 C. R/ ?7 k     MOV SBUF,A
, N+ b8 v' X9 \$ G# x1 [     JNB TI,$7 l- m8 [+ `& V1 c8 _+ f& j' G! w8 {. m
     CLR TI  |5 O) i* r% F, q
     INC DPTR+ N, m3 k% `6 H6 |
     AJMP SENDA
8 p$ U7 g$ m  u/ g3 xSENDC:. e# L+ u+ A  a% G+ Q) h& p& L
     RET
5 [/ Q& k6 s- t4 @$ N3 E- g7 Z; h. p1 A4 r( i6 P! {) Z/ ?0 n
PLY:  db "PLY ",0dh,0ah,'$'
8 n* b9 I' o  u$ k% nSTP:  db "STP ",0dh,0ah,'$') k6 C/ [4 [7 H& C
FWD:  db "FWD ",0dh,0ah,'$'/ ~; b) J. e8 B6 V) c
RWD:  db "RWD ",0dh,0ah,'$'
/ ]6 r% b- Z. T% w2 ]- U+ SRTM:  db "RTM ",0dh,0ah,'$'
. ~# p( R% c5 f8 A9 `LZA:  db "LZA ",0dh,0ah,'$'! J6 p$ c! |' N  E
REP:  db "REP F ",0dh,0ah,'$'
) _& X8 @, w2 A; a& M, E# z/ Y( ^0 w( Z1 y. B1 T: x* I
YS1:
+ N" R* Z, b2 \. O0 ?2 P1 X     MOV R4,#209 d. P1 u: w0 e5 B
D1:5 d  `, s' w5 ^& U" n) w
     MOV R5,#20
2 i, A% b' O7 S9 w- p0 C     DJNZ R5,$2 |7 n( v. x3 B2 `8 }
     DJNZ R4,D1# V  T/ M% [" _2 j
     RET
  a( D7 g* |: Y% ?) V6 u5 f+ z) a. I
YS2:; a4 l& C# n) I& F
     MOV R4,#10. p- t! j9 }: e
D2:
/ n7 c9 s+ M) l, J     MOV R5,#235% x  ]" K1 t7 h
     DJNZ R5,$6 t" Q- c# u' a- J: K
     DJNZ R4,D2! S5 X" i, Q* ^9 _! F9 F' \
     RET
% ~* k- D/ {0 i$ V* x6 {! _- q9 l+ O6 G* U* {! i1 @$ S
YS3:1 @0 D# |( y$ Z2 l: I
     MOV R4,#2
* N7 m' {" P5 ~0 n! j! ED3:7 k. T# ]8 b+ ^( F" ]
     MOV R5,#248
3 f9 }/ L7 I8 ]9 E: z2 n     DJNZ R5,$* C* c7 K5 s5 b( F7 u0 p% B
     DJNZ R4,D3
. ]4 D& m& d7 Z; U     RET4 c, c& ?$ ~$ o3 M
0 G( x5 \# w# l5 I5 n+ S
YS4:7 G. q% r! C3 w4 {8 W
     MOV R4,#2006 Z* ]. ]& _( v' h
D4:
+ l' ~; }$ n) W' A0 c; u) q& h- e: [     MOV R5,#248* k4 P- a9 q* B/ o) Q
     DJNZ R5,$
: O- W; u: W* n# M% R% X     DJNZ R4,D35 m+ e4 c  r- ]1 H
     RET
+ K# ^: {7 p( o! m7 D2 X7 o     END
/ T  S1 D7 V( c1 X4 ?1 y- Y, h5 y2 K" [% H6 O3 d( G: W
有了上面的软硬件,你可以舒服地控制你心爱的STUDER录音机了。
; V  P$ [- y+ K! H1 _# ]是不是很惬意,嗯!
0 D( p5 c: g7 c8 ^/ J. e) H& l! T

评分

参与人数 4威望 +54 收起 理由
tempo + 10 原创性
木又 + 4 好技术,建议楼主做成品,赞一个
开盘机论坛 + 30 好资料,支持!
红灯记 + 10 好文章!

查看全部评分

发表于 2012-2-18 12:43:13 | 显示全部楼层
我准备试试{:4_214:}
 楼主| 发表于 2012-2-18 13:03:33 | 显示全部楼层
红灯记肯定没问题。
 楼主| 发表于 2012-2-18 16:54:48 | 显示全部楼层
最终的样子,有点简陋哈!8 ^) C5 Z) E4 a; p7 ^
YK 005.JPG 9 ^( p1 v6 \4 _' O
发表于 2012-2-18 18:25:45 | 显示全部楼层
这个很厉害,楼主令人佩服{:4_219:}
发表于 2012-2-18 20:30:22 | 显示全部楼层
发表于 2012-2-19 00:06:30 | 显示全部楼层
怎能長他人志氣?自己設計的就要站出來標示自己的創作,讓別人引頸為盼!!!{:4_213:}{:4_213:}{:4_213:}{:4_247:}
发表于 2012-2-19 00:45:50 | 显示全部楼层
洋为中用,真棒!我得试验下
) {' p: M) `3 H' d* Z
发表于 2012-2-19 09:00:40 | 显示全部楼层
厉害.......{:4_219:}
 楼主| 发表于 2012-2-19 10:01:48 | 显示全部楼层
其实也是不想破坏原机器的整体性,要不然就直接装录音机里面了,电源也好取。
发表于 2012-2-23 14:46:26 | 显示全部楼层
{:4_213:}{:4_213:}{:4_219:}
发表于 2012-2-23 15:27:13 | 显示全部楼层
有创新,值得学习{:4_219:}
发表于 2015-10-2 20:30:26 | 显示全部楼层
還有這一篇,找時間深入瞭解。
发表于 2015-10-5 13:32:58 来自手机 | 显示全部楼层
楼主计算机功底扎实啊,学习了。楼主是否熟悉过去计算机用的1/4吋525M的磁带机,是SCSI接口的的。
发表于 2015-10-6 11:14:18 | 显示全部楼层
zzrs 发表于 2012-2-18 16:54
3 Y0 {+ n. N3 S6 B' v  w& d7 C最终的样子,有点简陋哈!
; Y8 k' ?, g3 E" b; b8 g
这进度怎样?
您需要登录后才可以回帖 登录 | 注册加入

本版积分规则

手机版|开盘机音响技术网 ( 桂ICP备20003207号-1  公安部备 45010302002201 客服:18077773618

GMT+8, 2025-9-19 17:00 , Processed in 0.105847 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2013 Comsenz Inc.

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