赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>3 O. N, ]2 n( T- o# Q
sfr P3M0 = 0xb2;
% E3 ^" C2 t* ^( ssfr P3M1 = 0xb1; v8 a# }- ?6 k) ^5 U% _- a# K& X1 P5 I
sbit keyb = P3^1 ; //107 E Y$ |0 n* q4 L& Z
sbit keyC = P3^0; //10& ?: O+ V/ V; J V* [# O
///sbit s_cass = P3^5; //10
6 V1 j% C5 ?- L! q//sbit comm = P3^4; //10
, K* X2 D6 J( a$ g+ H//unsigned char loaded; # T# ?. t5 i- O2 s9 B d% z) f2 B* o
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起5 ]9 z; j0 X7 b: S2 W2 p! m
void Delay50us() //@11.0592MHz o. S# q$ K( u3 c: D4 s5 i
{& h5 k1 e+ j7 T% w+ \6 I) R
unsigned char i, j;
: z8 Y v3 B2 L i = 1;( {: A. Y5 q) }6 J$ E& n$ z
j = 134;
9 h4 `. X; h' p1 P6 Q do
* h& B6 W7 z9 A- F% ~& p' ~ {; s( l H! d& m Y7 n6 ^6 b% ~
while (--j);+ t8 d/ v2 E; R1 E9 X4 E
} while (--i);% F% L9 F s3 |+ q5 _: m3 I8 z
}6 s( M. o# T! U( x6 I
3 `7 J" |; W* s4 U# mvoid main(void)! `! D' J& p4 V( n% w3 d$ {. D# T) X
{
! T* u* u& Q w4 J ctrl = 0;7 t' j: B& [5 [4 o
keyb =1;
; ?6 \$ y1 J. j0 ~% v6 n: C keyC =1;
4 S9 C; P& o* U+ O& i+ I- x$ C// comm = 1;
$ b4 j. Q6 Y( @+ Y// s_cass = 1 ;
* ^4 Y1 Y1 |6 ~6 J9 s$ r4 ] while(1)
3 H# f3 \/ {& C! h2 t {$ k* ^- n6 o: s5 [% ]( n' C
// if (comm==0 && s_cass==1) # Y# D6 R/ S# G6 x# j
// {3 V) }0 i Y& w# H
// loaded = 0;
+ M' M+ z; e7 y' Z6 V // }
) W% p9 l* N8 A" h; q0 ]6 E0 I // if (comm==0 && s_cass==0) ) O" l7 c1 C) {+ B8 J: _; K' B
// {
# `7 D3 s2 n+ v! y3 h+ u. s // loaded = 1;) `8 a3 o# D# [+ v% S2 s
// } ) \" O4 D0 @& Y* {3 U
4 |% K6 u u& t' h7 w
if (keyb==0 && keyC==0 )
. |9 L# E* ^* T, ~( b$ u, K/ ^ {- a" i0 F0 l7 t' t6 H
P3M1 = 0x37 ; //00110111
/ \0 Z* t/ p/ ~9 s P3M0 = 0x08 ; //00001000
" t& D3 P& _# E- \% E Delay50us();# c* b4 P' X5 A1 v# H
ctrl = 1;& t5 _+ L; E% |, m5 z
}
/ }, i& H% f! c) N2 Z; ]: n* D
- Z; H% f& p7 M' ~ if (keyb==0 && keyC==1 ) : I& ?: D8 x# w! [8 N
{- Y" ^1 S: F7 \
ctrl = 0;; m- i' ^3 n$ }9 d8 @. X
P3M1 = 0x3F ; //00111111
- ]) i- [' ?2 B. x) ^ P3M0 = 0x00 ; //00000000( p+ A$ _4 U1 T0 I1 i; m
}$ Y0 k" j, W( Q ~
}/ n: _( v+ { N( F
}( N8 ~1 `- y& B- z w- ?' n- a
+ ^! ?( L1 n0 j% H
" Z" C5 z! X. O* R4 x( c2 O! L( i q
4 K1 _6 }- U0 F/ a
7 N) A1 w: X: ~* \) ]9 Y5 U# T3 i4 P. @- I/ u* o0 w
8 j8 _1 }' x1 }# Y: M3 j0 a3 P
) P/ {& f3 U# T- U" f! e( K
; P1 s) ^$ h5 R9 O
! H: X# K9 n9 m, D+ K" O+ V [4 l: o: D' y5 ~' n
% H; | n, W4 [& F
. m3 W- Z' Y! I9 G6 C0 _) w: y F
. l/ R: K; X$ H B. q W/ g |