|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include "reg52.h"
7 U/ t- |' A& B0 I* y$ G#define uchar unsigned char , O& P: b* ^% Z! F6 Z
#define uint unsigned int
" O. I% b7 \. l. Q$ G! C6 `, }sbit P2_0 = P2^0;: s; T- R( N6 z9 }! t% Q, u4 W! L
sbit P2_1 = P2^1;
0 l# ^- q) }3 X; Q7 }1 @sbit P2_2 = P2^2;6 {1 S! Z' A, P( U
sbit P2_7 = P2^7;# l3 |- f, ~. z
/*delay(1)延时时间为300US
3 H1 I9 m" l& B# o* ddelay(80)延时时间为20mS A# F8 V: {+ B4 n0 a
delay(4)延时时间为1mS
6 @8 j; c4 c& R9 V' i* fdelay(8)延时时间为2mS
5 G. [6 K# x; zdelay(6)延时时间为1.55mS0 ^- D& e m" @
delay(2)延时时间为0.55MS( a2 s" `8 L4 t) R0 `1 q# M# r4 y
delay(10)延时时间为2.5mS+ p+ y3 _! p8 ]9 A1 R
*/
4 J$ ^# P) W& m5 x' b! ~$ xvoid Delay(int j) //延时' S7 N+ j4 r0 z' m
{ int i;
$ }9 r" M& n! `7 A2 B. b s for(;j>0;j--)
, l: a% O% X+ X n, I4 h& t. H1 W {
6 t% ` S2 ]* k( U# V: Q, L% P6 w( w for(i=0;i<28;i++);
6 C( u6 H- X' s7 v }
& ^/ g9 P! D( D$ ~4 f- j$ Z: o }8 r# d) N8 a+ Y; ~
- H7 o2 t$ v: M: r4 yvoid main(void)
4 E+ R& r& Z# v" j# S9 i{
7 q; P: N) I; |4 L3 d int i=0;
7 E: k6 s2 x$ R: @+ [ int j=0;+ Z5 O' ~- E/ j* e; n& _0 o
int g=0;0 o) Y' x) j8 n7 w' _5 Z
P2=0XFF;, A; p. s: z6 }0 U" ?6 p8 d
P2_0=0; //舵机电源地线 0 P; u+ P N' @( [
P2_1 =1; //舵机电源电压 注意 这两个 引脚要和单片机 电源电压和地线 共线 ,不然会出现舵机只按一个方向转 0 B. F/ V8 o8 C! ^) Q" I
P2_2=0; // 控制脉宽 ) ]' H B" S4 Q9 H! S% r; |8 s0 `5 r
while(1)
' \0 }9 D: j# S' |* h { for(g=0;g<25;g++) //0.5ms 0度位置0 N; C0 ] ]- B/ r, D
{- I' `7 W9 A4 A; h6 j3 N
P2_7=0; //开启P2_7灯
3 g7 G7 a, o# [; ]! P0 l, K P2_2=1;
# r- P! s& K7 b, d. Q: C6 C$ I/ f Delay(2);
) J' t5 ]8 w6 b8 `! e9 H P2_2=0;
1 n4 M: X% u% B5 B q Delay(78);$ n( ^+ }5 J, G; O$ J4 ~4 U& I! C
Delay(100);
# r$ J. T' r1 l* U( W. ^# A, P: H' a& ~ }, \8 u/ u$ \9 t$ ^
Delay(5000);
% `7 a0 `0 ^+ ^. c+ f4 R7 `& h P2_7=1; //结束P2_7灯
# n/ e0 u( n& Y# r8 S0 f5 E //1.0ms 45度位置# h7 K6 \) A7 s3 {& y! M
for(g=0;g<15;g++)
1 {- d) U3 C }: p7 T, B { P2_2=1;# u# j7 x. N, Q1 p
Delay(4);( M" p2 N) t' p
P2_2=0;0 S* i5 R6 Y& f2 Z3 a5 y- U, [
Delay(78);, C1 @7 {- s; m# m5 K
Delay(100);
* X; j4 I. q- c3 | }
. g0 f9 b+ ]& `% ]& R //1.5ms 90度位置
9 o) w: S- F0 l& V$ c) y for(g=0;g<15;g++)
; _" D$ ?8 h8 f. J3 ` { P2_2=1;' q' \/ N+ [3 |" o, c
Delay(6);
' z, B" ` S" S: V5 F8 U4 L P2_2=0;
; {/ }% X( L' i0 n( o Delay(78);/ h+ ~! H0 t' v: O6 o) n1 o( S
Delay(100);
' V1 O5 g+ s1 w$ d4 X! k2 x! h' F }
& k4 T# t% n: \& o2 \3 z- l //2.0ms 135度位置
: X# a, n E' Z/ D$ N for(g=0;g<15;g++) $ j' I+ T/ r8 K
{ P2_2=1;7 n- j0 l3 o- x
Delay(8);& k3 {% D5 O( ~; t$ P
P2_2=0;/ t8 A U9 g: t
Delay(74);- W6 Y$ k, T9 B; A& G# E
Delay(100);
; t) E1 [. s0 I! Z" @2 u$ } }
`9 y8 U$ e, m: y' v // 2.5ms 180度位置
# ^( h6 _$ z7 s% z: ? for(g=0;g<15;g++)
8 y& J% y- U- ~" ` { P2_2=1;6 i8 A5 P6 F/ f: C% S
Delay(10);) H3 ]6 ^5 q, C" x
P2_2=0;
- X0 v' Z6 i' q h5 R' W Delay(72);
8 v9 N/ n2 ~6 A, w) { Delay(100);
/ Z' \9 @ p+ j3 N: V: O9 c }. o2 p! \* u) w. q
% N4 Q$ [+ P, k6 g- @- v
}; L! K( B7 i" Z1 G
}# N% k1 i( h- z9 C& Z
9 _: n e4 g7 h( p, q! W |
|