赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
7 W! d: k4 K. s& L( Psfr P3M0 = 0xb2;
3 O: @! S- \6 Q: l5 ^sfr P3M1 = 0xb1;
6 u$ h* `; h3 _- _& a) A: F- f1 p# asbit keyb = P3^1 ; //10) T0 n* c+ v5 W8 ]3 r$ X
sbit keyC = P3^0; //10% n( X2 h& M7 y7 b/ a8 G' k9 R
///sbit s_cass = P3^5; //10 S% c4 h0 z+ C2 H
//sbit comm = P3^4; //10+ b E% f! u; X. U2 s+ {
//unsigned char loaded; , W K0 O9 T& y4 V [3 o+ k9 M2 }
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
6 V0 B. l! y/ F: C+ s; W' Vvoid Delay50us() //@11.0592MHz
O3 r2 p* C9 e) J5 @/ J7 ~{! M: B0 M, s B2 h% c
unsigned char i, j;7 r V6 `* \" |4 C8 Q
i = 1;# ^. v6 E2 X1 h; y3 O
j = 134;" J$ O" T! R8 ~" G% i
do
- Z, |% H3 b" ^7 ` {
. z7 ]* w% D5 w1 X while (--j);! ^, q$ i$ s6 T) o9 B) F
} while (--i);
/ d' k r. d E}/ b' z, U) T6 w
2 a1 [! n: v* Z7 p7 t8 t7 Fvoid main(void)
! _( {3 n& ]+ {9 v{9 _; o3 ^. J9 Z2 [1 x0 k- V
ctrl = 0;
7 D, `' o' @' p8 Z E: z! T: } keyb =1;
% R! @+ H: T* Z ?! b keyC =1;1 f% t4 s2 `$ |4 v2 A. C
// comm = 1;# K) ^4 l4 @8 p1 K. A* l- e
// s_cass = 1 ; 5 T; h6 Y+ {3 b7 f1 Y
while(1). c/ R( t4 z! o8 `
{, B* D! X0 d' [2 F6 G9 @
// if (comm==0 && s_cass==1)
2 K* d/ j- f" {% Y, D, y# w // {! z- B( v8 Q4 V3 p8 k# a
// loaded = 0;
) W/ j8 }! T _/ |$ {2 N$ ?: Z // } ( S) b" N; \( s
// if (comm==0 && s_cass==0)
. M$ l( U" x+ W3 p0 s // {
. t4 a5 c" X- s // loaded = 1;3 o" z( j5 ?. p1 R( q
// } 5 c0 A+ Q4 e {3 ?* v; c7 g0 }& @
" p9 u3 c @$ P- L+ D5 H, b1 Y9 b4 g" V2 J
if (keyb==0 && keyC==0 ) 3 Y0 n6 m* x4 }* v- B' N( b8 E
{/ q3 w7 M' J2 F/ u# o0 q8 f
P3M1 = 0x37 ; //00110111% Z g; X3 l, f' T* ^# [0 ~6 u
P3M0 = 0x08 ; //00001000' V9 E B! m& [
Delay50us();; F( \( G% Z# S" X* t% \: n4 T) J
ctrl = 1;
( ~5 n; e* Q5 s }# m3 a3 z" v" Z9 h1 i5 q
: j& N; D. w* ]! ]* e1 U0 T1 T if (keyb==0 && keyC==1 ) % e- L0 f/ p- I' r) T
{
# v' v' g% P: D! D. J ctrl = 0;# U9 p+ M- J! G# o- P8 u; I4 `
P3M1 = 0x3F ; //00111111- E f6 n" S& n' x& d
P3M0 = 0x00 ; //000000007 H$ F0 j: X; b( n* D. V) p$ L
}
5 {5 g% U+ a x% S }2 U- ~) E) f7 C0 V0 r
}( I- h, J) j% L G4 {& Z
1 O0 F$ G9 c3 ~) p" k
! K J8 ]( \+ k( Z7 z: u- b2 [3 g) y% M' D ~3 |$ ]0 V
0 {7 k5 m! f9 m" x$ U
6 ^3 k1 b9 Y0 U3 M# x/ Z
0 h; w% [( S! F2 T, J
/ y$ R/ L1 t( [
+ G" p9 D' b! ?! R
. V5 U; N( C9 ^! a% m
) y' U! p9 a9 u) \: F- c; y7 i/ l- T6 q+ p! x* t
, J% k) H/ W; R) ]8 \5 H
4 y/ ]8 j3 ]. }4 G9 V8 z( \/ X3 K
|