赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
( ~! I3 P3 Q# ^7 r4 d& Psfr P3M0 = 0xb2;
# ?* v. C4 ~) j/ ?sfr P3M1 = 0xb1;5 d5 b0 O/ }6 g: M2 k2 u
sbit keyb = P3^1 ; //10
3 E) {; a/ h2 w+ ~- @) Q4 k6 ssbit keyC = P3^0; //10' n4 D1 B, Z$ M$ i* c# |) P: K
///sbit s_cass = P3^5; //10) r g6 l l- v) m, D) G
//sbit comm = P3^4; //10
! v! m, u( g9 o- {( a; j; ?- k6 B. h//unsigned char loaded;
& Z4 t+ D2 n5 j& Y3 L' usbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
8 c3 [+ f5 |( Z( _void Delay50us() //@11.0592MHz
[ ?4 v- B4 x# i) H0 L{; `6 w* J3 q8 r& t* P
unsigned char i, j;6 v( W, R% a1 c$ |- ~
i = 1;
6 n# {. n% O1 [) G/ v j = 134;
1 C' e; o, u: v) q. S, R do8 j! { n( p- }. M; R) O
{8 a( v. w0 a) _$ w/ a( @
while (--j);
+ @, o; O6 W- F' k+ T g } while (--i);
+ }# @, s0 L" P}
0 l5 i! r0 k% P" t+ B2 s J; w ?( n2 u1 Z- j& C- {/ E
void main(void)" Z7 h' p3 H& N& V6 a
{
' X1 P: @4 m9 W) g) T5 M [4 w- T ctrl = 0;/ l5 e! U4 G& x* I
keyb =1;7 U! l' u# C/ ?5 t2 ]- b/ ?
keyC =1;
- [. t) l* z( @9 y% z7 W// comm = 1;0 X7 \: x2 y' A( w0 F+ f# T
// s_cass = 1 ;
5 [2 K% l! X3 t+ }/ G2 }6 ^0 Z while(1)
! M4 |& S5 q4 t/ _2 V6 a {; A! V, o0 I' |" \: J1 E9 _
// if (comm==0 && s_cass==1)
f( C" Z5 ^, H4 J# @ // {) v* [; }+ }& c* p! j
// loaded = 0;& R1 z8 a/ [2 B
// }
, }+ B; u; b& I) V4 ~& D1 { // if (comm==0 && s_cass==0) 8 G1 O5 ]& T0 k% m1 u
// {
i, Q) ]3 S; J5 t // loaded = 1;
0 F; @: e; U W; m- H V& B4 V5 A // }
3 Y! P. |8 l, ?: I5 O) M( t
: Y! f$ X( ~6 f4 ?+ I if (keyb==0 && keyC==0 ) ; W. M7 ^: `+ v
{# w3 e/ G! p9 G8 j! U+ Y
P3M1 = 0x37 ; //00110111
) ], N/ ~' K4 X T% [8 M5 t P3M0 = 0x08 ; //00001000. p% H( t0 L) L" `( S
Delay50us();
4 [% f' \/ k% p0 O' G ctrl = 1;
! o3 N( ]6 }5 A/ X7 ~+ M }' [" H& O$ X4 p) a' O9 G
7 j! u6 N! E: R$ F& \, i2 p if (keyb==0 && keyC==1 ) " [7 u3 z2 |; t: ]3 n
{
7 l0 i& o; w5 U: x) h0 n0 n2 O ctrl = 0;
" F- m; K6 A" w P3M1 = 0x3F ; //00111111# p, u/ l8 E# o$ h& c h
P3M0 = 0x00 ; //00000000) n7 }9 k, o: n7 N+ ^
}
& D& \2 L' k. u, O }
+ f- ?2 w0 x2 w; p% H# E0 M8 W}
6 T, C! w* g. j' y9 y8 ^' W6 l+ X! G; M- S
7 e+ D, u G; Q. t% ?
6 H8 }$ f4 ~9 R0 `
$ F9 \* g; E% `- V& W
7 g5 H: I5 R+ i( a0 Q3 M
6 d t u, @- [! o
, W t, D9 O+ }4 |$ k1 c" z2 y4 e5 |
. z" }/ t6 P9 `6 T
j8 \. [% d W; G3 v* l3 U" T4 O) {. w2 u+ z5 v/ Q
5 S( n' h. r3 g! ?+ A
4 r |$ B9 {3 `, y, P! p L+ Q2 U2 b
|