赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
* E" ]" H( b( i) X* Z( P$ T! {0 ?sfr P3M0 = 0xb2;; N$ [) Y- V9 S% D j5 m
sfr P3M1 = 0xb1;8 d; T* l* N9 a: ?3 O+ I1 J1 ~4 t
sbit keyb = P3^1 ; //10, ]6 Q$ j& x I1 c1 {
sbit keyC = P3^0; //104 u0 y( ^6 ~5 E9 Y* [ \( Y: q
///sbit s_cass = P3^5; //10. y6 P/ f; ]/ }* Q* u
//sbit comm = P3^4; //10& c/ \; [' x1 p7 L; I
//unsigned char loaded;
2 j, M; Y4 K% u J* W9 @' @sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起: h8 n, O0 {0 u/ E3 W
void Delay50us() //@11.0592MHz
( @( y: M# @ K{5 x; G+ G0 q8 [" m
unsigned char i, j;
% P/ S9 k" @! W i = 1;
/ R3 ~+ r- s" T, t# h- s9 ^$ z6 X j = 134;0 h, c0 V+ x O
do
% Q9 T. Q1 V! U4 L8 R( q: h Q {* R9 T- J. Q! K% t* w' _5 S
while (--j);
" O }/ X! D& d/ ~ J8 k } while (--i);
0 u; i( i+ |1 `; e, a6 p}
0 g& t8 d9 e! C# G; _: m o0 v# W( Y d: [2 A: |2 O) Z
void main(void)' {( ^3 r# |& X0 _
{
, z, R, V2 a7 r3 k- z2 W1 D0 G2 ` ctrl = 0;7 O' I# g: E2 X7 n
keyb =1;2 }- o" w. n/ s w8 d
keyC =1;
8 e1 F" _* g1 `1 @// comm = 1;
' M5 B) f, O$ [- O// s_cass = 1 ;
7 e6 C& x$ n8 n; s while(1)/ i& V+ o9 ~4 p% f c- h$ V
{
7 G, Y8 X1 k6 c* E" j! F, [7 [ // if (comm==0 && s_cass==1) + i5 y$ Y6 g7 }% g- c, v
// {
* @% m; f7 y# O2 `# U c* W- f // loaded = 0;% w c: [' W7 V" r w# }
// }
# a' W/ V7 R( Y# E+ o5 f // if (comm==0 && s_cass==0) ; J9 d6 f4 W4 G# X. {% ~
// {
. z; I i$ F& M& v( l# I! S C // loaded = 1;) B2 n7 w/ T& h# s d
// }
: [/ `* C7 O0 V9 d4 v3 N# h1 l
2 ~2 Z, g J) `$ Z: t$ w! Y' n if (keyb==0 && keyC==0 )
: e) ~9 {$ k) [6 T& M7 A. g4 | {
2 F: I& J! H; ~ P3M1 = 0x37 ; //00110111
" z' l/ k) K+ \- \* t& g0 ` P3M0 = 0x08 ; //000010000 r3 B$ X2 [5 H' d3 v# t- M
Delay50us();; y8 U1 E A8 U$ ^
ctrl = 1;" |$ D& i8 L* l8 i$ E( L$ C
}
9 Q* @; Y( ]: u$ y5 A, |2 h0 ]5 i0 _. E% q
if (keyb==0 && keyC==1 ) " c) }! Y2 I# k" n
{/ r4 w4 {9 N2 W* s2 B
ctrl = 0;; s; ]1 G# ?3 |. H; G8 O0 @
P3M1 = 0x3F ; //00111111
2 m$ t* h. K8 r; s( g P3M0 = 0x00 ; //00000000
9 E* E3 Y% }* f3 p' P# ]/ T }
) y- s* r+ p* X1 A4 L/ ] }
. M% L8 ?1 V% y. P* @. i3 D: s}2 ?- V# S- n3 l: g1 I9 u& ]9 c) ^
9 R5 L1 ?3 d h. A5 {3 L
6 ]- b' [1 n. E- ~8 H! s3 C3 L9 O1 {1 o! z/ G7 j+ u. A$ d; U& `
% H! O ]/ S0 c3 U' ^3 b' b/ y
. i7 @. s; l& f$ a7 T
. h2 ~2 R( b, F5 I- h, l
, d# S# n- e& k/ [! ~( @: q
* }9 \2 N! K* o. ^
+ j. T4 ]3 h7 p. n e! G
9 j# b! L! H9 |: O4 }
2 x$ [+ n2 c# B1 ]* G. Y+ k. D5 J+ y2 v7 a3 P( R$ X2 X
; ^: U+ l$ D+ I4 u* s |