收藏本站

开盘机音响技术网

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

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

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

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

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

x
本帖最后由 zzrs 于 2012-2-18 12:40 编辑 6 n* {4 n# r; R7 f8 F
1 V0 \. B: v: L
本人曾在论坛发文详解用计算机实现控制STUDER录音机与大家共享使用心得,下面我再与大家分享红外遥控STUDER录音机的方法。/ M. D* Q' g- P0 u( o

% K- N- X4 E, c) F& ?6 o说明:
9 {& o: }; Y3 W. F7 N2 l1、STUDER录音机控制代码在《用计算机控制开盘机》一文中已有描述,在此不在赘述;
7 }0 m- M. _3 X2、阅读此文需要了解8051系列或兼容单片机电路原理和指令系统和汇编语言程序设计,在此不作更多解释;' L. h$ ]+ @8 U: \, F. r+ X( [
  N1 ~2 N4 c5 k4 u/ x
一、基本思路" b( U% S: a5 |$ _1 C9 L. Q- w
使用现有的红外遥控器发送指令-->单片机系统通过红外接收并分析遥控指令-->单片机将遥控指令转换成STUDER录音机控制指令并通过串行口发送给STUDER录音机-->STUDER录音机执行相应动作。8 c% [0 G% G7 I! F7 f) d5 w) c6 A: I
8 j% z) t0 U; `$ t( R
二、红外遥控器0 u0 t- z$ r- z* v0 m
我找了几款红外遥控器,但大多不好看,感觉无论如何都配不上我们心仪的STUDER录音机,后来发现苹果的遥控器小巧、精致、时尚,虽然与STUDER伟岸的身驱对比强烈,但它们骨子里都有高贵的气质,还真是门当户对,因此决定就先用“她”与STUDER配对了(虽有乔太守乱点鸳鸯谱之嫌,但本人还是乐此不彼)。
3 U( q, w2 n8 E( Q1 Y$ r; c Apple-Remote.jpg
9 T& Z! v1 N: P5 s( g6 r好了,为了使用这个娇小的美女,我们首先要知道苹果的遥控器各键发出的指令代码。如何得到这些指令代码确实不容易,因为APPLE公司不公布,不要紧,我已经用电路分析得到这此东西,下面送给你。, h4 t! R) b$ r' _9 X# }
Apple-Remote - 副本.jpg 9 `/ u* e3 T( J
在我的示例中将这些键定义为STUDER相应的控制功能,对应关系如下:
' q. a9 M. k: F; @# v7 P Apple-Remote - 副本.jpg ; O$ g8 C6 o. q" c/ q6 {

3 N+ c4 i2 x( o2 Q+ A6 o; S5 d1 W三、红外编码5 U, x; e) P( x: h! |
红外遥控编码国际上有一套通用的方案,即一个指令由32位组成,即一次按键,红外发射管向外串行送出32位指令。- ]/ ~- W% N$ B. v
前16位为设备码,主要用于设备选择,不同设备先此码应不同,以防止误控。1 D7 g; L# H7 t# b8 N
后16位为控制码,主要用于实施具体的控制。! T4 B* I5 K6 j8 Y8 w
这16位中高8位和低8位互为反码,以提高可靠度。9 ^" v" h7 p# I3 e+ G& z
7 t4 n  ?0 e) a7 U8 Z' x3 S1 f
以播放为例,其编码如下:6 d6 m, p5 m; }9 G
00000000 00000000 01011100 00000000
4 r: |/ l2 L: I" _, p
$ X9 c) }5 J# L: H5 O! h你会说:这串编码不符合规定。没错,它的确不符合通用规定,这恰恰是使用苹果遥控特殊的地方,请你记住了:设备码为全零,且低8位与高8位不是互为反码。" ?( s4 \2 l* q" j2 R1 I
! t/ N: `, Q( b  a% [- E) ?- w* v
四、单片机系统/ S, E" m% }3 z
这里采用了应用广泛、价格低廉的51系列单片机,原型机为INTEL8051,但有大量的其他厂家兼容机,全部通用。在此我用了AT89S52,这是一个8位微处理器,主频可达33M,片内4K程序存储器、125B随机存储器,四组8位接口,内置串行信功能。先上图给大家。
, K$ l9 m% z# _0 x( h  ?- F c51.png ; i, B* l. }$ J% u- w% `5 o

