赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>. h1 x, h) O4 v5 I
sfr P3M0 = 0xb2;
7 }, [5 ^4 X6 f9 l- C8 y8 esfr P3M1 = 0xb1;
9 A* J7 o) u4 {8 X4 h9 H$ b$ l. ^sbit keyb = P3^1 ; //10
5 @8 w* V7 a- L7 N% l5 p2 ?+ rsbit keyC = P3^0; //10
! V/ `1 r3 r P( n. O///sbit s_cass = P3^5; //10; o; _9 h& b. |
//sbit comm = P3^4; //10 f- D$ t% w) t- n
//unsigned char loaded;
7 D0 L$ K4 p7 |0 k) ?7 esbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起1 B& H3 p5 \: ^6 ^5 o) T t
void Delay50us() //@11.0592MHz
4 f9 L- s; Y6 ]! [: m5 |' h3 t{9 }4 Y, t+ ]- q4 I
unsigned char i, j;6 G2 v9 Z. p1 w0 u% H* q+ S
i = 1;, n5 d7 V. q# R) T: E# u; ~
j = 134;
! Q! A# Z6 s0 c9 a; P+ a do9 P' P; a: y3 ~5 B5 {; @: P
{
/ r5 t4 K7 j7 u while (--j);
9 Y) w8 q+ P B9 c2 l } while (--i);5 y, U6 C2 ?% }8 }9 N' n
}9 o" ^* o' h3 } P5 a% C E- ~; p2 C
+ _$ Y. T( J. @+ y1 ~7 B
void main(void)$ n1 t7 Y$ u7 y9 [5 S
{1 i N& M( e/ b0 A: R" n
ctrl = 0;
, O4 ~1 {/ z$ o) ? keyb =1;) g3 o; x4 r' ?
keyC =1;
* V5 S1 h H8 D! W. [// comm = 1;) G8 k- _# H- b* ]+ U6 Q
// s_cass = 1 ; 0 c- Z$ D+ F/ ~/ ?2 V" W0 D, R
while(1)9 M2 Q5 w( i* ?, J6 }. p; e
{
! Y2 p: b+ K/ k7 U5 g! n. A // if (comm==0 && s_cass==1) # a( I" u0 D" z0 v; A( O
// {4 j. i* H1 z5 H5 t" }# Y
// loaded = 0;; ]6 @4 v7 a* B) \8 M
// }
, `) f. H. l s8 f: a# w4 N // if (comm==0 && s_cass==0) ( v0 S2 b$ q* U9 y( o
// {
7 R b" x: X/ ]6 n7 n0 Y7 J // loaded = 1;3 P6 ]/ m; _5 [! G& v: Z
// }
5 B7 s; p& |6 N, H: L! \, I! m; M: ?' W7 u) C) I
if (keyb==0 && keyC==0 )
3 t/ ^! T2 u; k i% u# z {# V" o) S2 E" Y9 [+ x" l# `9 k
P3M1 = 0x37 ; //00110111( V# j% [' M- D7 L5 L- P) n, t" L
P3M0 = 0x08 ; //00001000* |: m" ?& r- x
Delay50us();
# r1 i( P" X/ G) J* A+ }$ H ctrl = 1;
2 \3 u7 {5 t, C6 T! v% R }
1 Z' Y2 B3 A+ D! L7 M) w- u/ b2 W" c% R- Q! Z& T4 N- v6 U
if (keyb==0 && keyC==1 )
5 g+ X9 ]) I8 `- N& \8 u {
4 ]) y3 V# E5 O, ~ ctrl = 0;! ^8 G$ H4 o) [5 m: {' D( o
P3M1 = 0x3F ; //00111111
, F! {7 X4 l5 u" s P3M0 = 0x00 ; //00000000
) f0 W1 B9 P% l' Y }6 u7 m8 Q1 j) U b" V! x
}( t1 ~9 q+ n( @3 j
}2 ]' j# b }* Z( U
1 d0 [ V2 R/ P2 w, ~. a3 o
' E; P0 J6 A- c" r; o; K- w+ j; H* @( M3 u7 \$ a
$ T$ o( o' [. m& k; \
0 a1 S1 q8 \: l! `# W/ m
- M+ i8 Q$ k* ]9 M# `4 q6 t
2 e7 n1 f6 L6 T
4 g, Q' F$ J# T8 A3 m: |0 @. x
% A8 h- M- I7 c) _0 G; H5 p
3 _( e- @1 ^4 e+ ?5 D( y$ o
% m) C; ?8 E, o; F1 y( X/ k
" O) i- F) ]1 T" W0 g% I. T# u4 L& r, `* E$ v2 Q7 F$ Q# ]5 Y q Z, \
|