赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
, A5 N1 e* I8 ^6 H P; M2 xsfr P3M0 = 0xb2;9 U8 [- ]4 }- T9 D$ ~
sfr P3M1 = 0xb1;# N' B1 {& N9 T! ~# @0 H
sbit keyb = P3^1 ; //10+ M* T0 N2 d8 C1 `: O* H& {( d
sbit keyC = P3^0; //10" ^8 j) I2 ]6 j( A4 z
///sbit s_cass = P3^5; //10
6 z( k# c3 z' t/ e//sbit comm = P3^4; //10
( Q X9 _7 p6 {* u//unsigned char loaded; ( r- N. P0 ~# D1 i' i( T* k
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
- r2 n c" T* b3 y5 ~void Delay50us() //@11.0592MHz
( H- Y4 _: W3 S- C' b* T{) z" A- D3 P! ~) Q0 W
unsigned char i, j;$ ?2 y* s4 q2 W* `$ U5 i/ [
i = 1;2 j; n# j% ^9 ?6 p! h9 y+ Z. z3 {/ @0 W
j = 134;; V0 M# X8 g" L, r/ H
do
% m% V( Z# j0 ]5 I5 |" P {' q+ G: V$ ?9 o3 V% k
while (--j);2 ~' h+ }1 l, h; |0 b S" ^
} while (--i);. v5 a0 i# f. J" \! B
}: l# T. c2 M Q* C. p
% _, n- K! |# [5 ]" v
void main(void)# h9 ]/ n @/ J! L+ `/ [7 P
{
, p1 w6 y' X5 D ctrl = 0;
; B* f$ A4 G: L keyb =1;( o7 m/ m& ~+ f0 A& I
keyC =1;
0 r# W' O, z$ _+ y// comm = 1;$ o/ g8 j/ J9 y4 r$ v. I
// s_cass = 1 ;
9 [5 K* ]4 f1 Q+ D- k @ while(1): t/ ~: d9 o" B7 j8 B7 W
{/ w4 S& v% @) K6 m' b
// if (comm==0 && s_cass==1) . {+ o0 k3 V z$ t$ ]7 |
// {
1 e# B; }' T1 k // loaded = 0;
1 g5 V5 `8 \4 H, X% x3 [ // }
: G; n- ^, e+ M5 b% d // if (comm==0 && s_cass==0) - O6 ~; F! m3 ?$ J% g
// {$ D) Y% b$ W# ]; M2 D6 G
// loaded = 1;
; l% W) q( u! a4 ?+ J( X, F2 R // }
c4 l2 i% ~( R9 L
7 }; \" ]9 q0 F7 |- j; z, `7 C if (keyb==0 && keyC==0 ) ! T: K6 P& }, ^. n1 }: X
{
9 J: n# H7 s; S& E: R P3M1 = 0x37 ; //00110111
# H, I' Y) R7 b( d# f- C E P3M0 = 0x08 ; //00001000* w [/ Y1 H% g
Delay50us();
' S- t6 X8 k# R$ h, H$ N" B ctrl = 1;
4 {; l6 k) v( x6 ]0 W }* h, h: t/ |! W8 I6 R
+ g" m' [0 D$ o2 N% J5 ~% x
if (keyb==0 && keyC==1 ) . ~! x# g3 |: X. ?
{
$ e ?0 R$ O; c, L ctrl = 0;
- I& L& A. q( E( a$ e. F4 U P3M1 = 0x3F ; //00111111+ B! b& Y& E- V2 U" M1 r' U
P3M0 = 0x00 ; //00000000
9 u% x2 c* M4 Q: ]( l' b6 S }" p( y* k) o! m3 G. z6 T
}+ }$ d, L, X' U$ T, O+ j( s7 X
}6 o& H# {- `- n1 P9 g. e' ~
9 L% i. Y4 u1 E( Z9 ^% O7 f
$ m9 J9 }! a+ _
8 I( H1 |9 z( J% c. x; p6 Q
9 m! _" j$ m1 L" u$ D6 m; ]9 ]- \* X* a. |( M0 B8 P. C4 z
0 q" q# B, D$ @5 _2 z
M8 z' o: s' X- x: O1 X
3 Q# u m" X9 @# \/ t: p
+ |; ^, a4 q+ I k4 m( o' ]2 P& ?" w/ |
1 F4 `2 u6 ]2 y4 M8 |/ @1 `6 ]# S0 C
. k k/ s( F/ ^* G2 L+ _8 g; I7 c: v h7 G
|