收藏本站

开盘机音响技术网

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

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

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

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

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

x
本帖最后由 zzrs 于 2012-2-18 12:40 编辑 * {% q1 K: X2 M+ X% G: J) P6 Y

9 H1 C* H8 Y0 V/ ?0 u本人曾在论坛发文详解用计算机实现控制STUDER录音机与大家共享使用心得,下面我再与大家分享红外遥控STUDER录音机的方法。/ L# q* h- |- d( l; T: \& E
) q7 t+ E- `& u
说明:& g5 b  A% l6 R! }* j5 D
1、STUDER录音机控制代码在《用计算机控制开盘机》一文中已有描述,在此不在赘述;
9 k' ]/ y2 Z, T' [% A' }1 e2、阅读此文需要了解8051系列或兼容单片机电路原理和指令系统和汇编语言程序设计,在此不作更多解释;
' U$ b: c, M6 v# e+ E$ H! Q2 F$ J9 _( v. }# n  W
一、基本思路  [  b, _. ^! W9 ]+ c% \5 v
使用现有的红外遥控器发送指令-->单片机系统通过红外接收并分析遥控指令-->单片机将遥控指令转换成STUDER录音机控制指令并通过串行口发送给STUDER录音机-->STUDER录音机执行相应动作。
) K; `5 R$ I% e2 ?, b* ^' w0 k
  W. e0 c! \& R6 j8 R! n5 P& j二、红外遥控器3 C. P, J3 T; p6 P
