赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>, [! e g5 F9 o5 U0 T$ I+ {
sfr P3M0 = 0xb2;; A& ?7 k! B8 O7 p! h; O
sfr P3M1 = 0xb1;; N; |: l# f: s: X
sbit keyb = P3^1 ; //10
B1 O% W( Z9 z% {: xsbit keyC = P3^0; //10% [: g4 c1 x) z0 T8 y: l5 A
///sbit s_cass = P3^5; //10
+ Q- Z: S9 D8 p//sbit comm = P3^4; //10
( d" M- K4 r6 V$ @& ~) [0 f9 N. Y$ _6 g//unsigned char loaded; 3 R5 k. h, c* [: r/ ^6 _5 F
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
- T3 Q9 d1 d2 r8 s' U- S" D6 fvoid Delay50us() //@11.0592MHz0 r. `3 v7 e6 g4 k
{& V- f" w$ `% L9 {2 ^/ c) j1 `
unsigned char i, j;( f- n6 l0 w# o6 t/ t
i = 1;
# E) G# }! b* \2 C% F9 c. h j = 134;
0 f/ b7 [- \4 i: n! } do6 |. b' K9 e) i# r& h& K
{7 k! M6 q5 J E
while (--j);& ` r: i# e$ P" h0 I; G
} while (--i);
9 L' Y9 R0 R" a$ N' L& t}
' j z6 k" B; U2 _" O6 B9 x* t ?( ]8 \% m9 p1 v
void main(void)+ b0 s1 U2 y( Z0 l9 g. g3 J# V
{2 o: X; g1 o9 p) t q( T
ctrl = 0;
) ~1 l: g+ _2 Z, h7 L( h# [# E" c keyb =1;: g4 z8 l* L* v, ]' F% t; I
keyC =1;8 N( `) ?8 C! T; C
// comm = 1;
8 |/ W: k- B6 x9 x0 m// s_cass = 1 ;
8 [$ e+ j8 e" f/ F( y while(1)# r9 f. ]" u: ]& E7 B; A6 Y/ {
{
- ^+ d) A( Z) _$ l; o& ]' ]; l; l$ z // if (comm==0 && s_cass==1) 7 ` i/ W+ I! r
// {
% A0 M, n9 D: c8 T; Y // loaded = 0;
+ }( I$ N# r& m8 `$ J/ c" h8 d* Q // } % ]; [/ M! Y. a! J/ R. [
// if (comm==0 && s_cass==0) , p# J) T6 O! a
// {
! z* R1 c. S+ ]* Y // loaded = 1;: ^$ j$ |* }; W' l0 r
// }
# I4 ?1 k1 u2 i, |# Q1 X
2 [1 n+ G* B8 h( Q9 A if (keyb==0 && keyC==0 )
3 b" ~8 W5 ~. h. ^: ^/ D {. V7 |% g1 i# `
P3M1 = 0x37 ; //001101118 V6 [; h" n, W0 @2 o: T4 V$ }' W+ j
P3M0 = 0x08 ; //000010005 P& \+ y* H' M5 Q* k# x! D
Delay50us();" [% ~) L$ b" |4 U
ctrl = 1;
) m& d& J, a# W( v; j }! |/ E' O8 T& ? Y- M: v
/ D; {) \# S: C7 [3 c6 ?, { if (keyb==0 && keyC==1 )
& G2 m( y, [ h {" z+ B0 `2 ]: G5 i2 @2 F$ L" M
ctrl = 0;
2 B4 `6 [/ y0 Q% M, r$ N P3M1 = 0x3F ; //00111111* O1 K. ~# C6 _* r4 f+ |5 B W
P3M0 = 0x00 ; //00000000
( M, S6 m5 @ O7 J1 J }6 Z& a4 Y6 w3 f9 E0 s
}. e; q3 Z8 S% V$ H# Y4 [1 s+ Q
}
) E; q& g0 W6 j5 w' [* f" W# X* q- X9 d% X, _1 j2 Q# X2 a
/ C8 B& Y/ v, ^9 K3 b `+ `7 g
/ | [8 ~5 W$ t. {+ K
: U$ J& O3 ?8 L) Y( _
( d% v8 k8 z! R* l2 S* \+ o7 R
, i* W8 `9 g6 }+ b' M
! r) @. l! B E f% @5 Q1 ~' T7 y# b- p
u: t/ Z2 Y$ w) q8 h: x
/ S/ s1 U+ n. D3 w" c4 T$ [2 _; V6 i! c2 u
5 I( a4 q8 `8 E3 p& u |5 c# m
4 S7 \, R9 @9 h1 e# W9 F2 A
) W* U5 l; j- {, g- j |