赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>$ d8 F P3 K% A2 w6 P
sfr P3M0 = 0xb2;
/ c0 X2 l9 A8 F; J- isfr P3M1 = 0xb1;
9 |" X: k7 D" B! f0 a& Y/ f. _sbit keyb = P3^1 ; //10
% c+ n/ @3 M1 h7 p+ \/ G# zsbit keyC = P3^0; //10$ B5 a" m, Z& l" _: Y' i
///sbit s_cass = P3^5; //10; P# p6 x6 x# z- o, k: A; k
//sbit comm = P3^4; //10( k: g+ O( D+ F/ `! }* f
//unsigned char loaded; ' ?9 p8 v2 I, W% n* U0 z
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
% k) M% Z0 t6 z% |1 S! Y/ o3 _void Delay50us() //@11.0592MHz2 n1 M5 {; E- v& k' s4 O( u, k) r
{/ W: f Q8 p3 Y1 @
unsigned char i, j;
! a \& W% \; Y. v i = 1;
3 }; i) U! ~# |9 z; `2 l! o8 E3 U j = 134;! g" V9 P5 [0 }5 `6 n( w* A9 z$ C, b
do3 s) B r: @' U9 U8 h
{# b% _8 Z9 H u7 o. i
while (--j);2 @( e/ u+ q0 p: h+ A! x. M$ M
} while (--i);
4 D7 Z0 V& i% N: _}
1 V2 h# W; B$ W9 N' V d( a) z: Q# H8 D
void main(void)
7 l! r( Q+ ^( `{+ V+ D) E, |$ x7 C/ g% Y
ctrl = 0;
/ G/ ?; C( u; ? T+ j keyb =1; p( K# ]9 i9 {* X/ S: c
keyC =1;% l. F/ J+ C6 R+ I
// comm = 1;
$ C( M9 i6 Z! y! e3 J// s_cass = 1 ; & L2 s* U8 x B9 N
while(1)
: d: u7 y; z( \- V, P+ ^/ J {
/ I. `1 A2 y, ]2 l" M // if (comm==0 && s_cass==1)
8 E: f7 E) F6 D& S- Y // {: A ]# k G8 S$ D: r" o
// loaded = 0;, ?) Z$ T5 ?- R% g2 T
// } $ ~# r2 m [& X$ F
// if (comm==0 && s_cass==0)
2 g. u9 H4 F. l7 N // {
' B' x( t: s' s // loaded = 1;
9 H! q/ H5 b) ?3 h, s // } ( k, i" l2 ]8 D
: e) M2 A: Z0 d9 T if (keyb==0 && keyC==0 )
4 t( u7 n' D9 V2 v' y& H- f {. c6 S& p" @" I& n! n# F) ]
P3M1 = 0x37 ; //001101118 u- Z+ b4 f/ @, t
P3M0 = 0x08 ; //00001000
- C; @: V+ Y( ^3 m- |. R Delay50us();; e1 ^8 K' T. W
ctrl = 1;
V: v! y0 J$ ]0 i1 A2 u }
4 T- B9 F% v1 p4 F, D* r% I0 g
if (keyb==0 && keyC==1 )
) o. e3 ]: H6 h8 s, ^6 U {# }# ~; B( n0 {
ctrl = 0;! D3 D$ v( v" ]. P3 }) }5 W' p, [
P3M1 = 0x3F ; //00111111
* Z! @- R+ P+ f0 ~1 p. j2 B4 B P3M0 = 0x00 ; //00000000
: J _ L/ Q; E: s# x }
3 U! H' t5 L. Z" ]0 j }
: |2 Y' J2 K& e! n: |}
/ |3 C5 g' v5 z2 M4 H: g" z8 t. t! V; c7 y
! i$ V- O* A+ b# |
l+ K) V# C2 q6 L( d4 y
8 Q3 i6 h: L9 h/ ^( z5 E; q
: B2 i' L/ b* X# M7 V
F7 j5 P& [8 l/ T( f3 j
6 s2 W; J9 z4 M" ?& ]- H0 i
( {: J! {, d N U
( U8 H& Z8 ~( e& d( E' P& P9 J7 ]
5 Y6 Y- ~' [- S3 p) k# y4 T7 M, g. G
/ E S! m: A( X w
|