赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
revox 的b710 卡座,有一个clean键,当没有装磁带时,按下会抬起磁头组件,这样清洗压带轮的时候会比较方便。部分215机型按loop键的时候也有这功能,但有些机器却不行。经对比,发现,如果系统板零件号是1.721.210-11的板不行,1.721.210-22的就有这功能,仔细对照发现前者少部分电路,有一个单片机的零件号也不一样。 要实现这个功能得加装一部分电路,因为215的机器按钮是矩阵式的,所以加装模拟电路不容易实现这个功能,而且前者的单片机直接放到后者的板子上工作不正常, 所以不有直接加原机的电路。 考虑了一下,直接加一个单片机实现可能会比较简单,实际就是检测到键盘按下了loop键,则输出 到Q17来抬起磁头。 使用的是stc15w104相关的图片及代码如下。 装好后的那个图发贴时才发现没拍清楚,懒得重新照了。 #include <reg52.h>% M; e: g; d7 |
sfr P3M0 = 0xb2;# i% x. _9 J6 _$ w
sfr P3M1 = 0xb1;7 B. q$ @5 J5 O q
sbit keyb = P3^1 ; //10
6 v" L0 O$ Z/ E2 Jsbit keyC = P3^0; //10
# M' F1 s9 Q) N///sbit s_cass = P3^5; //10
$ K* v. z: E5 L: q1 V( [( y//sbit comm = P3^4; //10
; q& @0 y! R) A3 b R! t7 @//unsigned char loaded; % n6 C" ~. P9 X- |- q
sbit ctrl = P3^3 ; //01用来控制磁头抬起的,高电位为抬起
# @" \' o+ T7 P& Hvoid Delay50us() //@11.0592MHz$ W) U' {/ L" [) D
{7 d: U4 D: D. ?# U4 k
unsigned char i, j;
/ d. b% @) w: p% k0 P3 c: k i = 1;5 N$ f3 v6 E% @3 {5 t4 _% N
j = 134;
/ y5 B8 M1 O, z# K! c do
/ r6 {: `5 }$ _1 f% l. V" x7 ~ d {3 f0 [: q' p4 h" M! ?( @
while (--j);
6 y3 G/ A: l- D5 M/ }2 h9 N$ \ } while (--i);
. q. W! ~, D7 F1 ^2 B5 P) G( ?! W}, w& g" @2 @: H5 R8 r9 M& V. H3 L- a
& N8 d5 H/ P* u& W9 f- ]3 I4 y
void main(void)5 A. z; p1 [$ j) P7 t
{
9 i+ E/ w+ l' |- s. M ctrl = 0;/ A! @$ h; F' W O
keyb =1;
# E% W/ b' l9 G' P6 a# Q5 `# t keyC =1;
3 ~3 b; h3 t) X3 }// comm = 1;
1 l4 _. r4 p2 Q; n( ]// s_cass = 1 ; / a5 ]- N( j: u; \" ~/ I& l9 ~
while(1)
: O5 |7 t6 c' V1 ^4 s {* r' t. r6 O( S7 I" ~1 N
// if (comm==0 && s_cass==1)
+ u* L/ ]% ?# U6 e3 { // {
! `# s# m- I" S3 l3 E x4 Z // loaded = 0;
: k6 i# q1 B \" l* u5 h // }
' A% k% t' M& t C1 m- E$ ^ // if (comm==0 && s_cass==0) . S8 a+ k% p# y* k* @& b5 {
// {
' E) N" Q& y2 \7 }1 P5 x- ~- P // loaded = 1;
' x3 e3 B$ q |' @6 v // } : n& U% G6 s& X7 A
4 N+ C7 z) c$ d- f. F8 r
if (keyb==0 && keyC==0 ) 7 O* k! H3 A- T, `1 f# c
{' t$ d& ~4 W6 w- }* w9 u* {
P3M1 = 0x37 ; //001101118 ]. t( \( | V9 {
P3M0 = 0x08 ; //000010007 S2 Y, s$ f, e* I: `
Delay50us();
" h( X2 S" b' h. r' Q4 D ctrl = 1;
% ^; P$ n' X5 K) a& ?7 j' p- D! X }( A5 ?$ ]: _9 C# z
& j+ l8 t! \# C/ B: A5 l' q if (keyb==0 && keyC==1 )
% T+ p! q T' Q* J+ K4 I4 ~3 t {/ A1 T5 W& n+ B/ r) V. ~6 D
ctrl = 0;; ^8 x1 n% r% [- p# p
P3M1 = 0x3F ; //00111111
# |1 r4 X# g! \) k, L P3M0 = 0x00 ; //00000000
8 o* Z. q: A4 ], r. G% k3 q }* n: V% f9 Y0 S7 |- k' l, Z
}
! O- P" k: U2 g}
" h. f! K2 t5 Y" Y8 i& U2 ]+ x1 Z/ {* s4 N7 y; W1 P2 n
/ G: _" Z+ E& ?$ G
( K: H" C" D$ o8 U+ X
" y: p% g( \( E; D2 {3 _
: L0 q2 w6 G4 P( y
- b4 y& P3 B* x: r8 [
# }- {* g: t! j3 |# ]
2 u/ d# ]* S7 ^# a6 _$ d% `7 z
" a5 v! t# x+ c# d
. I& x! k! I2 ^, ?% Y
% I) c. a4 A% X: b
" \- V. ^7 n8 h% u/ \: B- L
& E" Q- V/ O: c0 n* {1 x |