赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>, D* M; H1 E8 p$ o# s
sfr P3M0 = 0xb2;
+ M) u$ w- V7 M2 Z: I+ c: r, V3 Fsfr P3M1 = 0xb1;
# G4 ^' _3 a. s; p3 s7 x; Ssbit keyb = P3^1 ; //10
% n" Z6 `3 }3 usbit keyC = P3^0; //108 Z3 i/ {; r: h5 U' r( y" c
///sbit s_cass = P3^5; //10$ T& t Z9 r9 G; |- {
//sbit comm = P3^4; //10
: T" ^: B% Y) D//unsigned char loaded;
4 n& `: G8 d1 V) B+ a" F: u, ]sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起; \( V) L* c0 c: Y
void Delay50us() //@11.0592MHz
' C# I! f9 c/ l* n8 ~$ n{
- h$ e% n4 D# o8 v* R9 ?* \7 ? unsigned char i, j;0 ^: |; ]! ~$ h( }8 t# s+ q! v
i = 1;
* `/ j9 e' P9 H" F' m j = 134;9 s/ M4 E6 N, e. |& T
do
; _* b" Y, J3 P {
; O4 q) f+ {7 D3 L H while (--j);
% P9 E( }- k( `: c; x } while (--i);% k/ k; P6 ?5 f; F, E7 `
}
- b. q; T& K8 ?7 |8 ^( v$ S, p. t
void main(void)
' L5 ~8 h2 v. H/ O* _& K{
. ?0 h; Z) {, s4 y; O% Z8 i+ b2 f ctrl = 0;; X' Z2 N: u7 L" R( C/ h, f
keyb =1;
( K5 J: z6 [5 B+ r" `- U: n keyC =1;
$ p3 w: w! t8 Y! B// comm = 1;* _; U$ D9 Y# h0 z6 R- G+ F
// s_cass = 1 ;
5 }; W5 k) t6 c5 ^: D0 a while(1)% [1 a5 a |" _
{$ E( i$ b% D# A' {
// if (comm==0 && s_cass==1) $ i! y8 x; g/ {: X% M4 A# U
// {& d1 q# `6 x2 `. i/ p8 G8 U7 h$ C
// loaded = 0;
6 b7 O! h; X H6 V7 D# e2 G // }
b% Y. y' S( g9 J4 S // if (comm==0 && s_cass==0)
7 T O1 X1 R4 u* {# @1 W/ B7 s) } // {7 ?% l" b* w& q, Q9 W$ y: z
// loaded = 1;6 w, K$ E" `8 Q7 Q9 s
// }
/ T! S2 i' n. b
& p6 \: H7 _/ V/ ]# g% } if (keyb==0 && keyC==0 ) 0 s8 K8 |; G% f. T% v; }
{
- A; ~5 ^! L% J' k+ J4 O P3M1 = 0x37 ; //00110111% F0 H+ i: O& G- G2 X
P3M0 = 0x08 ; //00001000
& z2 Z7 X' d5 Y; t Delay50us();6 X8 U3 W6 ?1 y0 I9 S+ B' @, a
ctrl = 1; c- @# {! B) q j
}
% ^' K) E; x) }, }% s/ T4 N0 J- Z6 X, V" F' A( V
if (keyb==0 && keyC==1 )
! O2 Q5 ^9 `( O- c4 b7 v7 ], r8 @5 R {+ H7 M3 ~) d) d; W# G) s5 y
ctrl = 0;
0 C h# @3 Y8 _ P3M1 = 0x3F ; //00111111/ R( {! g5 Y: u% p
P3M0 = 0x00 ; //000000007 f) v! D( @0 m6 k1 A7 m, n
}) X4 W: n0 H" ~$ g6 [
}
! S1 T; [- Q1 y7 \* U4 k1 @/ L( z}2 X) A& [% j! H: o8 S0 M
- H# W' z) Y0 j' X" Q% w6 ~
0 l7 F# k8 x6 c
% r3 I4 M' v4 \, N& @. a% f4 D
6 ? m4 e. J5 T0 k% ?
( J% F) u9 b' ?% |
3 j& S5 q1 }6 a, A# Z
: c( I6 J+ F0 ^3 x+ |4 u8 n
# [. j0 e& a" Y& l5 h) h
1 C' |. y# \5 L( h: }. b# i( @( i% ?% p/ \$ U
# S# e7 h6 F7 Y( M0 `4 U+ c0 {; j; a3 K; `; }2 p' h8 ^
2 E( O- N b% E1 a
|