赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>
0 s/ }' g+ W, I# ]$ x' Q0 `0 osfr P3M0 = 0xb2;8 O2 h* O: {6 g& F
sfr P3M1 = 0xb1;
: Y8 v2 u! m j, psbit keyb = P3^1 ; //10
) i$ [& w$ k( H& j: T/ {sbit keyC = P3^0; //10
8 p- w. B) K7 K) A///sbit s_cass = P3^5; //10" k* h: r/ E* @4 Q7 I
//sbit comm = P3^4; //10
# y u+ Q6 q6 t N//unsigned char loaded; 6 U8 A: P* l) _2 a! {5 P8 f
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
% x& c$ k1 Q0 @) svoid Delay50us() //@11.0592MHz
" e8 p- v; I: e& U1 v+ D{3 Q5 u4 z3 U/ d. T4 w8 S, A
unsigned char i, j;
1 _# p5 ?9 |" k i = 1;
& R$ i" Z' v" t- v- \! m j = 134;4 q' t$ n9 v4 \5 u- i/ v: ]
do
! b0 a6 V1 h w& V {% ?. z$ m6 R: g- D' T
while (--j);# ^1 ~% h, Y9 K+ |+ |3 K' x
} while (--i);# l+ S8 _: e4 R: t) W
}$ x* [" l' K& Z) D- X
) g V2 m( Y' l' R& T% l4 Z& S, _+ y
void main(void)9 z. A' p& _1 o) p# u
{
2 U6 S# \" h8 U# M) ` ctrl = 0;
& K+ {: {5 m7 z- F$ Q keyb =1;
* F8 z: n7 ^# {& | keyC =1;
. f! u( t$ G# B0 O( c1 Q// comm = 1;8 P% G1 h0 R S0 x1 _/ N+ y* F
// s_cass = 1 ;
$ O. s$ Z) Q4 M( p while(1). v, `9 x1 q) ? \2 s7 W
{
" E2 [, N6 ]3 p8 L; t* n // if (comm==0 && s_cass==1)
- a8 A9 B# T% w" F // {7 k( H4 c" j1 L& n' l3 ~9 t
// loaded = 0;! f" [% \0 q% m7 ^9 |+ ^
// }
. u- z+ ?! ~1 L2 ]0 h( P // if (comm==0 && s_cass==0)
" C3 s9 c3 o5 Q F: _ // {
8 ?+ s- `- x: R/ s // loaded = 1;9 z( a! x) i% d% h3 W
// } + V* c# X% ~6 U9 `+ {. u
0 S0 X) Z7 e$ J: O
if (keyb==0 && keyC==0 ) ! M5 r1 k& Z" U8 ^7 j; I
{. |& \- v$ h; g" W) R, Q9 M0 n) ?
P3M1 = 0x37 ; //00110111. e0 Q3 z$ t% y7 f
P3M0 = 0x08 ; //00001000
}, l% T: n" K$ N7 ` Delay50us();0 u, G3 [7 G5 x& M! x* T1 b* Z
ctrl = 1;6 t& B3 [; {( l/ Y1 R% h
}0 F, _" F- ?$ E* j
7 _ |& r l5 u: } if (keyb==0 && keyC==1 )
: ^1 C: Q1 @0 g+ R' C {, J8 M% `2 I$ d
ctrl = 0;) q. z7 `9 ^5 O/ K6 ^
P3M1 = 0x3F ; //00111111: X5 N$ ^' t3 T9 k6 Y
P3M0 = 0x00 ; //00000000
3 l4 Q/ p f. i: F- r }
$ v/ t( m' I E$ d }
& V0 v! {" u# U% F}% V& h A% U( J, \7 m" Q/ x' K
0 K! x! `: e, p! H4 o
* o5 w# o7 m3 {! b1 x& v( g* n' B+ d" |+ H1 p" _
' F) i6 H/ M! a/ @: U6 C$ W. ^1 ~. e' l4 c
% R4 _; I6 h3 H0 V9 K9 y4 W8 f- k9 H4 u& K6 X& I1 {- P
! A& B& V) u: ~& @* A* E4 j! X: |) b5 i" r9 Q3 Z
r5 @+ d8 b. ^/ | W
$ Q( s R8 e- Q: y% t |0 }& Q8 k5 {6 x6 n( q0 g+ M- t
$ f) H9 w6 ]$ D- H3 c! i
|