; m# a2 K$ `) Q* M# T# q电路很简单,功能如下:
* T& h& L* q  x6 H0 F: r1、一个AT89S52单片机作为核心;& i2 @% m+ H, \" N
2、一个TL1838为红外接收头直接串行输出数据信号;$ Q# W/ G: @8 a( s( x
3、单片机的P3.1(TXD)串行输出控制信号到MAX232转换电路,将TTL电平(5V)转换成RS232电平(12V),以适应外部RS232串口设备的要求;
, n8 C. {& N. Y7 y! D4、一个9针D型插座用于连接STUDER录音机,连接对应关系请参阅《用计算机控制开盘机》一文。2 F- Z9 H# z  {
- D. k  p# n/ \* Z
关于供电,你可从STUDER录音机的RS232串口取出一个25V电压,用7805之类的稳压模块给此电路供电。
# E) [3 f1 h% J8 r
& B+ s" D, d6 q; U! v6 q& U' g6 z8 X* Y. O2 \) f
五、控制软件
% y+ _. A( @5 I+ ?8 {. s' ^
控制软件用汇编语言写,源程序如下:
) K& q7 L3 i% f8 K     ORG 00H
1 Q, L* G* }  ^5 A7 u     LJMP MAIN/ Y5 M( h$ s/ H
     ORG 30H, ^. s3 ?. O. `: \- D
MAIN:
: H1 T6 ~/ c9 }- F. d  H. H/ Q     MOV 20H,#00H  ;设置串口工作方式,速率9600,(11.0592M晶体)- P9 y, }7 Q, x0 ]# w3 {9 H
     MOV TMOD,#22H  ;22H* e" k+ P* ?0 x% g& Y# |' G. K7 `# }
     MOV SCON,#40H  ;40H
+ _' b. `! S% P, B4 O     MOV TH1,#0FAH  ;F3H" _5 K' j) J* b' N6 M) U2 ?9 v4 j
     MOV PCON,#80H4 Q4 E# a8 i1 L3 K+ M2 h$ s
     SETB TR1) _. y8 V: W, P5 m
START:
/ H4 U* N1 l% W: ]) A4 c     JB P3.7,$ ;遥控信号处理
& H- k- _! U5 Q8 G0 rSB:/ c& }8 i/ O+ O# z
     MOV R4,#8   
