|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include "reg52.h"
. ^4 k7 Y D" l9 o#define uchar unsigned char + Z5 J5 f, q- [# o& R L- U7 x3 Y
#define uint unsigned int
7 W: l- d' w, T' a8 Ksbit P2_0 = P2^0;
6 {" y \. E7 m; N* Ysbit P2_1 = P2^1;
/ X$ M4 u9 D' ]sbit P2_2 = P2^2;
`/ p$ j# N% Z' `sbit P2_7 = P2^7;
2 B7 `% J! P, p/ T, n/*delay(1)延时时间为300US
( ]3 M; G$ K8 [delay(80)延时时间为20mS
! L2 f4 W+ `- v7 b) vdelay(4)延时时间为1mS
, n# t4 X7 ~8 k3 `4 r( ~! ~delay(8)延时时间为2mS
2 Y% t: O2 K$ \- M, y# edelay(6)延时时间为1.55mS$ b$ [- `2 }$ M1 P
delay(2)延时时间为0.55MS. ~( g: `- a3 i r& a- s! L5 u/ U
delay(10)延时时间为2.5mS
2 A- w. F, ^* x4 O8 T*/' q. v, `- M3 [0 I+ x) q* X
void Delay(int j) //延时1 ?( D. l. ?0 T9 z5 x
{ int i;# O% b2 g) ]7 c i9 k5 Q
for(;j>0;j--)7 U1 s7 O* i! I; V
{
8 Z U, I3 P ?; u for(i=0;i<28;i++);9 l% T/ A( h3 x B1 O1 I* f
}
6 O }& u. E9 l5 w) X S( I }) n3 B2 |0 D3 f$ _: {
" T; I! t: r$ ^
void main(void), l$ F! F$ a$ G7 n/ j$ q. T) }, D
{
# w: W1 }5 I: Y1 f) T int i=0;# j( L& F0 ?5 y! l4 |
int j=0;8 j) `% O) S! v8 p, f
int g=0;; k) b9 i- ~% j3 J ?+ H- e
P2=0XFF;
# w7 _5 u, V @0 D* V1 W/ p P2_0=0; //舵机电源地线 8 s* d5 G( V3 Y9 a5 z4 u, Z
P2_1 =1; //舵机电源电压 注意 这两个 引脚要和单片机 电源电压和地线 共线 ,不然会出现舵机只按一个方向转 , J, c5 Q9 a6 {4 O( e& K
P2_2=0; // 控制脉宽 - i }, s' d+ w; g) h
while(1)
/ W$ F: U) }$ F { for(g=0;g<25;g++) //0.5ms 0度位置
" z2 _9 o' }! n5 @9 E {
/ u: h0 u/ t; h7 K. R! `) t P2_7=0; //开启P2_7灯
; e6 r' G' z$ T" H5 ]% ^! L P2_2=1;, u. `2 x# y# y; z/ P; y" G
Delay(2);3 N% J9 o/ f3 N
P2_2=0;
9 \3 O! z( E3 W# S Delay(78);$ n& [0 v6 k" R& U
Delay(100);
. B! T, F6 {' f9 S1 m/ X/ k1 f7 ? }8 ~* L: T6 K0 b! `( d3 d. G9 g
Delay(5000);0 `5 A3 z. X+ d f
P2_7=1; //结束P2_7灯; A7 ~: x" n' o5 b/ e8 f. K) `
//1.0ms 45度位置
/ E z! }4 O' V+ m: J9 u. k# @& k for(g=0;g<15;g++)
# z" R E7 \( F; \* p { P2_2=1;
1 O4 K* D& T, s; d Delay(4);
/ u+ l5 B/ T, X2 I% R5 v% E P2_2=0;
3 P' y3 q4 B5 G y/ _ Delay(78);
; S3 F* x" O0 [8 o& \% Z Delay(100);
% b" S) i+ T8 R) r' j }
* J/ Y6 g+ X: z: h) P //1.5ms 90度位置- x# O& \5 x8 b0 f7 H9 b# d
for(g=0;g<15;g++)
7 W& N- _% I' J+ f { P2_2=1;# P$ L4 q8 Y& w7 n( [% |; P
Delay(6);
8 E% w1 K8 _% h; F+ t" a P2_2=0; C- k; W/ U2 P
Delay(78);1 l# a* Z6 H7 } [3 R! n
Delay(100);
7 y J. l! e3 i }
- @! l. F7 d Q |- | //2.0ms 135度位置
' e/ x: p: D& z. V, | for(g=0;g<15;g++) % g0 w! @3 l9 V, b3 o
{ P2_2=1;
`# E2 c/ d3 f- J! S Delay(8);, r/ p0 s* ~, o6 V/ H
P2_2=0;
% h& n" ?4 d; ^# M6 W4 o" P Delay(74);( @! X: U7 O$ x0 Q4 N1 i
Delay(100);
. i) ?: u9 |- c4 B- W( ]9 ] }* _# {9 \. x; y6 [5 [ _& ]
// 2.5ms 180度位置
9 h1 t0 n- }" m6 ~1 V/ r! {9 W for(g=0;g<15;g++)
5 _5 Q- O/ e3 R0 U8 | { P2_2=1;
1 g( H: k9 k& Q3 w Delay(10);# y6 W, A8 M2 o3 [
P2_2=0;
0 e: e2 Q' s, ~( K. S; u# \7 c- P2 b/ F1 V Delay(72);1 K6 |* i. v3 X$ ^) M- \: \- d' |
Delay(100);
" s! I/ o7 f* u) f: { }/ W! t1 U6 N) z" l9 W
/ M# g/ J) s: Q* H9 A6 _
}# i/ U+ h5 c. q% {4 o* R$ y! ^) v
}
( P9 k: t! f; L$ u- v8 V- c8 N0 k1 q& r
|
|