收藏本站

开盘机音响技术网

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

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

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

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

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

x
本帖最后由 zzrs 于 2012-2-18 12:40 编辑 + I' L; V! Y( g# s7 S2 O& N9 w# y# f

2 R: Z7 [* S5 o* s+ n) _: `9 D本人曾在论坛发文详解用计算机实现控制STUDER录音机与大家共享使用心得,下面我再与大家分享红外遥控STUDER录音机的方法。
; l/ n2 x* _/ h* g
" V9 w& d& }) L) V* o说明:4 g6 @0 n1 Y/ Y# ~
1、STUDER录音机控制代码在《用计算机控制开盘机》一文中已有描述,在此不在赘述;( H1 n$ k* E( _: R8 o9 ^/ m5 R
2、阅读此文需要了解8051系列或兼容单片机电路原理和指令系统和汇编语言程序设计,在此不作更多解释;
3 \+ Y9 I, H: }% O, _+ t* S( c* o7 t
* L8 z: k$ C2 X/ L: F0 y一、基本思路# y' m0 v7 {# X9 \& F' K  |- O
使用现有的红外遥控器发送指令-->单片机系统通过红外接收并分析遥控指令-->单片机将遥控指令转换成STUDER录音机控制指令并通过串行口发送给STUDER录音机-->STUDER录音机执行相应动作。
7 K! U. T' u3 D
3 n; n/ e9 @% v# S: U' a二、红外遥控器
8 r0 {  C+ Y$ \# h7 A我找了几款红外遥控器,但大多不好看,感觉无论如何都配不上我们心仪的STUDER录音机,后来发现苹果的遥控器小巧、精致、时尚,虽然与STUDER伟岸的身驱对比强烈,但它们骨子里都有高贵的气质,还真是门当户对,因此决定就先用“她”与STUDER配对了(虽有乔太守乱点鸳鸯谱之嫌,但本人还是乐此不彼)。
7 l  P3 e, e5 r0 i Apple-Remote.jpg
2 I9 y. f! S- |7 M/ b: Y! G3 T; Y- K+ E好了,为了使用这个娇小的美女,我们首先要知道苹果的遥控器各键发出的指令代码。如何得到这些指令代码确实不容易,因为APPLE公司不公布,不要紧,我已经用电路分析得到这此东西,下面送给你。
4 \9 K* X2 B7 } Apple-Remote - 副本.jpg
' n% D/ D. w: A; Z; a在我的示例中将这些键定义为STUDER相应的控制功能,对应关系如下:
: T+ p4 l/ `7 o* I5 O% r' W8 _: [ Apple-Remote - 副本.jpg ! ?6 n" }, K9 c! G+ X$ j" ]2 k" y. o
6 e3 J" ]% G$ z( W) x1 w0 ?! Q
三、红外编码# O& u6 Y" e2 _. f8 v, v3 H
红外遥控编码国际上有一套通用的方案,即一个指令由32位组成,即一次按键,红外发射管向外串行送出32位指令。
' v4 X! {1 R7 J  V6 v3 Z/ ]前16位为设备码,主要用于设备选择,不同设备先此码应不同,以防止误控。' K1 m' U: Q, }; @0 b
后16位为控制码,主要用于实施具体的控制。: y, N: S% h  }7 @# ~# G/ ?
这16位中高8位和低8位互为反码,以提高可靠度。! y; K1 u- D9 G1 R6 n0 F6 U4 c
/ K7 L9 t" t/ s3 M! u
以播放为例,其编码如下:0 |# [& [1 ?" ?7 o
00000000 00000000 01011100 00000000
) e/ V& w& T7 x8 f) u5 m. ~
3 a$ L  g  O0 h# B3 R% q: d$ d你会说:这串编码不符合规定。没错,它的确不符合通用规定,这恰恰是使用苹果遥控特殊的地方,请你记住了:设备码为全零,且低8位与高8位不是互为反码。
& U+ |4 @3 S2 M8 h, H
5 R  E. d7 }! P8 y四、单片机系统
: j' |1 Z$ {. e1 p7 r) U9 j
这里采用了应用广泛、价格低廉的51系列单片机,原型机为INTEL8051,但有大量的其他厂家兼容机,全部通用。在此我用了AT89S52,这是一个8位微处理器,主频可达33M,片内4K程序存储器、125B随机存储器,四组8位接口,内置串行信功能。先上图给大家。6 c- Z7 Z5 |6 n* u9 i* O8 ?' N5 c
c51.png * z" A! N: Z( ?# q' M: x" N
: p: D, v; m1 i: h% Z# q$ ~: D
电路很简单,功能如下:0 {2 F2 q& z0 [( v5 c& o6 b
1、一个AT89S52单片机作为核心;/ P8 D0 }) m; i. C/ d" q
2、一个TL1838为红外接收头直接串行输出数据信号;1 Q* `( r: ?: y9 u7 Z! M' z
3、单片机的P3.1(TXD)串行输出控制信号到MAX232转换电路,将TTL电平(5V)转换成RS232电平(12V),以适应外部RS232串口设备的要求;* z8 E  r+ W, `2 ~1 {) B2 f
4、一个9针D型插座用于连接STUDER录音机,连接对应关系请参阅《用计算机控制开盘机》一文。5 d! e- @- j, w
+ n3 z. C  L1 R7 Y
关于供电,你可从STUDER录音机的RS232串口取出一个25V电压,用7805之类的稳压模块给此电路供电。
3 v$ W9 Q& Z0 Q4 n: _# O2 W$ w1 z3 `, t8 W

" \! s, r+ v3 u+ W- u/ H8 _五、控制软件
/ Q8 m6 G9 y4 A0 h
控制软件用汇编语言写,源程序如下:
6 {" T( ~1 Q8 U5 q. q( H     ORG 00H% T* k% X" H2 L8 C  T  X7 l
     LJMP MAIN
0 U" i/ N+ ]7 Y/ Q3 h     ORG 30H
1 A) M1 v* w$ z0 T0 r! N/ I9 {$ xMAIN:2 z3 V* I- }- w1 U" E$ K' t
     MOV 20H,#00H  ;设置串口工作方式,速率9600,(11.0592M晶体)/ v4 g! _7 B/ e, x. C5 w0 E8 e6 u( l
     MOV TMOD,#22H  ;22H( B: ^: x  @, J: }5 ]0 W
     MOV SCON,#40H  ;40H3 y3 t0 ^" a9 d9 j0 k
     MOV TH1,#0FAH  ;F3H
2 E- w( |6 R, E3 o4 B; |" w     MOV PCON,#80H
" y, o/ I. J& h+ |+ `; P     SETB TR1
- y+ w* S5 z# XSTART:  d% S& k, y/ ~! m
     JB P3.7,$ ;遥控信号处理
* Q& J4 {8 S' ESB:
7 E5 }' b8 G) g) n% [9 |7 T     MOV R4,#8   
, z: f, a. c  E% }SBA:
2 t* x# E7 L3 P1 L% Q3 }     MOV R5,#2504 I8 z2 H- N. d, v! i) e
SBB:
* G! [1 i4 X. g# @1 [* b+ F1 m# P8 i     JB P3.7,SXB10 V8 Y2 a/ f% B2 \2 @
     DJNZ R5,SBB1 v8 Z3 d" u( x* {
     DJNZ R4,SBA
" s; t; T2 n8 B: x1 r3 w     MOV R4,#22 ^9 w% ~* F$ a4 p4 P' ?
     JMP SBC
, M( n; ^0 ]  \! Z. x5 vSXB1:, i7 ^+ o. K0 @* a" c0 w
     MOV R5,#58 u& R$ P$ T4 O1 y9 }# C
SXB2:              1 p) b4 M$ h/ f: c+ x3 U! j& b
     JNB P3.7,SBB" C$ l; Q) @, }9 i$ `
     DJNZ R5,SXB2$ B/ T2 F- Q1 y3 O
     JMP START, m$ Y# t4 p# ^
SBC:
# w# I/ F7 H# G     MOV R5,#250  R& p8 h/ i. Z& Q/ ?
SB1:% v5 X. U4 {8 a" v  n
     JB P3.7,SB2  9 s+ O* h. w# [- h: T) D* Q, j
     DJNZ R5,SB14 U! w, g7 s" r3 v
DJNZ R4,SBC
, U; a! Q5 `0 d* E2 ]  I; d& `7 u     JMP START
' ^2 v% Q2 R5 s9 W3 ]9 ISB2:                 
" I4 J7 p. X$ z" o5 b, {9 o3 R     MOV R5,#5" _0 t& y7 j- q3 @
SB2_A:
$ S( g; o" Y) Z* i$ Z# R- m     JNB P3.7,SB1
8 [9 l; B) o3 b5 x/ e; _0 Q     DJNZ R5,SB2_A
3 ^2 L, R3 B! s* q( `- ~0 ~     MOV R4,#33 B1 q" Q5 g2 `, s( }2 L/ u
SB2_1:
2 h% p- |8 m" ]3 ~1 s: \     MOV R5,#250
! c1 l5 L* j3 ]+ K, m9 H3 ^SB3:                  " Q# X( b4 i) {% \* G9 H  j# G
     JNB P3.7,SXC
2 _) K- p. r) ]3 n     DJNZ R5,SB3& L0 ?* y. ]- B
     DJNZ R4,SB2_1
