赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
* o/ n. B5 i$ `( v' Hsfr P3M0 = 0xb2;
4 a$ A+ I. k; q+ \. p( usfr P3M1 = 0xb1;) y) a" g, [5 S/ U: P4 L) X. _
sbit keyb = P3^1 ; //10
: r5 T( K8 Z5 Q- b4 fsbit keyC = P3^0; //10
0 }: x7 E& _/ M. `1 e; \# I" f& R///sbit s_cass = P3^5; //10- e1 E& [% G9 ^) B( I/ e$ \# F
//sbit comm = P3^4; //10' r1 l! V* T- {7 l/ p
//unsigned char loaded; # Y) X& X4 l3 r0 ?8 \$ ]- p+ u8 C5 L! C
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起) @/ I3 m/ H$ O
void Delay50us() //@11.0592MHz
" b: k4 D( M/ b7 J5 q* c{4 b- D# ^- H5 l+ t6 h0 b
unsigned char i, j;
! t% w; Z! {' s2 o. U, g- _! ] q i = 1;
0 R, ~3 U4 z! `0 }+ f' P' U9 S j = 134;
& N* w0 f4 N6 g5 j do
. Y: n* c9 s8 b5 E {' G4 S/ x C* W( H' P
while (--j);
7 x4 f& u4 V, a' T0 b8 d+ D } while (--i);
' h8 e A, K& G; u6 s( j}% Y9 i% ]$ y8 x; R, U. V
1 t! _/ C0 _4 d9 K& Zvoid main(void). P/ E% j6 M4 N$ ]$ j2 M
{
$ v# g" K) Z& r$ a( e/ F ctrl = 0;' [/ X% \6 @& ?( h
keyb =1;
3 A5 h* u$ s. Q, \0 H keyC =1;
3 d8 W. `- I1 R. v& f; M1 R9 Q// comm = 1;' W( a3 c& d$ t! q' G7 z
// s_cass = 1 ; 6 j$ O9 X5 O2 ?+ K& m0 e# ^
while(1)
% p# U7 Z) X$ v3 k6 b% M |- D, C {
7 @% _; u. D, H // if (comm==0 && s_cass==1)
5 W/ o9 s+ |, X) g* N5 [- A& e // {# o9 L0 v' o3 ^1 U# l
// loaded = 0;
5 J5 `. y8 j. I6 k! }6 F+ `2 _ // } + s3 S$ c2 P$ @1 G! W
// if (comm==0 && s_cass==0) 8 y, C) w# |. R7 D/ ~1 E8 A7 S/ _
// {
. J) ?$ h) r2 n) ^% I3 V // loaded = 1;
) N; A" k& f- C3 k% Y, \8 F // }
8 v' |7 z! R. \) w: L
. K& A! G/ U; |% ^! c* O if (keyb==0 && keyC==0 ) $ U6 Y# _& |1 \5 o# I
{
/ G' E T8 L! B/ w P3M1 = 0x37 ; //00110111- _) C$ X8 ~: a+ ?8 c9 D6 u# c/ s
P3M0 = 0x08 ; //00001000
; V" u' O- W+ f& y/ e Delay50us();
7 ], C5 y7 q0 L8 G3 [/ u ctrl = 1;' |4 i( S7 _" q% c( A3 ~
}
; n" {, r' U- A4 u5 K, S; x0 I% j2 P% E! j% T( j& h
if (keyb==0 && keyC==1 )
# @3 W" p1 ~( U& f7 B; E# J {
" |; s% ?$ K# w ctrl = 0;2 a$ D3 o G9 s& L
P3M1 = 0x3F ; //00111111) s, j! a& b( Q+ W; A( [# X
P3M0 = 0x00 ; //00000000
9 j. n$ W ?9 M, b5 a. }. V }
# K( f/ w$ j9 c1 v# N" K }
' m) ?6 d+ d! G% I9 M$ i3 g}0 |# x: @. ?" t/ N
& }! D* R8 S$ e9 R" g
- v) [8 k. _" a& u+ O
) w' A- e: o( a( K4 H' k/ G5 [0 M
, B) v+ Z4 [$ t- I& Y
' J" v4 f; \# B8 \( a7 ]$ z
! ]+ E1 Q' U: H
2 `: Z# I( V( \( Z0 }
; h7 X- a& K& g' W% p. V* K6 _# G
. D( s8 \6 n8 A) y0 V) i
+ c7 Z' |; D* C! q( ~; ]+ B2 n8 C. R7 Q. Q
1 |8 |$ {2 H: u, h0 w
|