赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>; M7 _2 q9 J5 _# j" w% g; K
sfr P3M0 = 0xb2;
9 w( `4 ~9 \+ w% isfr P3M1 = 0xb1;+ \7 m7 X( {9 B3 }$ I! h+ F
sbit keyb = P3^1 ; //10( O$ _6 ?; x% U* u
sbit keyC = P3^0; //10* ~* f3 x* u2 C7 h/ P
///sbit s_cass = P3^5; //10
6 F# b% r3 o' m//sbit comm = P3^4; //10: X, C: z' ~: |* G7 _1 X
//unsigned char loaded; 6 I) [% }* c: s* S" s& F
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
3 J% U" z+ k, M6 k& h0 P5 zvoid Delay50us() //@11.0592MHz6 L9 m" m/ Q4 F5 G0 k" S
{6 B( @7 O, _/ e( W# u& j
unsigned char i, j;
4 J5 V R+ m# x i = 1;5 ~6 v9 E( R: ?0 y! X
j = 134;' M+ p% t4 g# m
do$ d' T' O( m. e. R5 Z2 m
{
# ^5 g+ V; r, s/ K; E while (--j);
5 s0 a- G; Y; K' P } while (--i);
3 }0 p; l7 M% j1 O" _( _6 u( ^$ D}9 I# U( l. n4 a7 e
: F% f1 o0 [- n+ P {6 V0 y# Svoid main(void)2 }5 i) m+ B$ T
{
5 h o; x: m3 B& [ ctrl = 0;
& s; g( V) s/ N' r ~ keyb =1;
+ _. r8 D* a( S/ k3 h; ]( G keyC =1;4 ]$ P. e1 u- t1 \6 [4 A" l
// comm = 1;! A' |, g' |. T
// s_cass = 1 ;
6 B2 K- H9 K, j& g while(1)( P0 n, p; W9 N1 y- u* ]" m
{- p; i3 _- u" ?- V
// if (comm==0 && s_cass==1)
% q5 J* J7 J; D9 X/ n1 M. x$ Z // {
1 a+ g+ _& R" {. ~1 [& p4 \0 i# v0 o // loaded = 0;
* P$ S( m( F. X) U // }
3 ?+ ~$ i0 R6 O9 P5 H6 ] // if (comm==0 && s_cass==0)
2 s! {, _4 H) ?4 u // {/ s3 a* ~& E% h
// loaded = 1;& n2 Q$ H3 G) p, K' o
// }
& G W6 E% ]6 w' f9 C; b$ G; @( |$ ^- f4 O/ r/ H" j0 h" Q) q
if (keyb==0 && keyC==0 ) + g2 ?% ]& z. L" H6 M
{8 L3 D2 X/ I" }# M% l3 L
P3M1 = 0x37 ; //00110111, c6 ~* J, [% T$ T0 K- l. A
P3M0 = 0x08 ; //00001000& G S, a2 T9 b d& u
Delay50us();
1 o! {, T1 I% b5 L% p/ [ ctrl = 1;- H) \4 J. v( M- K+ O) J" X
}
. r( I5 H3 ~8 D: D: E- J5 R. F$ L0 o5 f: e# q8 Q: k8 r+ s H
if (keyb==0 && keyC==1 ) # C2 K5 N, }4 Z
{
- V/ P$ i5 s* t, I ctrl = 0;
( o' q6 w* K. `; H P3M1 = 0x3F ; //001111113 w, [- I. w- Z6 e
P3M0 = 0x00 ; //00000000
5 x" E. k& u; } }! d' { }" {* z+ h! ?8 f* g. g
}
, {8 Y6 x* X6 y: d3 K}
) u+ U) U* {2 D4 f f+ |" Z' H5 |9 p3 S
( G4 W* Q A8 y8 E( Z- `
0 I4 f5 K6 x. d* D
8 W% [( f' m8 [. p* N
! a) J3 \. L) D( O0 r8 e3 a
/ S3 X( l+ Z% O7 M# K* {9 q7 \6 I: l- L
+ j# ]. x4 R4 L+ U
~9 n% O& x Z) Q( M
% W# |. ]; @: B0 X+ x0 b) {4 ]8 [2 Y$ F6 A% ]
, {+ L- _6 y3 F4 A' r2 E' A1 r' [" `# w, g) z. A) h! E3 \
|