9 D/ T2 d" ~: ]: j" m( N     MOV R4,#2" x( U! Y7 F/ t$ N2 x
     JMP SB3_1$ K7 J( V" n( ]  ?$ ?0 P
SXC:                  / g: T0 \" `* E$ c6 c" w) ^: o$ R. v& x
     MOV R5,#5% Y* O. |+ y5 Z+ F, E: T2 r, m
SXC1:
1 T3 B/ h$ y9 e  F# m1 e- f     JB P3.7,SB3- u7 p2 s: U# A
     DJNZ R5,SXC1
- G2 W/ g$ z% h) O; r# q" q     JMP START  i- {* [! ~9 }
SB3_1:                 1 f- B/ E5 g9 J# F9 i# h& X
     MOV R5,#250, o- [  h$ Q% U8 e0 Q+ e6 b( {
SB3_2:! E& n. B1 G( s( H, d* y! `/ H8 t
     JNB P3.7,SB4
; w; h) ^" v: i( [- ]4 B4 @     DJNZ R5,SB3_2
. ~# c2 v) w( I4 j8 W% r- c     DJNZ R4,SB3_1+ \0 D# b" o9 x% F, @2 m
     JMP START: R. Y& ^! c+ k2 G& h+ P
SB4:                    / M) X  R% \/ v$ h5 |$ T
     MOV R5,#5
8 ~, s" {! Y4 p- _: N, E4 uSB4_1:- \& X6 H4 C/ Z0 ^' F$ d1 u
     JB P3.7,SB3_26 u% @% W* ^' Y$ k- s
     DJNZ R5,SB4_18 M+ X# T# k# h. _
     MOV R1,#1AH  6 S2 E' o9 h7 T) ?  _
     MOV R2,#47 U6 T( t4 [( I8 c+ r+ h9 [
PP:  MOV R3,#8
, x8 M7 c& O' {JJJJ:: m  w$ V/ x' B9 E2 X
     MOV R5,#250
2 R. H; D+ n5 N$ hJJJJ2:               
. Z; U6 S% P0 @- F/ j) l0 ~     JB P3.7,JJJJ3
) H8 J' A% l; s# _     DJNZ R5,JJJJ26 Q% n$ ?: _) S# j" D# ^
     JMP START
4 X! W9 G7 o# |, ZJJJJ3:
# j4 e7 v& e) B8 H: k9 ^, W     LCALL YS1  7 B/ u8 p/ ^( p( |* J% l
     MOV C,P3.7   ' H  b5 k: J0 B, G$ `+ J" W
     JNC UUU      
& d. ^1 @% |2 W$ z6 x     MOV R5,#250
0 A5 C; B- t5 }! G& [JJJJ4:
( P$ h8 R  v' W( p2 X" P     JNB P3.7,UUU
9 {2 o2 p7 A9 f" s+ q    NOP$ x0 ]% z/ H# l6 m, l3 v
     DJNZ R5,JJJJ4( ]9 \2 Q: I. O
     JMP START
. F- G7 ]$ M3 wUUU: MOV A,@R1  9 g* J  D4 H; v: V7 B* Z
     RRC A           0 i1 [( J2 o5 x* y. h" Q' C6 y/ `
     MOV @R1,A      
7 W7 X$ P. P  P4 h     DJNZ R3,JJJJ   
0 k8 `3 J+ Q1 [$ c8 T! ^2 h. H     INC R1       8 O1 w3 D2 q6 H- G+ Z, U
     DJNZ R2,PP   # f# `, |+ U: u: C; `$ O3 L$ c  M
1 }+ t2 a# ]( v5 i4 N, K+ g9 ]6 a
     MOV A,1AH ' \7 D* F) P6 o2 q3 o$ x
     XRL A,#11101110B; c5 N8 w; b- Y3 h
     JNZ EXIT # V+ ?0 C, d7 y* p. ^% r5 k
     MOV A,1BH
/ p% [( i  A' _0 E* k     XRL A,#10000111B
  r* {/ n2 |+ z; k5 I     JNZ EXIT
" r# w  @5 `3 r4 u     LCALL YS3: F( p/ E0 z& `
     MOV A,1DH 9 o+ q+ ]. ?* a+ T* R  a
     CJNE A,#10111100B,EXIT
3 ?! Q" _1 p0 c- }) C7 J, E4 G& ?     LCALL YS3
9 v- h! v7 V. ~( y, s     CLR P2.6  
  U6 }2 v3 g* b9 s0 l( S     AJMP BIJIAO
/ c: p' _  U+ U% U1 S; ^   , z: f/ U! l7 F6 B
AA: 2 ?- f! e& B, ~, ^. l+ d
     MOV R1,#25
7 I8 B) _1 U/ u0 d8 I/ l6 nXX:
& F8 F# Z' |' K! {     ACALL YS2, a- h/ N& Z( Y2 N1 h. \! L8 i
     JNB P3.7,HH : b( v  O* Q8 a4 r+ d
     DJNZ R1,XX' |4 W7 P$ K4 }  E
EXIT:   
8 @, }) t+ E* ]     AJMP START
* b" V7 C0 b) Z0 {   " `5 h: W6 b+ T5 C, H
HH:
8 L; x8 b' @3 L6 y, z1 `, k# Q     MOV R6,#4
& ~: C; a  F' \. L+ B* `S:
0 H" ?# e1 E( k! o2 \     ACALL YS1 3 O: k+ ]" J; ]0 F  r( H
     JB P3.7,EXIT
1 l6 B( Y& G4 E, V* M; k     DJNZ R6, S + H/ b4 D2 R+ c6 d# W% p7 V! e3 p
     JNB P3.7, $  
7 s( H$ Y+ j5 X8 ~& t( K     LCALL YS36 F0 t3 u' h7 A4 U, k/ Z# S
     AJMP AA" F- S+ R8 p7 i* c2 [
BIJIAO:& I: V4 K# L8 |" g* {1 A$ \1 m
     MOV A,1CH . m1 M' ^* @1 }/ s2 G7 D; o) _
     CJNE A,#03H,N1  8 r+ O6 F2 P7 A: Q" J  d8 y/ f, ?$ P$ T
     MOV P0,#7EH    9 F: ]% K& W+ i' p7 ~' ^% ^
                      : t; U* u' Q4 ]% I
;处理STUDERV录音机控制码
' x5 z$ J4 k5 M& C- u( K( x: X- vN1:
. R7 `% T; W* e1 r     CJNE A,#5FH,N2 ;播放键. X% v2 ^' P+ B5 L) w6 P+ R
     MOV DPTR,#REP
  ]. y) j+ W) k: w# D     ACALL SENDA
5 ]  U% k5 l! V9 \0 J( U( B$ H     ACALL YS43 R3 z' ~% `2 S0 s/ V% @& ]( O& @
     MOV DPTR,#PLY. ]+ A: x: q! T0 C
     ACALL SENDA
" e  ]8 A0 v/ s8 g* C( cN2:: z* ?9 I- G4 U! z8 q7 k. ]9 o
     CJNE A,#5CH,N3  ;停止键5 |/ v( r! o- ?8 b: H
     MOV DPTR,#STP* T" A* G: a$ D; Z
     ACALL SENDA
) g1 u; g! @4 g& S: o. w: oN3:
) V, ?( U0 o/ h& A" N  V$ P& \1 v     CJNE A,#06H,N4 ;快进键0 R4 y- u: d- [- h5 H  F+ K
     MOV DPTR,#FWD% |. v" C! ~9 o# D
     ACALL SENDA
2 T  N: @0 y$ X3 R& IN4:
' Q: ?- b. d- G# q- I8 B. Z+ o9 }0 X     CJNE A,#09H,N5  ;快倒键
" {  T: A* L. o/ m  Q     MOV DPTR,#RWD* w/ ]8 Z$ r3 g/ r& e# t, |
     ACALL SENDA
6 U% f. v9 j7 {# s$ FN5:
$ p4 F: V8 P# R      CJNE A,#0AH,N6  ;置零键
) D9 L- Q) C3 D: G& R* ~      MOV DPTR,#RTM; {) H' T: z1 C$ [" J% @" ~8 J2 X
     ACALL SENDA. X$ c4 p- |$ _# ?& P; n- P. E+ D, y
N6:+ ?, l/ u2 Z2 ?
     CJNE A,#0CH,N7  ;定位到零键6 t8 \& W  y- z: I. z$ |
     MOV DPTR,#LZA
7 i# W) Y6 K5 h1 @9 U0 U' u% W     ACALL SENDA) p1 m- }' H  ]8 W& s
N7:! e. b$ V) n* v
     AJMP AA, [* h( M4 r( g: S' |
SENDA:* t5 Z8 ^5 F( g# p4 {$ \) p
     CLR A
' H5 s7 [; s4 }# B  ?     MOVC A,@A+DPTR
0 A& H/ i, S4 n, S+ H+ W6 |* L% D     CJNE A,#'$',SENDB- c4 ^5 P. n5 q: V. Z, a6 J
     AJMP SENDC
2 {* }5 E. X/ C. WSENDB:" N/ Q) W- o; L4 _' ]
     MOV SBUF,A
$ E9 ^" q4 [7 o7 E! ?- ^7 M1 i     JNB TI,$5 x& A4 A) x% |/ d2 U2 R8 p( C# n
     CLR TI
% [( H  F/ I8 |( P' B- e" j- @     INC DPTR
. W9 i' u' a" O8 `/ h8 J7 _7 K" L% _4 A     AJMP SENDA
$ {/ _: p0 ?0 m$ H$ I) LSENDC:
% m/ S* ]# T; [0 G9 N5 L     RET
  [- x# m' U1 ?& f+ W8 b) ?( D
. Z1 ^  a9 S3 s" l  m' b9 ?PLY:  db "PLY ",0dh,0ah,'$'
0 x  G$ f! e3 PSTP:  db "STP ",0dh,0ah,'$'9 R) i9 }$ z( k- i: o  H  T; ~
FWD:  db "FWD ",0dh,0ah,'$'7 p% R8 w  y/ g; e9 ^* f, m; m
RWD:  db "RWD ",0dh,0ah,'$'
1 w& e5 X6 y0 M( H/ bRTM:  db "RTM ",0dh,0ah,'$'
4 g  S# U3 J6 C( z. |, qLZA:  db "LZA ",0dh,0ah,'$'+ L/ J- ^& F( o/ q
REP:  db "REP F ",0dh,0ah,'$'$ m) b/ s( \9 `* T" ?
/ A, N' h% w+ b: M* L
YS1:
& R; ^# M: _+ I! H" M     MOV R4,#205 ]( A" \9 O% ~& G% U6 P" W0 K
D1:5 B! p/ w2 U1 f7 s0 B4 h
     MOV R5,#20
+ d6 X+ a0 y0 B1 o# w5 j     DJNZ R5,$  K, V6 H! T4 y# O  H
     DJNZ R4,D1
3 y% x* o& G% x     RET6 X# Z; d: R/ b* }3 b7 a

. N' ^$ u$ }8 \YS2:* ~) C) [& |$ c6 o8 N
     MOV R4,#10
- W' N9 |- R) z; f  G  ~- |D2:5 p5 ^" c+ J$ W4 ?' I1 W
     MOV R5,#2358 ^+ a* _6 t. \
     DJNZ R5,$
. Z: q2 w5 p5 L( [     DJNZ R4,D2& R; H6 i/ \/ r9 V2 w
     RET
) u# ^3 O3 x6 K; g# k: S3 q* Q+ {* G: Z* {+ [& A
YS3:
+ A0 w% J/ E* W# U' y7 E+ \     MOV R4,#2
0 {7 `4 e) M" l* C: e9 k/ aD3:  O$ N& S' e  N- c
     MOV R5,#248! m7 ^8 H, [6 a+ ]
     DJNZ R5,$
. ?. v1 V  R3 T0 G9 J# r     DJNZ R4,D3
2 Z0 C2 e* L& }; C" @0 H     RET
* a/ T  Z; r1 a  I+ e
+ Q& @& z7 T5 U' T$ H$ {: R1 iYS4:8 B1 e0 J  c+ ]
     MOV R4,#200
1 _$ a4 |( c# K7 x5 G+ sD4:
0 v; X, f' g! v' I+ _     MOV R5,#248
7 M* P- C. i" D9 T: p: e     DJNZ R5,$
* \0 x) A5 o: v+ ?5 V     DJNZ R4,D3
& D8 E7 [7 y. X     RET
& a% M( {( ]1 z# J, P     END
0 U: g3 r& ^9 w: h9 [3 S) Y
! D. T5 M4 T2 ]! l) V+ w有了上面的软硬件,你可以舒服地控制你心爱的STUDER录音机了。- I) I/ O3 K0 Z9 c- @
是不是很惬意,嗯!
2 S% ~5 }( W5 X; t. j

评分

参与人数 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 | 显示全部楼层
最终的样子,有点简陋哈!
; P- W$ W+ }  u! \( D YK 005.JPG
: M+ d( x3 ^! Q5 q& p7 m8 ~: B
发表于 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 | 显示全部楼层
洋为中用,真棒!我得试验下/ D; @  E) y0 [6 n/ }/ j
发表于 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/ d) V  j0 p  e: X6 V
最终的样子,有点简陋哈!

1 A- I( F- h, ]这进度怎样?
您需要登录后才可以回帖 登录 | 注册加入

本版积分规则

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

GMT+8, 2025-6-8 14:32 , Processed in 0.096202 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2013 Comsenz Inc.

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