赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>5 J: h' Y- T. n. ]
sfr P3M0 = 0xb2;
) x/ P0 |/ ]) c0 H- ^# `' Gsfr P3M1 = 0xb1;9 |# H/ G; V" l/ X$ ?( g$ B
sbit keyb = P3^1 ; //10* w& S0 Q: e* w1 o7 l7 e; \
sbit keyC = P3^0; //10
* c7 C, K3 T/ W, g" [6 S+ ^% J///sbit s_cass = P3^5; //10& d8 a s( e' Z# ?9 r
//sbit comm = P3^4; //10; }1 H% o/ s- b5 B% T$ A& O0 v
//unsigned char loaded;
' ^5 F* U# e5 Y/ Ysbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
4 v7 W/ t7 {$ x7 e6 b. avoid Delay50us() //@11.0592MHz& r* P' S0 |9 S1 {7 g6 I
{, ?1 e, g' }6 M1 M
unsigned char i, j;
+ z" I: S# H- L/ l% a# }* f i = 1;
! z- d# ^( r! w' u j = 134;
- U7 c3 _, s, _! M( j! S do* j( V2 E! o# {+ L- [. \8 K. w* B; s9 Y
{
. j# b7 D) e, y5 G0 A4 X0 u while (--j);
! F: I0 K) k4 I/ o' d# G } while (--i);
& N8 V% R) B( V! v' L}5 T9 x6 f: ~! _3 t: W: w% p) m% n
0 k# ^2 [8 O g" c6 W. c
void main(void)4 O6 A- [) i5 E" t- B
{
" z$ s9 Z/ d, ~9 B! |. ]6 m ctrl = 0;0 Q2 V5 m" n. T' ~ t z# v( S
keyb =1;
" u G- Z0 F+ A# [& h keyC =1;
: G' f# ^/ f+ i5 S// comm = 1;
+ H, v; N* f4 C' K7 s( u// s_cass = 1 ;
9 B6 n7 x$ v0 P# }( o4 @ while(1)% P1 j E# O }) k6 f
{
- d; O, s) B% j // if (comm==0 && s_cass==1)
/ {* q: Q' @5 q // {
' A1 M: E: C4 Q // loaded = 0;
) U# J* |) f9 U; o, D1 q // }
: U4 C( X& D) p7 z) U! l // if (comm==0 && s_cass==0) 7 `# V: I3 | I! v0 ]
// {
8 n. ?5 U w( L // loaded = 1;
; e5 ]& a- S, Z6 ?: x // }
4 I6 t, J3 A7 z9 U- _" G6 R8 W, o. ?
if (keyb==0 && keyC==0 )
; o& z, ]& |. O" }% i& P {/ n7 @( V W9 a
P3M1 = 0x37 ; //001101114 q# |% k5 [" S$ I$ F. |+ G4 ~* `8 ^
P3M0 = 0x08 ; //000010006 s+ R' P8 X7 Q7 D `
Delay50us();6 W$ G) J$ Z0 H: e$ `
ctrl = 1;- z5 W* _7 N5 K3 }: z
}7 r0 b9 Z9 m+ K
r1 i& K* ~' _& l; u
if (keyb==0 && keyC==1 ) " c& C* l: D# e' J& |2 U
{. C* Z8 L$ Z: u, ~% t
ctrl = 0;
# F5 P: P3 `5 N P3M1 = 0x3F ; //00111111% T1 `- f/ E: d+ U2 C+ M* H% o% c% X6 \
P3M0 = 0x00 ; //00000000* Z7 D: G3 q7 @0 Z: P6 ]
}
$ m2 j2 [' L4 s1 X$ y6 y$ p/ R/ w }
; }8 @0 f; S0 f! ^" q2 a' I}' M" a/ v7 I* W+ E
$ _" G3 {" R1 m& J' s
2 C5 O" Z' q6 t2 h: p/ D+ E8 K0 w) B
0 O) c7 n; D5 u# G, k6 V
4 F& ]2 ^( F2 q& y! V8 q. f- l" ?+ t4 c; ^* X9 y! j
5 b& O" G2 C: ]' _* D# @. }+ O, T5 q. e3 r# j' t7 u
8 v% n" d% ?' _- j5 m3 O# r) Y3 f0 @0 u3 ~4 d
P+ A! b1 f0 G8 j; h5 i; i3 Y/ x; f; G6 y+ @: V& i
3 ^ p4 ~. G+ i* Q3 L* c. F; Y5 K5 B; c
|