赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>% O$ o) u' h* }' ~1 p# j& e9 C$ C
sfr P3M0 = 0xb2;
f F6 O. b5 l/ Y8 l$ t4 i; J- Dsfr P3M1 = 0xb1;' j S6 a0 i6 [0 O
sbit keyb = P3^1 ; //10# _/ p' C- f5 w6 O
sbit keyC = P3^0; //106 _1 ~2 i0 i" e* R
///sbit s_cass = P3^5; //101 c2 b$ A3 Z0 L3 t# F
//sbit comm = P3^4; //10* A* q) w% N/ N
//unsigned char loaded;
/ W; C& W' c; F) r7 ?. w$ {sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
+ X( J1 ~5 k- G( q- y, q. z' k7 ^% |* dvoid Delay50us() //@11.0592MHz$ D" N' P' D% U
{
3 P+ _% U. V$ O9 U3 e0 y2 q unsigned char i, j;9 _& Z! i4 V2 h; p& O
i = 1;
) j1 Z! {2 N4 h j = 134;
3 a R" F" J8 {! A. E- ^: S( k do) J# c9 Q1 h v7 p3 J4 o
{5 @& m! `* Z) e: K# `4 X
while (--j);$ |& Y2 h) I$ {, N% s% L; C, F# U9 H7 q! O
} while (--i);
, ^; s G0 k# m" X; y& K}* m. k) b9 J% i/ |# D
" h( K, D6 U6 c$ P. ^
void main(void)' ~4 G; O5 p& q2 E
{
' Q3 v/ ?( E, ~( v$ { ctrl = 0;! D. Q2 r ^- ~4 Q+ Q
keyb =1;8 S- M% v* t: g% `6 Q9 `% z5 A
keyC =1;
$ Y* o# J' W! d- d// comm = 1;2 r; ^2 k; I3 e& h6 m8 g
// s_cass = 1 ;
; v% m6 x$ {: _* r& t' e while(1)
. }7 N5 p( i- C {
6 E& ]! t. J/ v* x: Q // if (comm==0 && s_cass==1) 3 i, Y R% d7 U, x
// {
. `. L1 b9 C& t2 E; P // loaded = 0;
7 a. g" f* w& a* w" I // }
: y7 P: y' J5 |1 ? l* u // if (comm==0 && s_cass==0)
& A/ B! v0 w7 ^( j) b" L( E3 m // {3 `# C1 g; i. ^' h- p2 k0 J
// loaded = 1;# c! n# v- z" a3 {' G
// } % ?6 R( Y: a; \; ~
+ l# t; S) _/ m, V9 @* m2 b; n if (keyb==0 && keyC==0 )
! F% `! w+ J! \+ K* |3 | {
2 [2 b; J/ X8 Z$ |$ H6 J# b! h" N2 K P3M1 = 0x37 ; //001101115 R9 L$ f; w5 J* P
P3M0 = 0x08 ; //00001000
5 @- x" ?$ S4 H3 I! D* t6 V Delay50us();
# o3 V" H. h& y ctrl = 1;; N. L0 _" ?; N) E" g3 _0 F
}
1 E5 \$ C4 c/ Y$ B* p8 L( c4 o/ v L( g2 R- N9 C6 Z
if (keyb==0 && keyC==1 )
. T6 t* n3 l9 P5 Z( ~# p {1 w4 x y7 I! b7 v; D. ^) x5 C3 p
ctrl = 0;
4 M( S6 F2 V( F: {' Z P3M1 = 0x3F ; //00111111
. k" ^& g4 Z& p2 H, |% H% p' e+ N6 f P3M0 = 0x00 ; //000000003 x C2 Q* u. \% c: o2 Q
}
# J# l' O2 P7 _ }0 \' I. Z) q2 r. b
}
* w5 V) `: J# m5 D/ l( F6 {7 V6 J- h _0 i% o l
# v4 D( @" ?( i7 ]! `/ y
2 I/ [& }" l, J: ~+ a
7 L8 |$ A! S9 b3 l
, i) {% f* J$ J/ w+ q! B
- l2 V( l, L1 s& W P* B6 x, L" O8 C
+ h5 n/ `5 E& x3 c% p/ n4 d
# q$ c# e3 y2 E5 X, H! O; c
8 @+ B' Y8 U5 ]9 Y4 D5 i9 f
" C) g" }% h0 O5 {
, t& x( y3 n5 I" x* U4 s+ p# m3 Z' U; x; s) t% J1 _
8 K/ e6 h# }+ B& B U/ p
|