收藏本站

开盘机音响技术网

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

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

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

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

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

x
本帖最后由 zzrs 于 2012-2-18 12:40 编辑
3 ^/ c1 f* E; X; }) i, w
( R9 v, j8 a5 Z' E( n, u, z, Q本人曾在论坛发文详解用计算机实现控制STUDER录音机与大家共享使用心得,下面我再与大家分享红外遥控STUDER录音机的方法。
- K9 D/ h5 I1 O0 B, a# m; a+ X: ]
6 l$ t. Z" J+ s4 u1 T; L6 ]说明:
! ]$ V- D' L; w% y% \5 c" _1、STUDER录音机控制代码在《用计算机控制开盘机》一文中已有描述,在此不在赘述;
6 F( g3 i7 R- ?2 r* g8 u" w2、阅读此文需要了解8051系列或兼容单片机电路原理和指令系统和汇编语言程序设计,在此不作更多解释;; e" [0 J2 d( j0 W: ?1 w1 ~

& h6 M, h8 A! X% s一、基本思路
/ {' ]4 C& v( i; R- E8 j使用现有的红外遥控器发送指令-->单片机系统通过红外接收并分析遥控指令-->单片机将遥控指令转换成STUDER录音机控制指令并通过串行口发送给STUDER录音机-->STUDER录音机执行相应动作。6 h7 ^" u3 t6 o
5 k" H) G! v# l, \$ s. O4 N; b5 g
二、红外遥控器# h* z" O, H6 b4 M
我找了几款红外遥控器,但大多不好看,感觉无论如何都配不上我们心仪的STUDER录音机,后来发现苹果的遥控器小巧、精致、时尚,虽然与STUDER伟岸的身驱对比强烈,但它们骨子里都有高贵的气质,还真是门当户对,因此决定就先用“她”与STUDER配对了(虽有乔太守乱点鸳鸯谱之嫌,但本人还是乐此不彼)。
  w. \& A3 @! ^8 G Apple-Remote.jpg * O8 w- z! B9 r* N) Y6 n  o( D' E
好了,为了使用这个娇小的美女,我们首先要知道苹果的遥控器各键发出的指令代码。如何得到这些指令代码确实不容易,因为APPLE公司不公布,不要紧,我已经用电路分析得到这此东西,下面送给你。" s" j) e! s7 Y8 {
Apple-Remote - 副本.jpg
5 l& s! a; B0 h2 k9 W在我的示例中将这些键定义为STUDER相应的控制功能,对应关系如下:
; F4 v' \" z$ a4 h4 M0 W Apple-Remote - 副本.jpg
8 p- B. z; |9 @6 h! p; Q* s
8 J+ B3 V2 c5 v1 ?; i三、红外编码( B; L% \( i* @. p; [6 b
红外遥控编码国际上有一套通用的方案,即一个指令由32位组成,即一次按键,红外发射管向外串行送出32位指令。
0 V8 [2 l2 E+ d% A前16位为设备码,主要用于设备选择,不同设备先此码应不同,以防止误控。
$ _$ H  |9 _  h7 Z9 x- {后16位为控制码,主要用于实施具体的控制。
& i% T. @8 S5 {# k这16位中高8位和低8位互为反码,以提高可靠度。# `" f2 f7 B( }! H  H

( ?; b( ]! @9 L: v以播放为例,其编码如下:
  @9 X0 a5 h: ^- d( L4 F8 }00000000 00000000 01011100 00000000. g' r/ [7 B& }; q2 b& M' T

- o8 B3 ]0 @& i3 e2 {你会说:这串编码不符合规定。没错,它的确不符合通用规定,这恰恰是使用苹果遥控特殊的地方,请你记住了:设备码为全零,且低8位与高8位不是互为反码。
: c, ]  Z1 Q' Q) K$ R, B6 K, k# d! Z) V" y* c9 m
四、单片机系统  r- r. d3 `- p5 F$ _% Y$ }
这里采用了应用广泛、价格低廉的51系列单片机,原型机为INTEL8051,但有大量的其他厂家兼容机,全部通用。在此我用了AT89S52,这是一个8位微处理器,主频可达33M,片内4K程序存储器、125B随机存储器,四组8位接口,内置串行信功能。先上图给大家。& P* L' Z3 G( S9 R( @& S. ?  h
c51.png . t- j. [7 r" @

7 n) L+ o. ]; z" u# W! s8 v, X, ^  I电路很简单,功能如下:
2 s2 X- N: a; B% c4 i+ Z1、一个AT89S52单片机作为核心;
6 _3 c3 D9 p$ y& J2、一个TL1838为红外接收头直接串行输出数据信号;3 Z7 `7 c* V* @2 [' c+ R) {
3、单片机的P3.1(TXD)串行输出控制信号到MAX232转换电路,将TTL电平(5V)转换成RS232电平(12V),以适应外部RS232串口设备的要求;
; N* P, p- M. b) Q7 S4、一个9针D型插座用于连接STUDER录音机,连接对应关系请参阅《用计算机控制开盘机》一文。" R- m& T- a4 X. G( j( |) a
4 u+ _$ c% y! w0 J) D
关于供电,你可从STUDER录音机的RS232串口取出一个25V电压,用7805之类的稳压模块给此电路供电。( F" z5 w; d5 P" ]- e# c2 V
- l+ M1 u! S; _3 }  e& T% ]
4 j9 M+ H6 |0 K' k, y; P
五、控制软件& b* P0 I( N: ~8 @3 F
控制软件用汇编语言写,源程序如下:- m0 [) w% f4 Y4 V) H3 G
     ORG 00H
- }: M  w6 ~: t; \' R4 L     LJMP MAIN
1 n4 k$ g% Z6 C0 B1 K: ]3 ~  y     ORG 30H
- N! M# W6 c; Q; TMAIN:
3 J) s  K  z; v; r     MOV 20H,#00H  ;设置串口工作方式,速率9600,(11.0592M晶体)- v3 m( L2 D2 g" z
     MOV TMOD,#22H  ;22H+ B! b7 v3 ]- K5 A1 s) U$ A
     MOV SCON,#40H  ;40H
+ l' k. ]7 j1 w- {& Z1 @, e* {# C     MOV TH1,#0FAH  ;F3H  q( w% _  y+ w4 B* R  |1 U
     MOV PCON,#80H; |5 L& P9 S' k
     SETB TR1& M7 D+ _( z5 |2 R; t& R
START:! j& X1 q8 }; v- d3 s
     JB P3.7,$ ;遥控信号处理
+ ]1 L  ^, H* v) ?8 E8 l5 ?SB:
4 A6 ^7 Z  A+ z: Y+ }) E! r     MOV R4,#8   
% b# j+ N9 x. gSBA:
# e* u+ Z7 Y3 ?& ~% K2 E  i3 c     MOV R5,#2500 @  y/ T  {+ K/ Z( f* N
SBB:
  q) H; f) p$ k* c' Y. W" r+ k     JB P3.7,SXB19 p  g4 p: s! E0 t
     DJNZ R5,SBB
