赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
# c( z$ R. D1 T8 q" @3 l6 vsfr P3M0 = 0xb2;
: D. t; V Z6 I0 M3 [# \0 ]) ksfr P3M1 = 0xb1;- h- j: U4 K4 q6 v B
sbit keyb = P3^1 ; //10
, u8 m O. }, _* zsbit keyC = P3^0; //10
% z1 J: Q0 X- z/ z$ n- s7 j///sbit s_cass = P3^5; //10
! R( a: \- r: g) g2 h# f' ]/ V( _//sbit comm = P3^4; //10
2 W t- y( K) a7 M//unsigned char loaded;
* h: t) P/ u2 e% F. A1 }9 \2 x! \sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起1 o" p" O4 z& r& k- ~
void Delay50us() //@11.0592MHz
& o7 u5 s5 {+ e{1 N5 H- \5 O/ U* W
unsigned char i, j;
4 H p$ f8 t% @3 Y i = 1;
0 c% d" p) B6 N v" w1 M5 }8 k* S6 Y j = 134;: \: w, o7 X% l( R1 j
do
4 \3 z# L9 D0 J/ K {& D9 Q/ P( W5 L4 }7 O( {6 c
while (--j);3 m; a# R% X: R3 f) |( r% e/ ^
} while (--i);
" }5 B% p3 e% T5 P M* W) D. x}: U, C. F* D% m1 \, D) v; b, b g
1 R! o0 ^: Z& M2 Q
void main(void)& U! @$ p' e& `8 T& @
{
4 K' u- U: ~; Y8 u4 Y2 P* Z ctrl = 0;' i2 m' `; l# |5 E7 A
keyb =1;
- P. ~% l% e9 @; i2 Z keyC =1;
, g8 V9 P6 v1 Y( R9 a5 b// comm = 1;
0 |' v% P* |% R6 _- F// s_cass = 1 ; 8 g: o( X5 g. q4 a$ v! T7 _$ i; d
while(1)
* {" _1 W/ T1 @1 f( ? {
# s. c$ K* V' J! r9 g // if (comm==0 && s_cass==1) , o5 D* m' o( J; w: e; m
// {' ~ B+ W. D3 [( m+ W
// loaded = 0;5 A0 E+ t' L8 b; U
// }
$ d/ `' v, c( J/ ^ // if (comm==0 && s_cass==0) 0 I( Z' g$ W6 J8 @6 K; N
// {; b! I7 ~6 T; [
// loaded = 1;
3 ?' g: ?# ]7 U% B7 q // } 5 ^" r+ |8 u. Y; {/ _. C. T
, \5 M+ H) s& C! ~' Q
if (keyb==0 && keyC==0 )
" j+ R4 \! T4 q4 q) M3 q' S5 ] {
2 u0 ~# u" u C; w( L0 p P3M1 = 0x37 ; //00110111
" g# d; R+ C5 }; e; l P3M0 = 0x08 ; //00001000, g; J, G2 }& ^& X/ i! r
Delay50us();
, n( U1 P( c/ l4 ?5 w ctrl = 1;" k/ t& N% ]1 n# O
}
% g2 v/ j. p* e
$ ?. G6 w( X L# F! a* B if (keyb==0 && keyC==1 ) ' Z9 @* a6 ~: Z3 l
{* v$ h2 i H8 j6 y: e8 Q3 y" D
ctrl = 0;2 S0 B2 [% `6 K H. a+ d8 ?
P3M1 = 0x3F ; //00111111; r5 j; S9 b1 _! n [' A
P3M0 = 0x00 ; //00000000
" j& V3 i+ k3 R4 ]+ L }9 p+ z$ X) ]' K5 V }+ z9 ~) t
}
6 J5 }1 a. l* V& S9 v9 r}
' |0 \. I& u3 l/ c! [. F6 W s# A7 _/ B- f
2 W( @- {7 O6 q- z
/ `# I- n E8 L6 b6 z! k
& s$ j" v0 a4 _* V1 J" U' t
; `. A6 s0 E) ?. h, g
2 t- d' F, |/ ~% ~$ g+ _
! \% z9 J* R$ k' P; j# J6 g5 a1 {7 l* W1 x) j- Y
3 K- D* V( p, z6 l1 ?; K7 D7 Q& g
9 r6 s9 ^6 r; W9 O/ N0 k
0 K( F2 a' R4 U- f u
2 D. B& H" [$ \7 q+ j Z2 T" z0 [% X" ^# i$ C( ]
|