赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
- K, ^' ], ^2 N& M! h ~# Asfr P3M0 = 0xb2;
2 Y8 G4 B! U- i. V! Vsfr P3M1 = 0xb1;
! S& O6 [/ @4 G5 V5 xsbit keyb = P3^1 ; //10
& Q ]8 v2 W( ^2 Y, K e2 h: ~; [sbit keyC = P3^0; //10
1 v* A: L/ t' Q) n5 r///sbit s_cass = P3^5; //10
3 f4 c1 Z; b0 R* v2 m% H. v; ^//sbit comm = P3^4; //10
. K9 D" ?( Y6 j' i3 C//unsigned char loaded; 8 [1 {7 `5 n1 L, J
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起: G% x2 Q! T: e8 o3 {3 \0 |/ g
void Delay50us() //@11.0592MHz0 M; w& n. b' N# ^0 ~
{
) m5 ?- U7 C9 H9 a3 J* k2 B unsigned char i, j;
# y+ C! ?, ?* X1 s" a2 l i = 1;! F) o- x) w2 g6 ~6 Y3 s% E
j = 134;
" A7 R6 N7 J0 y7 j do1 N5 t. `; V/ _/ a
{
2 \5 w! H5 k' P0 N while (--j); t# |. F2 t3 z
} while (--i);
- ^% N5 e5 S2 f$ d+ {}
7 I, r2 X! Q" _8 E2 X, ?' ^: @: j) |% b9 d! L+ W
void main(void)
2 ~6 J) K4 U h' G/ L{! J, i n6 d( M+ Z3 y+ L6 v# y) ^
ctrl = 0;
- P2 w# S7 U1 p# V& C2 D keyb =1;
$ G) O9 y1 Q; j, ?2 O6 X keyC =1;) U! d/ j9 G; \" ]! p
// comm = 1;8 T. `! @# ~- f! q5 i
// s_cass = 1 ; 9 k* k' L! B; b! l1 C
while(1)
6 _* U {! a. K- D9 {: q+ N' I {7 s( V: ?1 f# T% ]
// if (comm==0 && s_cass==1) # @+ S* x3 o" L& C. r, _
// {: V3 L; c0 S: a$ v( d7 }( L
// loaded = 0;
) p* I9 N% l5 M! {; ^1 z. ~ // } 6 x- c: z+ Y6 l
// if (comm==0 && s_cass==0) " Q8 u- R1 b' g2 `! t" Y9 n
// {
3 v1 P3 N( X( F% l5 m/ O/ D2 ] // loaded = 1;" _0 v! M: K$ t9 i
// } ; o1 r* B' R6 b9 q9 f! v8 B
# ~0 C5 ]8 R7 ?# a s' d& @ if (keyb==0 && keyC==0 )
+ C& c: b% N" R/ f4 i- X7 E2 {3 @ {' j/ @& I. x7 v& b/ s" S) p
P3M1 = 0x37 ; //001101113 l8 t8 I8 e. w5 D6 b) T& |
P3M0 = 0x08 ; //000010003 E. D) C$ o+ o2 x0 d3 j
Delay50us();1 s3 |# T8 P4 s2 M" i( ?
ctrl = 1;; }! {8 ^6 K+ K; H
}
5 l; t# S3 q, C9 B8 p1 Y# a3 _. X& | q3 r- m* P" L& H* R
if (keyb==0 && keyC==1 )
! H4 J$ Y; }$ @3 A- S {2 j) b1 }' e' h$ x/ f- h+ {, R
ctrl = 0;
0 a" ? ]! B% P( W9 Y P3M1 = 0x3F ; //00111111) e$ D5 M' z8 B# e7 g- s
P3M0 = 0x00 ; //000000000 ?2 T( U+ h2 \ v( w" P
}: h5 O/ F/ C2 z5 U* L( f# s" Y1 F
}8 J5 O! X' S$ u4 M+ t1 S9 r7 m1 Z
}+ t& g! c8 B7 E
~# O" P. ^# {/ [8 X1 }
4 }" q6 X% V+ F) d' R3 H& `4 m
2 D) @- `3 n" e9 G) s- }
; w2 _* S% k" J
+ `: b; `' T/ p5 ~$ e
3 E5 u- ]- q; Y: s4 j1 ~0 q5 J- Q, H$ ]9 r3 P B
" t. P& @; q' w
4 x% E! V2 F2 r; E) U1 p; [; S6 L" K! K% R) q+ S2 \
; e j s& n) Q! W2 t2 i5 ]
$ E3 D9 p& u5 ~; p E7 x7 B2 H7 a% D2 s' x+ J
|