6 a0 W' C3 o$ \% |1 r3 t3 g; N     DJNZ R4,SBA
3 j# @0 f: u; M, o     MOV R4,#2
( \+ j: d' b, r1 C/ j+ |% A     JMP SBC
3 Z8 C/ B, m3 W* nSXB1:
% L4 `& N  M; }     MOV R5,#5
6 a) @' G& T. @" WSXB2:              5 a/ x/ a% p, \1 i( F
     JNB P3.7,SBB
0 j. I& j! k& `* b$ Q     DJNZ R5,SXB2  Z& ~' p6 i- y
     JMP START' ?/ N' @  G& l1 i9 K7 ]
SBC:! n1 }* j! N5 G. R0 K/ w
     MOV R5,#250
3 c* n+ ]7 r2 v4 |SB1:
5 H  X+ u8 `" j; o8 `     JB P3.7,SB2  ) y7 U, c% j* s/ n8 V
     DJNZ R5,SB1
! f$ u( ]% R- R+ Y8 f/ a DJNZ R4,SBC9 O2 O% h% g6 w' Q; V! s5 K; e
     JMP START. k8 ^; k, _+ a$ `
SB2:                 , `0 e3 N9 r$ p# x- [% F. z$ n
     MOV R5,#5
$ n1 P; C1 o9 `* j% C  cSB2_A:
2 T; {' z8 n5 B9 i2 O: H     JNB P3.7,SB1& n8 M3 k0 l8 n" r( q
     DJNZ R5,SB2_A* [/ `$ d" |$ ~& e# ~- O
     MOV R4,#3
+ L+ p% u& |2 k7 Q+ rSB2_1:/ r2 X& ~$ D6 G
     MOV R5,#250; z% k) S/ @5 f& f  T' ^# `& i
