赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>9 H, z9 p* _) p. s5 z3 z" B& W
sfr P3M0 = 0xb2;* d* V. F( w6 J8 T# C4 a
sfr P3M1 = 0xb1;
4 g3 S5 x4 e1 q# d! Csbit keyb = P3^1 ; //10
% a7 \9 [! W: m- f: T0 v. Rsbit keyC = P3^0; //10' g( i% _$ ~) B5 L
///sbit s_cass = P3^5; //10# H4 p7 X1 n& n) U' K4 c
//sbit comm = P3^4; //10) P% P' {# Z; I8 i% X
//unsigned char loaded; - I& H3 z7 c8 T
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
- P, R$ ]1 ~+ c+ I4 G; Bvoid Delay50us() //@11.0592MHz
3 t9 ~1 u0 b3 y) l{- X" x0 j0 _7 r: d" [& |, J2 H( m
unsigned char i, j;, g0 r [ ~# u& }* O8 `3 Z8 r
i = 1;
7 E2 k* x# U/ `; N j = 134;
0 |- Y2 F* Y- k# c: z9 x do
0 N# l( i* \! o0 a4 a% f2 \ {# `# M8 l+ R" C
while (--j);! l" n7 `9 A- Y
} while (--i);! C" K4 {, E- ^( s3 i
}
7 ?, O$ ~- d: N) d) a6 D4 J; `1 I J3 f! V& ?( j
void main(void)
0 g4 `! ]$ ~* d{
2 t8 e! s, O. {+ c8 J( r ctrl = 0;
/ o* T% _2 V5 A+ p keyb =1;5 j3 Z" o) _( H
keyC =1;
+ x! a7 _8 |/ Q3 N$ r8 S3 Z9 V// comm = 1;
: o: w& _4 b1 S8 R9 P5 h" |2 Q* W: S// s_cass = 1 ;
7 u- g) l. ~- [$ @ while(1)
! |) d- ]' F/ E3 ? {' k Z3 V: E" U
// if (comm==0 && s_cass==1)
, p1 j# r" S) K // {
4 J) y5 l3 Q2 Y# _9 o: ?2 n // loaded = 0;, Z# L; c- h$ @/ p3 Z
// }
, V- j; R& K# |: G Q // if (comm==0 && s_cass==0)
' \6 }0 q& w3 q9 v5 Z/ P- U; Q // {3 ]5 n; F) D: P3 I& {4 R/ L! M
// loaded = 1;1 A- ~5 w( D2 x4 O
// }
, b& x8 r; ]- W& f* y: i1 c3 @" u9 `; k6 y0 e% K8 J- X' O, b5 ]9 o
if (keyb==0 && keyC==0 )
- A+ J2 H' |* q+ l/ F { m- P d: n$ ?+ ~
P3M1 = 0x37 ; //00110111# }) d. L2 ? s3 k0 Y' T# }
P3M0 = 0x08 ; //00001000: f" h& H/ j1 e! I- j
Delay50us();
- i8 L; r' t1 U4 s ctrl = 1;
2 ?9 j- A9 L" [, j5 L3 Z; A }1 l* m8 t; ]2 ?
* W$ \: b, U" _2 l, `
if (keyb==0 && keyC==1 ) , E2 n' w& n; W. J8 M8 a( D. v
{7 q, \0 ^; w8 D! L
ctrl = 0;! ~# Q# A) E& ?( s5 [& o
P3M1 = 0x3F ; //00111111
% W0 B, B% i3 Z5 W1 U, S6 ? P3M0 = 0x00 ; //000000004 c& w2 W! d4 H- K& K0 z4 E5 X
}
% V |7 a: G# r( q }
2 U& b0 H' C5 z+ r+ u" X# P}
% u5 y, S4 i7 z5 i/ T
6 K5 n) K0 {+ ]! \
4 {$ g, o( {2 Z6 A
, a4 B/ D J/ O d7 D7 x/ h
& y+ Z9 } o& ?3 j
5 V7 Y1 ~+ u0 h) l+ r% Z5 U% r
! z. ?. e: l# |; C5 s
% E# q p/ y3 C# w/ S) O8 ~8 O
* M6 q9 Z3 T* q& D# K& K C: s3 l
% a" l1 j% T I# _+ c) W% b! J, F( P/ U2 l8 W) \+ _* s
8 q# y0 s* M. O2 a
& e0 o% _, I& h& ]7 S5 |6 G' N, Z, j) o5 t1 r- {
|