$ F  I0 e# ]2 U' w6 C2 ASBA:
% \- S8 y- e# l9 g     MOV R5,#250
& t& H5 Y% {, I5 b% g* p" e3 M: |, aSBB:
" p' u4 Y+ n; D) s     JB P3.7,SXB1( z% |4 r2 {, L3 V8 n0 `6 Q
     DJNZ R5,SBB; M2 c- a1 [# a1 ]9 j  C' W
     DJNZ R4,SBA
' h2 }( p9 {! h3 w6 U/ h: v     MOV R4,#2
* r" W+ J5 Y/ h, C) U) J: i1 n  R     JMP SBC
% I, [  h  J0 K) t! C8 k7 PSXB1:2 Z7 c6 Z# x9 I: z: Z3 E- c
     MOV R5,#5
; t4 w# O. G- V. V2 d4 H( jSXB2:                S$ J/ [0 J. U& |9 K
     JNB P3.7,SBB" H+ ~5 \3 N1 F" N4 E
     DJNZ R5,SXB2
$ \, i; p$ V$ \, d- s     JMP START
3 ~- @& V2 A6 ^$ u6 I  B% T" k* \SBC:0 Q; ]1 R7 U7 l
     MOV R5,#2508 J! j) j1 c3 m9 P7 M# j8 W
SB1:
, E: f* j- T' j% S! C! s+ ?7 M     JB P3.7,SB2  
1 C1 T9 d8 a( w4 f' b2 ?: r5 s     DJNZ R5,SB1
- B) G' y- Y. u7 U- V% W+ R DJNZ R4,SBC
4 E% T+ C" m5 [     JMP START
9 p" H$ Y' C' W1 \! z) N4 e$ `SB2:                 
: m$ r! `, L) h. j# J3 h& q     MOV R5,#5
2 Z2 k$ X: _$ V3 ESB2_A:
% d' k4 E8 Z% I& D- D     JNB P3.7,SB1* g: o; \% [- }7 F' u
     DJNZ R5,SB2_A$ ^4 i: X- k* r  P
     MOV R4,#33 \7 V/ C" K2 p, f( w0 V
SB2_1:
  e4 V( n" C7 m) u2 `" V3 [     MOV R5,#250
  h3 D7 D  `' R% H$ h* p' t( T% RSB3:                  % [# l, ^3 Y( G; A  u
     JNB P3.7,SXC  Y, K% q9 O1 V7 _* u  w
     DJNZ R5,SB3; Z$ E3 j  Y4 s8 n' c/ E9 T
     DJNZ R4,SB2_1
9 M# u  V% ^5 Y9 w& R) G     MOV R4,#21 R" m' |& }: }- H3 q4 Y7 c
     JMP SB3_13 |5 _+ J5 L7 G' J6 s0 y' c
SXC:                  : L+ C+ L+ [. ~$ \" T4 o
     MOV R5,#50 H3 G  ?2 R. E( n" U  {$ D- r
SXC1:
' h  q3 r9 T2 k% X     JB P3.7,SB3
( T. G7 l3 k- m( u7 }& y     DJNZ R5,SXC1: ~  K& l! m& b; o5 f; m! r1 R
     JMP START
' y, H' }" I- z9 y6 e: LSB3_1:                 
6 j( ~2 ~8 l0 G3 w, [     MOV R5,#250: N$ f' M: q6 h) s" X( a
SB3_2:% D& _) ]' _& k  Q# [
     JNB P3.7,SB47 B; d+ D6 o& s5 s
     DJNZ R5,SB3_27 j9 L9 `6 R- ~0 F: Q( L) W
     DJNZ R4,SB3_12 r* J5 i" P; F$ g! C
     JMP START% V5 _1 h6 K* ?8 D/ K
SB4:                    
, t7 P( A5 F* o! z; [     MOV R5,#5
3 B9 r4 P: ~+ s& c) ZSB4_1:; Z8 \2 q! [! H: {* _
     JB P3.7,SB3_22 d: [0 ^- e# ^% U! f
     DJNZ R5,SB4_1! v7 ?( ^8 _. o6 l6 e
     MOV R1,#1AH  0 e! M% h+ U1 d! D3 i
     MOV R2,#48 V2 P+ I" i$ h/ t) x) v
PP:  MOV R3,#8
  s- s# O1 G! F  u! x! p/ ^% z: rJJJJ:$ r: y' N: Y4 o' n0 _1 O& m! t
     MOV R5,#2508 t9 e# j9 T: `* F; z% U
JJJJ2:               
) V8 w! F$ W; L' i! Q     JB P3.7,JJJJ3) m; H2 g0 l0 X1 r6 R1 e
     DJNZ R5,JJJJ2/ @: J5 {4 H6 }$ F5 i/ j
     JMP START; K6 T, Z! j7 I& h! d& }# [/ d- h
JJJJ3:  V' t3 a/ y' {8 M& `' h$ D, t
     LCALL YS1  
5 P3 A( R  h3 o: a* C7 h% m" g# R! J     MOV C,P3.7   
5 ~9 \/ y/ L3 p" o: r     JNC UUU      ( x' M+ x+ h6 h2 t
     MOV R5,#250
3 H5 |4 N& L) }$ p* \JJJJ4:
2 F7 O+ ?8 `$ D+ S0 f8 i$ [     JNB P3.7,UUU
% j7 i) _2 k. }" J  U/ ^- @( [6 R    NOP: T) k& x% O; @! }8 F3 A
     DJNZ R5,JJJJ4
$ |% P) `- h& @5 u     JMP START1 G8 z9 M" s9 J7 @' S
UUU: MOV A,@R1  # @: A" A5 e, r% |. G3 J
     RRC A           8 }: g3 S3 t3 O$ G7 w; B
     MOV @R1,A       : F* k; o+ W5 B+ E! n  y9 h: J
     DJNZ R3,JJJJ   
6 |! ~, g7 T  W9 A* r& D     INC R1       $ p3 X8 P: Z- l7 D1 A
     DJNZ R2,PP   ! c/ R6 Q9 |. r- D' w& I" P

% i  I. G% T1 [0 w7 ?0 T/ q     MOV A,1AH
0 E' A6 g/ P& M$ T     XRL A,#11101110B$ g& |% |  x, x  q
     JNZ EXIT
* ]8 b! I0 I& `5 y2 I5 S1 U& @     MOV A,1BH
5 E$ b* P- i7 r     XRL A,#10000111B
; Q, |# f: ~# I  q, M# ?     JNZ EXIT % {5 ~& ^7 ?7 d* D0 K) n& O
     LCALL YS37 ]5 p* p7 z+ z
     MOV A,1DH
: u+ q( G$ v, |4 c' v3 w! E1 J3 s     CJNE A,#10111100B,EXIT9 N7 `+ B5 g5 T/ c& M
     LCALL YS3% b. D9 [" l4 O
     CLR P2.6  ! t, `  Q& `3 L0 ?
     AJMP BIJIAO* T4 D8 E9 O/ C% L" n, p, U
   0 `  `* @& H+ h+ Q
AA:
+ D& ?. b: r* R- u* D9 c     MOV R1,#25; s, \) N" h! d9 H# E6 T
XX:
* A. Q$ J" O$ I4 Z     ACALL YS2" [- k% e3 X" J7 @2 R
     JNB P3.7,HH 9 T* C0 w+ R$ n- ]0 L+ ~
     DJNZ R1,XX# `  N* G1 q! k; [$ s0 |
EXIT:    4 E. l, p# \2 P, h2 a# C. @
     AJMP START
) u6 |: ]2 R5 D7 j   
6 z! ~+ w$ Q9 K0 w, }, wHH:6 J- F  l8 Y- \
     MOV R6,#4" B: K, c9 Q0 r8 c6 Y( }0 d) R
S: 7 T" ~& B4 |. E) x' d4 X
     ACALL YS1 ) V' \8 p9 D7 J# X- Q
     JB P3.7,EXIT # N1 n$ `+ k4 x. Q6 w- K6 Y
     DJNZ R6, S
& P' v5 |7 `5 L: _. R     JNB P3.7, $  
4 f3 L7 \9 j$ T# Q8 z     LCALL YS3
6 p( l- |3 [" B8 K1 p     AJMP AA
* a' ^% t, f; F( f  r9 {$ R' LBIJIAO:7 d/ y6 _( C, O
     MOV A,1CH 8 x2 ~9 X1 `- e" c
     CJNE A,#03H,N1  
% W* p, p9 s3 A' Z3 f     MOV P0,#7EH   
7 H8 ^) t4 v5 Q                      + ?- r9 N8 O5 N& Z! x9 A
;处理STUDERV录音机控制码& H! D/ v+ {  z* w4 q
N1: 5 _6 w. T7 l" y
     CJNE A,#5FH,N2 ;播放键7 z" }) V! \3 u" q* ~3 j) J/ l
     MOV DPTR,#REP
) \. [& L, k; j: @     ACALL SENDA
/ |7 Y0 ]( r! a/ L     ACALL YS4! l4 x0 k7 k; u$ C7 x- ^* t( j7 `
     MOV DPTR,#PLY
" d- e) d$ y" A* P2 v! Z& T9 o     ACALL SENDA
! l5 A& u8 q7 E5 P3 hN2:% i0 y/ l3 D- l& V1 |& `
     CJNE A,#5CH,N3  ;停止键
; M/ O+ b/ }: @- V! `     MOV DPTR,#STP
2 G6 ?! C% v4 {: E9 R     ACALL SENDA2 ?0 ]) m+ B. j9 u1 G; Y
N3:
) h0 l  b6 k7 ]9 }6 C     CJNE A,#06H,N4 ;快进键4 Y0 V( M% o4 o6 x
     MOV DPTR,#FWD  H& G% c3 p" {. n0 e' @0 E+ [% k
     ACALL SENDA; [8 A- A9 N# |" O2 ?
N4:
. d1 T; X, ?; S- n2 ]% w     CJNE A,#09H,N5  ;快倒键$ _& V  [$ g, G
     MOV DPTR,#RWD* o. F9 B+ U+ n" Z0 B
     ACALL SENDA' _  Y# M: ^* D5 V0 H& m