我找了几款红外遥控器,但大多不好看,感觉无论如何都配不上我们心仪的STUDER录音机,后来发现苹果的遥控器小巧、精致、时尚,虽然与STUDER伟岸的身驱对比强烈,但它们骨子里都有高贵的气质,还真是门当户对,因此决定就先用“她”与STUDER配对了(虽有乔太守乱点鸳鸯谱之嫌,但本人还是乐此不彼)。4 l! N+ P3 b7 L7 q. F* ?, A4 R4 o8 \
Apple-Remote.jpg
0 n# D2 y4 `- U好了,为了使用这个娇小的美女,我们首先要知道苹果的遥控器各键发出的指令代码。如何得到这些指令代码确实不容易,因为APPLE公司不公布,不要紧,我已经用电路分析得到这此东西,下面送给你。
3 q4 u" c- Y# ~3 k4 m2 H  J( i Apple-Remote - 副本.jpg   h- K' K; ]/ o5 {; t
在我的示例中将这些键定义为STUDER相应的控制功能,对应关系如下:
% ?. f0 G+ w3 a$ g6 p1 P+ p Apple-Remote - 副本.jpg $ b2 U3 }7 @1 H% _! K% X6 {6 y- B
: T$ k$ w( `9 q$ p. f$ m. x
三、红外编码6 \) t# C' G' R, f1 O- s( t8 D8 P# W
红外遥控编码国际上有一套通用的方案,即一个指令由32位组成,即一次按键,红外发射管向外串行送出32位指令。
3 m+ ^" ?1 e# U7 L7 l: K1 S前16位为设备码,主要用于设备选择,不同设备先此码应不同,以防止误控。
6 G5 k% u6 I* E5 ~4 v8 V后16位为控制码,主要用于实施具体的控制。
! w3 V5 [9 y2 c' i7 e/ _1 n这16位中高8位和低8位互为反码,以提高可靠度。! o6 E9 K2 o& f, S: {! [

% X# W  a# }* S3 `以播放为例,其编码如下:
6 n% g8 R1 N  |00000000 00000000 01011100 000000004 a5 j6 B1 @# J
; {" L$ Z( b- W
你会说:这串编码不符合规定。没错,它的确不符合通用规定,这恰恰是使用苹果遥控特殊的地方,请你记住了:设备码为全零,且低8位与高8位不是互为反码。
# A& C4 J& i1 ~1 V( i+ x0 ?7 e" J! F9 D; E
四、单片机系统
9 i2 I) c+ `, {" p6 J0 z
这里采用了应用广泛、价格低廉的51系列单片机,原型机为INTEL8051,但有大量的其他厂家兼容机,全部通用。在此我用了AT89S52,这是一个8位微处理器,主频可达33M,片内4K程序存储器、125B随机存储器,四组8位接口,内置串行信功能。先上图给大家。
. J2 V& J; S4 D c51.png
' I0 ]. c6 E' @- x
9 V1 k5 l1 p5 t# D# t$ v电路很简单,功能如下:
6 \( B7 J6 k" n  w# V: w' U1、一个AT89S52单片机作为核心;, w( M4 b6 n$ X( l- t$ y
2、一个TL1838为红外接收头直接串行输出数据信号;
# k2 V7 I0 l0 J) G! a3、单片机的P3.1(TXD)串行输出控制信号到MAX232转换电路,将TTL电平(5V)转换成RS232电平(12V),以适应外部RS232串口设备的要求;
8 s$ h" D$ C; L/ M5 z) D# s* S4、一个9针D型插座用于连接STUDER录音机,连接对应关系请参阅《用计算机控制开盘机》一文。
9 q- l2 [" H* c* z( R; Z# o  l% G
! Y8 F- ?& m& c  P0 z  _/ b关于供电,你可从STUDER录音机的RS232串口取出一个25V电压,用7805之类的稳压模块给此电路供电。
1 Q+ q' g- X, c) H6 m4 c- F$ c2 r

! x) u" E  s: G5 E7 T' [2 k5 ]2 O五、控制软件
% r% }2 u0 X2 j9 |/ z, o
控制软件用汇编语言写,源程序如下:- M; j/ a- ?% f; ^! C- F8 E  F# e
     ORG 00H) ^7 v- w- g  ^# R; q
     LJMP MAIN
. d' U' Y9 Z- y) ^( n6 C# B     ORG 30H
; p6 ?2 L: A: ]. C* q  [, L0 e! iMAIN:+ a# g: I9 X0 F) T9 H: p+ g
     MOV 20H,#00H  ;设置串口工作方式,速率9600,(11.0592M晶体)
! _* l) J; K8 G8 g  Q2 [     MOV TMOD,#22H  ;22H
6 J" Y9 q% C, W     MOV SCON,#40H  ;40H
5 _6 F0 x: z3 e6 k5 X, `& j     MOV TH1,#0FAH  ;F3H
9 d3 Y; p3 I9 B! u     MOV PCON,#80H
2 L) P- b; W" N' r* H, i8 M     SETB TR1) w6 b: f' Z* Z5 y: Y& T* e* r9 N( ~
START:# g+ [6 y: k7 y/ q4 a1 r
     JB P3.7,$ ;遥控信号处理/ n! {- E3 v9 J
SB:
" s: [2 E" x  n3 v% K3 Q     MOV R4,#8    # Q1 ?" a3 B* o$ Y+ l' S# G. d: w
SBA:! d9 z- A  B8 S+ S9 I
     MOV R5,#250
3 L% q4 Y* }% \7 ~; {. TSBB:5 q/ b  m5 L( k4 O
     JB P3.7,SXB1: E" E1 `% j6 N8 H  ^& e2 X
     DJNZ R5,SBB2 h/ }- m  J, W1 D: X# |8 o
     DJNZ R4,SBA% X+ I2 n7 Z' r" o, T3 s
     MOV R4,#2
5 G  U- [, Q, e& U1 J     JMP SBC* L. F8 {5 ~2 a& Y* W1 R4 L7 M
SXB1:
5 P/ |- F; `# v; o6 k9 R     MOV R5,#5( T) W/ H/ F9 n- P
SXB2:              - ]6 @3 \. }( C' g$ X
     JNB P3.7,SBB
" H8 D# n# p+ \4 y0 j     DJNZ R5,SXB2; V% ?, g0 Q6 F# {! z3 e; X
     JMP START
1 Z3 o) s& n- t6 k" l- _SBC:
! s& z& t7 c. }- q# g     MOV R5,#250
5 a2 U+ Q, i. V  b" tSB1:
$ d' q  i+ Z' n$ G9 g     JB P3.7,SB2  3 c+ ^( Q; E6 j5 G+ E2 I8 d( b
     DJNZ R5,SB1
+ R+ x( h' `+ s1 D* a3 f) Y& Y DJNZ R4,SBC- u# {7 Z" g# p6 C6 k
     JMP START( }" X; z2 K  `" c: c9 R
SB2:                 
, l6 C3 }/ T  `! R, R     MOV R5,#5
% ?! w7 r1 L0 c( pSB2_A:
0 o+ ^. H7 o( q     JNB P3.7,SB1
" ^5 \3 @, f9 X. m     DJNZ R5,SB2_A, M5 C; z( I6 i  F& X
     MOV R4,#3  h+ [5 p; f  q  N
SB2_1:/ m8 x0 O! `. x( x. _: O8 L7 R
     MOV R5,#250
4 y  ^& @$ c: g0 u7 dSB3:                  8 s* K# }  a8 Z6 q1 }
     JNB P3.7,SXC
7 n5 W3 L5 u9 I* m     DJNZ R5,SB3
  [/ D& R: e" ^4 r5 C: _5 r% M0 g     DJNZ R4,SB2_1
4 {4 k8 \7 K/ T2 l; p; c+ B     MOV R4,#2
) v# x9 s1 `" I+ c+ I" v     JMP SB3_1/ {: w& g; Z& O8 `' |: e$ o9 P- R6 R2 ]
SXC:                  
. u" l3 H5 S0 \! [     MOV R5,#5' `0 p) a3 U( q! t
SXC1:
8 n, h4 m5 E, C/ @     JB P3.7,SB3- P: e9 D' m! P& Q* A
     DJNZ R5,SXC1
! O' b5 k. V% H1 |' M     JMP START( Y( m% a" u' U% j# F
SB3_1:                 5 o0 |, C& O( g% w+ U0 p
     MOV R5,#250
* l) ~) H1 M" ^; D6 `, vSB3_2:
+ W$ J% [/ g7 r$ [9 L$ a# y' {! K     JNB P3.7,SB4
9 a( {7 n$ A! F9 u* {; y     DJNZ R5,SB3_2+ O  X" b6 e9 m) {+ ?# G4 f
     DJNZ R4,SB3_1, R- q( {* A/ |  ?. p/ J) ~
     JMP START+ N+ p  l/ s. C' K# F& s  t; a( r
SB4:                    
& u. Z3 L3 g3 G/ _8 l& |     MOV R5,#5
1 ?3 U* |5 P3 h; n! j1 M* wSB4_1:
9 U  ~  F1 i* _# ?     JB P3.7,SB3_2! K& z' b) q( k" J3 J$ ~) x4 i
     DJNZ R5,SB4_18 t1 j0 y6 J. V' b) T$ |: P/ V5 q
     MOV R1,#1AH  3 u. d5 h2 Z% Z
     MOV R2,#4
( E! B; G; e/ y/ APP:  MOV R3,#8
4 [: J8 u: }" O, `+ m5 r7 kJJJJ:' ?3 z  p# Q% M4 [0 v" v8 Z
     MOV R5,#250
9 t7 X* N$ a% Z$ _1 K' w6 O, SJJJJ2:               
- h# ]& u% H5 d% W+ h. @: z     JB P3.7,JJJJ3
6 }. z2 R7 f' M7 H5 A/ S0 S6 ]     DJNZ R5,JJJJ20 S& n$ c2 A  o& G* G
     JMP START# D$ Y- P- W# W
JJJJ3:
6 R* d3 X$ i- `) U( U# g) ~2 C     LCALL YS1  ' U% R5 a( ?9 o
     MOV C,P3.7   
# m- o0 j6 T/ d6 D! q2 e1 M     JNC UUU      
/ a, ^% G) t/ `3 W  S( p     MOV R5,#2503 O6 h' V: Q/ t: w# W2 S
JJJJ4:
' Y$ Y: V% R/ X3 N" l     JNB P3.7,UUU
3 \0 v2 h1 q- T. i0 s    NOP8 e9 M5 W- ?2 J2 C0 P& M4 u' j5 s
     DJNZ R5,JJJJ4
8 B( O9 J4 @! y: |. w& A     JMP START8 x, O& _5 V& t! N# H
UUU: MOV A,@R1  
9 b% A6 s# r) b) P" {* x     RRC A           
+ N3 n3 N# K. `" ^     MOV @R1,A      
/ k! a4 K2 Z$ [0 T8 l1 @     DJNZ R3,JJJJ   2 \9 r- G/ A* k. b0 L# j4 f
     INC R1      
; p9 ?( h; w' A% m. D; w! Q9 U5 Z     DJNZ R2,PP   & x8 y" o! q6 b, x' N# y1 M8 W
" a2 q  Q' r, C: x& g' n3 ]
     MOV A,1AH
$ l" e/ r) }1 D  v* I     XRL A,#11101110B) X$ f" q5 p4 i: P
     JNZ EXIT 4 D/ S% K/ t/ h! H! E' C
     MOV A,1BH
: E4 O& s# H" R5 ^4 b  S3 V8 x% W: \     XRL A,#10000111B, I, u0 I& a1 N% c) h) `
     JNZ EXIT
5 T: i6 d2 f9 G. f; ?1 {" A     LCALL YS3
: h" F7 _  G0 I. @+ p     MOV A,1DH 9 W2 \4 }2 \5 o6 J7 U9 S
     CJNE A,#10111100B,EXIT
6 e" z' g1 H" v* q6 X! g2 ]+ s     LCALL YS37 |$ |* k" _) u3 C+ w, U" Z/ g
     CLR P2.6  / L) P5 h2 k5 |! M
     AJMP BIJIAO
' N6 M1 T! q# Z% \, _2 U   : B* g0 U) I( d' B5 X
AA:
6 h) U, R$ K; e2 P1 v) T     MOV R1,#25
" |$ K7 L* w2 q; p! z. iXX: 8 {, G4 g+ L1 Q, o
     ACALL YS2- b2 Z- ~) j- f1 x  P+ b
     JNB P3.7,HH
4 d0 M' Y1 {# N9 F& P% `4 p* v  r     DJNZ R1,XX) E: a( F/ s! ?6 e
EXIT:   
" F) {: U$ \) f, @4 r     AJMP START. r' ~- x! m4 N: P% d
   - a! c% N( E3 `6 b8 k6 y0 D1 |
HH:
7 E5 E; g7 e+ _. [     MOV R6,#41 ]1 y6 x/ W% o5 O: S% w9 W" B* b
S: ; f  y+ E1 [' }: M3 U: s
     ACALL YS1 8 h! s% e  y. W: b$ A
     JB P3.7,EXIT
/ T& U2 r& _8 Y* o' n2 W     DJNZ R6, S
  ^$ D% [1 L3 ^: W( j& S' G& y     JNB P3.7, $  
3 l. v) A& C. S# e     LCALL YS3
4 k# B' Z! e7 I6 U6 _% H     AJMP AA3 Z, l8 z) S9 H& _" N1 s
BIJIAO:* \- v; [! ?" V$ d& Q
     MOV A,1CH 1 ^% K% g& j( g, H$ X% C3 d2 W* |) X" l
     CJNE A,#03H,N1  + W' R( z7 |0 l2 B: S+ v
     MOV P0,#7EH   
) _- ?: A- \( H  N" Y                      . m, `- y7 o1 P+ J8 g% q
;处理STUDERV录音机控制码, L0 T) S# k5 t3 u- ^5 I4 x* f
N1:   V- V; g+ `: ^* G3 d$ I2 Z( G& H3 D( @
     CJNE A,#5FH,N2 ;播放键. c8 b; ?0 f# d
     MOV DPTR,#REP0 ~) r/ a* q8 Z9 b7 U$ e
     ACALL SENDA: {9 f* r7 W$ }/ k" {* R
     ACALL YS49 \0 Z, ]" |$ Y' w8 D" q& \0 `
     MOV DPTR,#PLY( d. o$ a: C% {1 K$ ~/ Z' A( s" ]
     ACALL SENDA
5 d! W5 R7 l2 fN2:& |% F1 ~% j8 V
     CJNE A,#5CH,N3  ;停止键3 l' `/ E0 K0 R, l  D) O) V
     MOV DPTR,#STP( B0 b3 L. y' b1 x6 j5 L. X
     ACALL SENDA- g5 Q1 O) R3 L/ q  C7 ]  S$ [) W% a
N3:! h# `2 v  i+ E5 s2 K
     CJNE A,#06H,N4 ;快进键
* g$ E: t6 z: J/ T6 ^     MOV DPTR,#FWD
* W4 f2 C9 X9 z1 d" J6 |/ z     ACALL SENDA3 X4 c* H  ?6 d& E6 @$ O% ?
N4:: a+ w* ~5 V9 _
     CJNE A,#09H,N5  ;快倒键
% G4 A$ ]: H- K) R# e4 m     MOV DPTR,#RWD& C4 G1 W' Q( V( e( h
     ACALL SENDA
" Y' \: Y  K* b& T% @; `N5:; H' S$ W( [" y' E: z
      CJNE A,#0AH,N6  ;置零键1 e9 H; r- ^- t% ^8 R0 o) X
      MOV DPTR,#RTM
6 v) L4 t/ j8 h     ACALL SENDA
, c* m' Z- N7 p; L4 ]  ~' yN6:( z9 z/ y1 W8 q$ H/ r
     CJNE A,#0CH,N7  ;定位到零键6 D' B- A# `5 o/ j( S0 U
     MOV DPTR,#LZA- ^: M2 w7 H$ p9 k  {3 L
     ACALL SENDA
+ Z3 I( d8 i' L( p" z- s2 tN7:4 X" g  ~# t) p7 B) k
     AJMP AA4 O" Y4 G3 z/ T8 |
SENDA:- S2 Y2 y3 B8 u( |. {% X0 ^! ~
     CLR A% s. d# a; ?1 c4 x* \7 B% U" R
     MOVC A,@A+DPTR
1 g/ v1 \! `. D( o4 S     CJNE A,#'$',SENDB+ ~/ f+ f# B  B; U) _
     AJMP SENDC
1 }8 [" h4 n7 Z1 o8 iSENDB:; |' d5 G9 i4 l( J' y; z
     MOV SBUF,A
- o; f% {3 m! W5 b' @4 z, e     JNB TI,$
0 y; r( B( P  i7 Z# e0 X' M) a     CLR TI
( }2 C/ F- _) x0 Q& F, T% }     INC DPTR! a* Y  h$ S; x; L# u
     AJMP SENDA' r( i" U( h& r/ G5 Z. A
SENDC:% A' v2 \: J5 x
     RET" n& d+ g* z$ n* F
/ Z. [9 F% P9 T! O
PLY:  db "PLY ",0dh,0ah,'$'+ ]3 v! n% ?  f8 c7 @# B% ~) C) g
STP:  db "STP ",0dh,0ah,'$'  U+ k7 f, ?' Y( ^2 |" ~7 O: f& [8 N
FWD:  db "FWD ",0dh,0ah,'$'
( T% J- Y0 [' `7 B# j# R. ~+ N7 _RWD:  db "RWD ",0dh,0ah,'$'
( g3 Y: |/ I7 W% v4 CRTM:  db "RTM ",0dh,0ah,'$'7 E( Q% ~+ s5 N# Y: S0 @
LZA:  db "LZA ",0dh,0ah,'$': e* W# ]7 j5 R
REP:  db "REP F ",0dh,0ah,'$'' y0 W: ?' M3 |, @

2 v9 z/ Y  f, ~! \$ x7 M0 P' M" o+ X/ EYS1:
4 K2 ^8 i# [' Y# i6 H: v     MOV R4,#20% A0 u+ Q* `& T) e( Y
D1:  Y* s% l  d3 n2 s
     MOV R5,#20
0 P" T/ X8 H' C     DJNZ R5,$
4 a4 F* P6 m" }+ D# A5 N; l     DJNZ R4,D1
/ n- F% @$ n) b1 b  F/ k     RET- H) W) B4 S  H( N

, s; [( t1 w6 l8 b- TYS2:
4 f) h5 O% W  g     MOV R4,#10  j  i$ M% |  b8 o0 h' {, c( y) W
D2:
* O: R4 K- Z. u( F  K     MOV R5,#235
+ @; Y5 Z- H- B/ A/ c7 L     DJNZ R5,$
" Y) K+ m# A: c! [4 H% n     DJNZ R4,D2
- o6 K7 t6 a9 \9 E* b     RET
8 w4 j  p: ~  |' |$ K' N7 ?7 G! g% L* z8 V4 T3 R
YS3:$ V9 e" G7 B, D1 P) p
     MOV R4,#2) v0 Q3 i0 R- o
D3:$ D8 @  k* }8 `2 E- d2 e* \3 W
     MOV R5,#248' k) ~. {1 G7 m* L" a, r
     DJNZ R5,$
# i1 \' B9 w% X2 {; [     DJNZ R4,D3
! ~+ X* \6 o! u- M- j. R4 S     RET
/ k: y. ~! |7 ~9 o" w) i- T8 S' v1 n! O. n- x1 I. T
YS4:
" K, f% E$ f! M6 b; T     MOV R4,#2004 [& u: h" ~* w7 ?9 j+ d
D4:3 N) }4 }. T6 \9 F9 }
     MOV R5,#2481 J. `1 m6 ?# `$ r- C
     DJNZ R5,$6 B/ K3 E4 w3 p( U: c7 }
     DJNZ R4,D34 O7 \2 v, n6 v8 ]. \; e- h
     RET! |! N  E5 i3 i) @4 ^' N% T7 h( S4 O4 A
     END
! K% i+ p( R* w5 `& x
' K1 w$ t$ I+ g& ~5 T- z有了上面的软硬件,你可以舒服地控制你心爱的STUDER录音机了。
' l, Y) E  P6 g' a  p2 g是不是很惬意,嗯!
" o) z1 |+ Q! I( J1 u- y

评分

参与人数 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 | 显示全部楼层
最终的样子,有点简陋哈!
6 Q: x- \( u- ^1 C! I& I YK 005.JPG
8 Q$ s6 _* Q1 w# O8 B# G: c
发表于 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 | 显示全部楼层
洋为中用,真棒!我得试验下: X# n( R. y. P
发表于 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
5 \& }4 J9 c3 f最终的样子,有点简陋哈!

, v. z+ y7 d3 r) V* d; q这进度怎样?
您需要登录后才可以回帖 登录 | 注册加入

本版积分规则

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

GMT+8, 2025-8-13 02:49 , Processed in 0.074186 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2013 Comsenz Inc.

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