SB3:                  
9 I/ {5 x4 m" U$ B, l- N: t     JNB P3.7,SXC1 [/ u/ m* S8 i, T
     DJNZ R5,SB3# I1 h0 m( M7 t
     DJNZ R4,SB2_15 p6 t) C" N- U" G3 D+ p. d* [
     MOV R4,#27 l4 {/ f7 B$ G" _& n4 ?' _; s
     JMP SB3_17 c# p. R# W. a: w4 y6 q4 }' e4 \
SXC:                  
) R) L8 M) X. G5 i9 l  d; C" y     MOV R5,#5" ]+ t* u) [9 C! ^# b4 ?
SXC1:
) J. b1 s. S4 h* {, P: e) \! k- f     JB P3.7,SB39 p$ O. f+ l0 ~/ M1 m$ G5 R# i
     DJNZ R5,SXC1
. n; p& j* ~2 Y" Z0 Z     JMP START" Q# B3 B, V6 R7 N1 L
SB3_1:                 
0 h6 K" O% |: s: [/ j7 r     MOV R5,#250
" y* X. @% G/ `, Q4 T" _, `6 H) e& uSB3_2:
* B& H1 G( ~) n& d     JNB P3.7,SB4/ E6 ^" b, I# k" J$ d
     DJNZ R5,SB3_21 _( E* h3 d% O3 O4 r; ?3 N
     DJNZ R4,SB3_1* M" m6 G0 ?) T' a( O  }
     JMP START9 ]% w7 W$ e% V+ ]
SB4:                    , w+ Q* B" |: F4 a9 ~/ o. G
     MOV R5,#59 X9 a9 C' T" a6 j4 X- i* C8 W
SB4_1:& t8 I& @, d2 x" {% j
     JB P3.7,SB3_23 i) B2 i8 }# F( l2 @
     DJNZ R5,SB4_1
* ]: Z' G3 E+ ^, G5 E; t' r& T     MOV R1,#1AH  
7 a" z1 w, c% `& ]5 J     MOV R2,#4
" }4 r5 u8 ?) `! n$ z. ?1 {5 cPP:  MOV R3,#8  O( j0 V. V4 O" a1 d
JJJJ:  Y/ O2 Q, v* P
     MOV R5,#250
1 s0 [4 W: V; xJJJJ2:               
$ J* h. g9 L& U     JB P3.7,JJJJ3
% Z+ U$ a  _* O$ O7 Q8 _0 e     DJNZ R5,JJJJ29 ]) [. n) S+ ?
     JMP START
8 _9 s; o% L% ^8 `; m. wJJJJ3:4 ]# `+ T# y8 X2 f3 O5 O
     LCALL YS1  % G# ^3 {0 D6 {; f
     MOV C,P3.7   