N5:
5 k$ N' G8 c" _5 L      CJNE A,#0AH,N6  ;置零键/ K1 t: X* T1 n' W5 f% x
      MOV DPTR,#RTM
0 H  R2 R0 f6 P6 |( G4 r     ACALL SENDA
9 t: _! \* H6 O  g3 _- nN6:: A8 F* T, L9 ~6 ^+ _
     CJNE A,#0CH,N7  ;定位到零键
2 g  W( t7 R7 A5 T6 ]$ b- s5 R' X" n     MOV DPTR,#LZA! x9 y( y; V4 \- v- `5 L6 _8 C
     ACALL SENDA
! [; s( ^4 w. E" o, d  _N7:
5 K# M! @& y. @/ `: t     AJMP AA
) e8 @, t  i8 {. T' VSENDA:
# M$ E' j: y% }. z     CLR A
) c2 r) N# J/ A/ F1 Z     MOVC A,@A+DPTR
& Z% \' y$ I  b( O8 d     CJNE A,#'$',SENDB
+ ?+ f0 `2 v0 V' e- c, _' Z     AJMP SENDC
6 f" B) Q! N' h4 W* _) ~SENDB:
6 Q/ P4 S7 n3 l" Y# m+ b9 a; X     MOV SBUF,A/ Z& k. G# x+ D+ g: s
     JNB TI,$
7 L* q- }2 S" s9 V. L" @: c9 K     CLR TI
8 a, M" j( x  W* X     INC DPTR2 S# ~* i" Z) ]9 z, J( d+ w
     AJMP SENDA* _/ E% G5 e$ s9 `4 ^  R5 L
SENDC:
- E$ T. _$ P% z     RET. p) L8 G7 [$ ~- A$ f0 A) i( g
- z4 t! D8 k2 N' i6 n6 T" ^. }: i
PLY:  db "PLY ",0dh,0ah,'$'
: w. S" C7 b3 H1 S5 E! f' DSTP:  db "STP ",0dh,0ah,'$'
; H7 `/ j5 S* Y# @: ^4 hFWD:  db "FWD ",0dh,0ah,'$'( l7 Y& D4 ?% h5 y
RWD:  db "RWD ",0dh,0ah,'$'$ v6 A8 ~! z" R% p; W
RTM:  db "RTM ",0dh,0ah,'$'
' K& g$ I2 ^. N) H" X( i' h4 Q+ V5 lLZA:  db "LZA ",0dh,0ah,'$'
8 y6 t  B7 E0 c$ |# w9 l3 {REP:  db "REP F ",0dh,0ah,'$'
8 `% [: i- d' z  d" K8 Q& p9 D2 Z- q
6 w* ^, @& v4 R3 P( YYS1:) ~' r- W1 l5 A3 c$ }$ ^# F
     MOV R4,#20
' Q4 o' D0 `5 H& @$ D8 W6 t$ }D1:% A3 [0 q% ^( \
     MOV R5,#20
7 P& O) `. o9 ]3 h     DJNZ R5,$
! [6 B6 m$ ~# Z- F  }/ O( k     DJNZ R4,D1
3 z: w7 {+ n8 l6 v6 ]0 O2 b# L" r3 r     RET, ?4 _$ J) @. a$ s( u6 {

% c( h7 `: G; \# x" U) C9 \) q& dYS2:
/ ]5 [6 r( B9 J     MOV R4,#10
8 q1 {6 Z3 U+ M2 `" U9 Q8 |$ }( KD2:
7 V. @# b9 c' s& D. q. m* ^     MOV R5,#235
8 t/ Q; O" y: B8 ?* D: x, m. d     DJNZ R5,$7 l! r% H& |) ^( H: ~& n7 F
     DJNZ R4,D2
' @7 g3 {' i0 w* j; B     RET
% _; q/ b: U/ d, g+ Y7 A! n0 w; k5 B+ s
YS3:
  M! R3 `4 V% L, E+ k# ^( k     MOV R4,#28 E% S  b6 V/ C/ c
D3:
' H" p: e9 x! V) ]- U% ?# B     MOV R5,#248
7 A6 b0 u3 C6 Q5 @# z     DJNZ R5,$
4 {# u; ~6 d" q$ y4 `/ K     DJNZ R4,D30 j5 p1 L' A/ v  Q6 c% ~* z* F! f. ~1 m
     RET
, t0 ^1 I/ f$ x2 y
4 B% s& q3 `! t! {2 v9 AYS4:) i$ w* R! Q- Y( [
     MOV R4,#200
" R% `: h) F4 W1 v' |+ V: nD4:
9 O) p# x& N! M. n5 V, h' m) E     MOV R5,#248) _/ ^7 N# b1 }" Y! `8 C
     DJNZ R5,$
2 F7 V' Q5 Z/ q     DJNZ R4,D39 |& R% o2 x0 _  W
     RET
9 o4 F/ H6 b8 w" v& J     END
; a* }, t# [9 X' k+ i* N) r; k& l  i+ r  y% S9 l( l' u2 k! y4 w( Y
有了上面的软硬件,你可以舒服地控制你心爱的STUDER录音机了。) _6 r: D, l! Q% k, J4 G3 i
是不是很惬意,嗯!+ a1 _: q& M0 r2 m4 G

评分

参与人数 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 | 显示全部楼层
最终的样子,有点简陋哈!2 k$ I; Y( ?0 p! e. C: b% X7 p
YK 005.JPG
. k; H. E* u( ~; \4 @3 d% o( _' g/ V
发表于 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 | 显示全部楼层
洋为中用,真棒!我得试验下
. F( x; q2 ^7 b$ g
发表于 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" z% \# f  R* y7 ^  N/ V
最终的样子,有点简陋哈!
( I' k- H$ A: K9 x0 _4 @! b
这进度怎样?
您需要登录后才可以回帖 登录 | 注册加入

本版积分规则

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

GMT+8, 2025-12-2 21:06 , Processed in 0.170902 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2013 Comsenz Inc.

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