赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
# `. b; V# R. ]7 p2 a- A; Zsfr P3M0 = 0xb2;
8 ^. @$ a: _+ lsfr P3M1 = 0xb1;
2 T5 E1 {3 d9 Z' ]: J) N1 p+ O, vsbit keyb = P3^1 ; //10" f) z- V$ e3 Z3 B. [0 b
sbit keyC = P3^0; //10: n6 i& A) j ]4 C
///sbit s_cass = P3^5; //10( r( l# X: A& ^$ H/ T
//sbit comm = P3^4; //102 a; O P: C4 b; Q) n8 h: f! t
//unsigned char loaded;
3 x2 q& G" v& esbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起8 X8 ^- w, `- N b- r8 A
void Delay50us() //@11.0592MHz
4 @3 B" [/ P2 Z4 H; I; |{
) ^+ e) L& z' P0 m' G unsigned char i, j;
: b4 K3 ?! P: X- W4 n7 y i = 1;9 h2 F& ?0 X8 A% K' Z/ t/ h5 E% U
j = 134;
4 Y8 z2 \$ o4 ?2 o' l do: ^$ r7 }) I, J3 t' c
{
; B. a2 s/ D. U; Z+ u& D9 { while (--j);
$ C0 k/ l" z8 {1 a% G" a } while (--i);1 p+ |& {! t) r1 V. J7 v+ g$ J
}
( R8 V! \2 E ?; U4 h- \
& ]* B# a$ | r4 svoid main(void), c) ?& R/ s; x1 ] |
{% U3 R1 |/ c4 N. L
ctrl = 0; x+ [9 H/ }$ ~/ J) D
keyb =1;
! q/ j: q3 \; P* y keyC =1;
! A! W6 ~& v! X& n- t// comm = 1;
& X! G. g8 @8 {+ h% P# A// s_cass = 1 ;
3 u$ ^: M% m9 {* ] while(1)
% \) O5 s& A) ?: s# P/ K5 i {# c: O& i }! w& w( s4 d) h
// if (comm==0 && s_cass==1) 4 H/ S3 E8 q# ~; D5 Z7 p
// {
( I. z) m- f! l7 ` // loaded = 0;6 n4 ?: `0 j+ E. p" Y2 a
// } ; f/ Y9 |, G2 \6 r* C$ w2 J
// if (comm==0 && s_cass==0) B- Q. D0 R' ?4 p, \
// {7 e) o7 G& A' Q; D1 K% L
// loaded = 1;" ~; i# w; w; `! h I- f
// }
; L9 [7 P: X5 D/ B$ z F
: ^7 n- M0 i$ ^; V* D7 i2 e* f if (keyb==0 && keyC==0 ) # i3 U: Q" Y! ~" Q/ ~, t
{
9 i* r# B* k3 e' r" T' s$ j P3M1 = 0x37 ; //00110111
; \" L, Q* r+ o5 [0 |3 @/ ~* D P3M0 = 0x08 ; //00001000
# C% P4 X4 W4 L3 p Delay50us();
# j/ X" j$ p5 l+ C, p8 C: v3 T ctrl = 1;3 H6 J& ^! _( d) ]; ^
}! M$ o, R# f9 ~8 s! ^6 c6 x
5 M+ C) u. W9 W/ T5 z if (keyb==0 && keyC==1 )
( Z' T o6 m5 h) f {
. a* r/ d: J2 h; z) x ctrl = 0;! u* s: E# C" _4 X, P
P3M1 = 0x3F ; //00111111
i% m; p. y: O- W2 O8 X1 @1 V P3M0 = 0x00 ; //00000000- q5 g: U9 K" f6 M7 Z
}
) a& [* h1 k- I# W2 a }( m3 T& y' z' D5 N/ q ^( e6 F
}- b7 w- h& k8 I$ |4 U- {8 W% X4 ^
8 B7 n6 w \0 e H" Q
9 }% V: p0 `3 U3 h0 \7 D" n
" u3 F' `4 X. R% x/ ^* U5 e
/ }- Q; c, @8 g7 `% z# p
9 v- a8 d; p" s _' a2 a1 a
3 O& b X6 D" k* o
5 r: f- W, u4 t
3 o0 F% s: I4 j$ P
8 Z2 V$ i) @4 M. y4 p9 Y& `
# Z9 N* j5 d9 B' x' `4 v5 k
~- Z* [8 A" _& ~) f" v/ ^5 ~' A
! u# ^* w4 Y1 j0 x4 q# s8 P. |0 H ]# D4 r4 h& }' Q/ Q: ?
|