- ]! ~% {1 o* [: L     JNC UUU      
3 \# L+ {3 O# V5 S# W     MOV R5,#250: [3 R1 T& |" C2 B$ h2 e
JJJJ4:; V" b9 n3 S8 ~! o0 U
     JNB P3.7,UUU. J/ I- ]4 s9 J" e- K0 p, l
    NOP
  n5 f. W5 ?# {, L- _     DJNZ R5,JJJJ4
% C4 s+ [) K' N5 Z8 l9 b: e8 ~     JMP START
( a8 ~4 {6 G4 s6 u1 @* n: A" f1 |! q  kUUU: MOV A,@R1  & x/ R3 G! W& S+ e
     RRC A           * H0 p" ]4 X- [% D
     MOV @R1,A       1 q/ e. R1 [' U: d# i
     DJNZ R3,JJJJ   3 ~5 X. W- g0 q& V- r9 x( q! |- X
     INC R1      
' z! I+ k- ]( P# G7 y" D) S     DJNZ R2,PP   8 u- P! @8 @, u; `+ X! ]  ?
0 C& ?$ @! B: t( q7 Y
     MOV A,1AH 0 N: g5 Z* g1 H) G7 I7 T
     XRL A,#11101110B
2 g% C: k: _8 \4 ]# u# `" t: @* {     JNZ EXIT $ p- N6 F5 D4 h4 f
     MOV A,1BH
& |" d; n& P8 ^) ]     XRL A,#10000111B* V' J9 P2 ?$ Q
     JNZ EXIT
& q9 D+ q* ^& Y) E% M- r7 ^     LCALL YS3
2 |' X: V+ c5 C. E! O  }     MOV A,1DH
. X' o) {; r6 h& U  k     CJNE A,#10111100B,EXIT" y/ ?+ C. S% O7 `2 @+ e/ H. t
     LCALL YS3
7 Y4 B9 J; d7 ~1 A. g- V! g+ M; x6 k     CLR P2.6  * K1 z3 b7 v4 }2 b, B+ v* d* h! r4 d2 E
     AJMP BIJIAO
, W5 A; k9 |. R+ V   % |9 r/ v# L9 a4 s7 d& f) n( b1 Y* u
AA: , f0 y5 [! Z8 `% {( o- p
     MOV R1,#25
/ B" t* y9 {& ?7 AXX:
! @3 b- t. b3 i5 b9 g! a" Y  v     ACALL YS2
  P5 m: u+ G/ X2 e! G     JNB P3.7,HH
2 K/ b6 `3 v& |; t3 J     DJNZ R1,XX. n3 a  S, K' J3 g$ q! `# k% D
EXIT:   
0 G- o. {9 Q( D& T- J7 V) r* v     AJMP START  f" Q5 s7 _% w* P* _3 r4 G
   
# W5 V7 p1 X. ]9 j$ `: MHH:! k" s; i+ d# ]
     MOV R6,#4
* q4 l1 f2 L& s8 zS:
1 i. K! b3 X# m- q5 J     ACALL YS1 4 D% ~5 [9 I  N; ]7 d& p( E
     JB P3.7,EXIT 8 r& A( O0 w; [2 a1 i* F( Z# U) H- Y
     DJNZ R6, S ) V7 u" Y( A' y3 q* {4 @5 `3 X
     JNB P3.7, $  1 V/ \$ v/ N/ }/ r$ n/ h
     LCALL YS3  ]) t5 K: z0 k# N8 ~) `
     AJMP AA
, r3 o$ _9 S) v4 MBIJIAO:1 G" ^- h; I# L
     MOV A,1CH
# f& N# Q4 p$ V) H9 Q; q/ E     CJNE A,#03H,N1  
% @  x5 m- A  Q: C/ j, K2 q( I) ~     MOV P0,#7EH    " C9 ], S( x0 t6 ]/ x4 O
                     
7 I& n. n6 w- P9 ] ;处理STUDERV录音机控制码
2 K6 L4 J9 O2 U; T* P% _7 I5 J$ XN1: 8 R$ O3 f8 L: R. u
     CJNE A,#5FH,N2 ;播放键
! z# W) ^  Z! D, j     MOV DPTR,#REP
& N: j) I! D, k. e# K* x8 J     ACALL SENDA
2 [+ ~" D$ P* c/ Z; b% m     ACALL YS4( @1 G3 B, f" o( ]7 `' S
     MOV DPTR,#PLY
+ `& o* a: _& J6 b. s8 ?5 G& D     ACALL SENDA
# `% a% Q0 H5 \N2:
2 _8 i. Y! }0 G8 b5 k. F$ V  _     CJNE A,#5CH,N3  ;停止键- @" b4 z- N  F& X9 p) f3 [, p6 {
     MOV DPTR,#STP5 ?/ \. P3 Q+ a' D$ D  f
     ACALL SENDA
4 X% j+ F4 E4 o" ?5 }$ W. MN3:
2 i' ~; ?* y) Q3 O( V: g     CJNE A,#06H,N4 ;快进键
  x  c$ g9 I) c3 K0 j- ~1 |5 O6 I     MOV DPTR,#FWD% s- \# q. @+ e  Z- E2 O  b! `& z3 h
     ACALL SENDA; @0 `  h9 O% j# r$ w/ g
N4:
4 O1 a: ?# v% [7 `1 h- _     CJNE A,#09H,N5  ;快倒键  H8 x* I: V& c: }" ?/ J0 ?
     MOV DPTR,#RWD
. z' Y9 ~  l% y3 u     ACALL SENDA
: e# z' B4 ], T' \, @) zN5:
5 m( f' k# N# ]6 r# P- k6 W      CJNE A,#0AH,N6  ;置零键% ]8 V' ?5 W8 ?# j7 J
      MOV DPTR,#RTM
/ E( b* m+ J# X7 \0 E' d& v     ACALL SENDA4 }% F, g: b" o3 w
N6:
0 T6 S. e1 x/ m* J     CJNE A,#0CH,N7  ;定位到零键) k+ M3 z' O$ Z7 o
     MOV DPTR,#LZA! Z# d4 U  V) i% W+ A, g0 g9 _
     ACALL SENDA
* }$ p+ H" s' }N7:/ H1 g) S! c2 P9 G' O
     AJMP AA9 m, @( `% n# [9 r" a, I3 ~1 s- a
SENDA:
0 p& A4 |1 y, P2 V0 l. i     CLR A
+ Z0 A8 i, w0 T- y# W; q$ O     MOVC A,@A+DPTR
4 a% B! u/ k0 t9 e     CJNE A,#'$',SENDB
9 E) ?, x, T) [+ L: p1 R' Z$ j     AJMP SENDC1 K, T0 M- f! v; l+ o3 D' f: b
SENDB:. v& L- _6 |" L( ?/ E
     MOV SBUF,A
, C8 @5 m: b8 `& @2 P! S! P% Q     JNB TI,$2 F1 B* E5 D" g) b: P
     CLR TI
+ K: y* L) S, F% Y     INC DPTR9 Q# X, E2 a2 D/ ]
     AJMP SENDA" e! A" W6 f4 ]) a+ ?' B. ~, F
