赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>' y+ U- _" {* H2 P7 z
sfr P3M0 = 0xb2;
6 h: c6 _; S7 Nsfr P3M1 = 0xb1;! A, I( x6 G* Q" Q. ]0 h
sbit keyb = P3^1 ; //10! O1 E# O( K. `- ~8 G8 Y. V. ?
sbit keyC = P3^0; //10- h' D7 Q4 j" ^% }- @
///sbit s_cass = P3^5; //10
1 W/ c' a3 J; H1 w9 M//sbit comm = P3^4; //10: @; @7 b2 J" d8 ?0 z
//unsigned char loaded; $ e$ K9 y2 L* C2 m) J
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起4 Y" X5 h. [# N: U
void Delay50us() //@11.0592MHz+ x+ C- z0 K3 `, t1 r
{: A) @: J& q5 b" c
unsigned char i, j;
$ j3 T; p" { S, Z9 k: j: ` i = 1;: {4 | V- r9 s% l, G) N- j- g/ Z% N
j = 134;% D# x2 q9 }; U9 W N- s
do
6 Q. G6 w; _( ^6 R: O# b5 X. n, D {7 J) |" K* A6 M; T% _2 ]. V6 `
while (--j);6 q4 o& R% C4 j1 O$ U3 s
} while (--i);3 l y1 t, D& A+ v# Y: w
}, r; r( M4 c$ X+ S
2 _) {! O, T" t% a0 Y) p
void main(void)
4 R6 ?( X8 j8 J! ~) ~3 h: w{3 A& ~6 [' U7 z3 ^* h9 B6 U
ctrl = 0;; }; `, W Z4 ^2 [
keyb =1;: x R( t+ {! t" Z" O8 W" w
keyC =1;
9 `0 R+ [6 e4 R/ \// comm = 1;
, h, _5 W0 L5 D$ N& A// s_cass = 1 ; 9 R- P% [0 w& R$ u e8 F o
while(1)4 w0 q" k6 T8 R1 m- {0 j
{, u- o2 o) _0 q5 d" r( [
// if (comm==0 && s_cass==1)
$ |: K, s1 S" F: Z& Y8 J# b* Z/ B // {- ?# V) p) d/ Y( \; {
// loaded = 0;
' `5 U U* `6 X5 L; U. D4 V3 A$ W // }
+ Z# E2 T2 m, t // if (comm==0 && s_cass==0) 5 b* h) s/ J* u2 K! b# `
// {% m! o. p- s9 Q' `
// loaded = 1;+ I# w9 }0 {$ s) f3 b+ I
// } 1 c- }! w" J6 y: `
' b9 V- k) M0 H) C9 l0 _ if (keyb==0 && keyC==0 ) ( D- p$ r/ B, r1 n8 P
{& I0 [9 S$ w% q/ l2 ?' E+ K' H
P3M1 = 0x37 ; //00110111
8 [6 b: Z1 g! I5 T* M5 S+ Y P3M0 = 0x08 ; //00001000: L; v& E/ S- F. I. R8 n [
Delay50us();
- L; i9 X$ k7 W ctrl = 1;$ S. v+ D1 q5 T7 ] V
}# f/ L* Z6 Q' v. M' |% s2 b
2 A w+ X+ S' p7 l# M M9 X
if (keyb==0 && keyC==1 )
7 s1 p5 m9 W# R- H w, O3 i& B% X* p {2 u6 U) K* {4 o3 z' j
ctrl = 0;
* U$ M5 _- q6 p1 Y) u P3M1 = 0x3F ; //00111111) l0 z" f( h) D
P3M0 = 0x00 ; //00000000
; _' }8 V! K) ~1 u. m }: n2 c. [$ N+ ?+ v2 v6 Q
}
7 a! @1 T1 O4 ]' J# ?}( p2 |: q. T, t( e
6 M* ~$ ?5 E& N+ d3 M v
7 T9 p: B( W' @7 b) ~, D c) ]' Z3 Y( @( |3 b! f4 a! |6 L
: ^1 M. i7 x8 [2 w; Z" i7 r
. X5 x$ x' g5 u& r
1 ^$ p( D: f5 h" `) h
: W+ e! o9 [' i- H1 N0 G
5 ~9 e7 W& t+ ?$ e, ?, r8 B$ h! I$ t( a
0 ^5 m1 H3 n0 ~ `* h" b
' @$ k( t U/ Q2 |2 R. H
2 O! f8 }( U, t+ E% y2 w9 B$ n: F, u; x1 q a
|