|
|
赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>5 L- g3 I. e, B* C
sfr P3M0 = 0xb2;
4 s$ V5 g5 Z, L+ wsfr P3M1 = 0xb1;$ |3 _+ r# K4 S9 \& d
sbit keyb = P3^1 ; //10
+ W4 f4 `; j1 Q+ {9 ?sbit keyC = P3^0; //10. W. b1 s- I2 @0 j( G# g9 @6 i
///sbit s_cass = P3^5; //10
0 S" J& Q. D+ w9 C/ D8 W0 k//sbit comm = P3^4; //10
$ @6 _( R# n. E# v- ?' N& m: ]//unsigned char loaded;
9 ]; ^% U0 U4 e& \* z6 Z2 tsbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
. x4 m- l, Y% M. _7 R: ?void Delay50us() //@11.0592MHz
u3 g$ e: P% F% ?3 k{
3 m8 l5 p2 J( |: e- H unsigned char i, j;
2 T: l9 [" k" `8 S- e) U1 Q# f i = 1;
1 x9 R+ K9 M1 q/ E' ] j = 134;
( q: t* `% b4 p m do
" B/ m* V- u @/ E. z {8 |! ~1 f; Y3 u% o! R. Z
while (--j);
1 n+ M; C* L0 G! \ } while (--i);
7 W1 X3 W0 ]! J& w8 N}
I/ X5 s. C: F+ E4 l; [4 T0 p. c4 J2 p& n+ T1 e& ?: F
void main(void)" R4 `, Q5 V+ h! F
{' N# Y$ d- l" {6 n
ctrl = 0;
7 r2 N5 I8 @" t keyb =1;9 g$ q; P$ C7 L2 t) l+ n- l7 M
keyC =1;2 E$ l2 h# Z0 V
// comm = 1;+ L+ @ z' q1 Y4 T
// s_cass = 1 ;
; X7 C+ ]# ^8 }& N* R; X+ L1 J/ ` while(1)1 C( \1 P9 Q: s0 |; U7 r& k
{( E) B6 E9 e' u$ y$ B
// if (comm==0 && s_cass==1) 5 G+ F/ V2 s1 H4 @& x$ \
// {' O3 m: D/ N+ T0 X) H
// loaded = 0;& ~+ Y! `8 f( O
// } - @4 `4 X7 L% ]5 ~" l& u9 r3 b
// if (comm==0 && s_cass==0) , ?$ S+ S n$ K5 |! H$ r
// {
' [4 V: G/ @/ Z6 E7 P // loaded = 1;0 E4 N: s! Y; {) d
// } : |# @% m. s3 {- \
! L7 c8 b. x( v# B
if (keyb==0 && keyC==0 )
) H0 z" b9 ], Q+ S8 ?8 d1 Y" t' G {5 G" U6 C) z$ y4 t! N7 d' H
P3M1 = 0x37 ; //00110111
+ c% u0 G) G5 Y. m; Q% P P3M0 = 0x08 ; //00001000
6 b2 i( y, M1 ~# r" W& m3 g& z- D; i0 o Delay50us();9 e( f" @2 v5 k7 v
ctrl = 1;$ F) k; G+ l' D$ e w) j( I1 z
}
4 i/ t9 F6 i/ |5 q8 P' t) I: Q) Y: b# {
if (keyb==0 && keyC==1 ) ' l* x4 q% g5 h4 F5 q" J* n
{
+ y& k/ i$ o( u- H, C Q ctrl = 0;
: K- ^5 U1 L; |( o: R0 ] P3M1 = 0x3F ; //001111119 B- S+ C5 c1 a$ Q3 A, p
P3M0 = 0x00 ; //00000000
$ N/ c4 b* f8 Z. T0 l# m/ z }
6 M) D, {/ g9 Z4 m }
7 ?2 Y# z, N3 k. F}
6 `) M. Z* K% {, _5 |: \0 N4 X
% c G% }5 g9 ?( C( d3 s8 ] p
# n) ~3 @1 i" y
9 ?4 N2 i. k7 } ?! j
7 X3 K) ]3 l3 p
" Z' ]0 n1 P0 I! f/ A
" w5 d6 d: Z7 I! e) B: B
2 o% ], J5 j; K/ M& l; ]
8 M" ]4 e& x: W9 a$ M# |# e" F. {+ N$ U2 Y. F/ V
5 C2 [* e: ^- Y" ~! p1 S1 Q G/ m, s1 C4 v
. r/ ^2 I0 w$ h
5 Z7 B) i( V$ m- g7 Q |
|