SENDC:
0 S0 {' l. G4 |- U& ^# w) J; \     RET$ v7 Y- R2 m. B: f
' c$ s$ e1 y4 }1 [& E. G0 Q
PLY:  db "PLY ",0dh,0ah,'$'4 `! G; L6 ~. N/ {4 }
STP:  db "STP ",0dh,0ah,'$'
; m: E6 `; Z; c. r+ hFWD:  db "FWD ",0dh,0ah,'$'
$ k, U' Q' p# w0 c1 ]" |RWD:  db "RWD ",0dh,0ah,'$'
# i! A: E( n8 g$ hRTM:  db "RTM ",0dh,0ah,'$'* j; A0 A! K5 A* Y: f8 g2 e
LZA:  db "LZA ",0dh,0ah,'$'
% U5 b6 C, ^3 S, J2 nREP:  db "REP F ",0dh,0ah,'$'+ P0 n4 r1 j! ?( ~2 X
0 K8 D3 ^/ w8 u& D. p7 C
YS1:. m& ^$ m" l: b' j
     MOV R4,#20$ S- |, g& B# e2 k2 {- W, [1 G0 f
D1:- {; L' U6 C' S' ^/ ?
     MOV R5,#20
5 j( M/ a8 z/ v5 D8 ~8 m     DJNZ R5,$
0 Q9 W; R1 d) f# P: u9 e( F     DJNZ R4,D1
) e6 a9 C+ Z1 [6 O  n" C: Z     RET
) p0 j3 x) h7 }, ^; }# C4 Z. H5 ]- m  k2 k3 n
YS2:
. _1 ]7 z' K2 }9 u( y, n     MOV R4,#106 l) h. V* l1 C) Q4 k; J0 x
D2:  \" n1 B4 w3 Z- z4 r
     MOV R5,#2356 d) r( P: _' J/ f% @
     DJNZ R5,$) [3 f! z$ ~4 M; ^
     DJNZ R4,D2
3 F2 _, V6 H) g: o7 `     RET% Q, U! M0 V; B* U) S) ~
8 Z$ s# z$ {3 F2 I
YS3:$ n: S4 |5 A, L5 y9 Q1 d
     MOV R4,#26 h9 d) h0 Z$ X, G1 `
D3:
. O4 D' \: M6 s9 y: u  y     MOV R5,#248# V+ `- {" [' [. `
     DJNZ R5,$" n0 Z; M. ?7 V! y5 d2 y+ V+ M  x: Q
     DJNZ R4,D3
; ]! M4 i- O8 ^. [/ Y6 r' r1 v& [     RET  D% o2 r& V6 f% `
9 |* C* B# J; a0 ?$ V" O6 o
YS4:
: G0 e3 X, A; a' a     MOV R4,#200; X: f5 U  m7 A1 l! m  Q& Z( {
D4:
9 a3 H) W! k% v     MOV R5,#248! Z7 k2 O2 U$ ^
     DJNZ R5,$
! S) q% y6 Q* n9 \( R     DJNZ R4,D3
0 `2 X! a; i8 `5 _     RET
* X- U. f6 e  V' V1 V: g     END
  k% Y( w! |% u; s) K- \
( J" n0 q1 M$ _! T5 L有了上面的软硬件,你可以舒服地控制你心爱的STUDER录音机了。
$ g5 x9 {: K; ?9 [. {- Q. Y是不是很惬意,嗯!( ]- X' d3 }/ F- J4 S: L8 j5 x

评分

参与人数 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 j) i" e  b* o4 j
YK 005.JPG 3 f, e9 y) d( q1 E; U; t; }  ]6 p
发表于 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 | 显示全部楼层
洋为中用,真棒!我得试验下# S$ z% s0 z$ K- E8 u8 [3 K
发表于 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
! a  Y$ V5 e& w/ k5 e8 B; ?/ a* v6 l最终的样子,有点简陋哈!

3 r5 w: i' D# |4 S6 y9 @4 G0 l# ]这进度怎样?
您需要登录后才可以回帖 登录 | 注册加入

本版积分规则

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

GMT+8, 2025-7-11 16:50 , Processed in 0.285132 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2013 Comsenz Inc.

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