找回密码
 注册
关于网站域名变更的通知
查看: 420|回复: 1
打印 上一主题 下一主题

matlab机器人 单片机控制舵机测试程序

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-2-24 16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
#include "reg52.h"
# x4 u7 P. i. |4 W8 c#define uchar unsigned char  
0 ]. @# _) _: s4 s, S) U: d#define uint unsigned int  # y* ?; d7 _" K) Y$ i: M/ a
sbit    P2_0 = P2^0;
2 i2 k8 m- [0 ssbit    P2_1 = P2^1;
- |* S# }& U% _; H8 U4 ]sbit    P2_2 = P2^2;
6 D% I5 m7 w( z) ^% [4 \: h% isbit   P2_7 = P2^7;
! r0 u( B& U6 R, y; \4 t4 m2 ?8 n/*delay(1)延时时间为300US  |5 n5 U6 [0 p' O
delay(80)延时时间为20mS
5 k) ^& f! N* x  s; e; qdelay(4)延时时间为1mS- p# p, m( I6 s% Z  V. X
delay(8)延时时间为2mS+ V& e3 P! p" h
delay(6)延时时间为1.55mS8 _  e$ E5 |. S0 F
delay(2)延时时间为0.55MS
8 k/ I* S  r9 K% S6 Ddelay(10)延时时间为2.5mS
" T. T; [: ]( l" E*/
5 M+ o! D2 K7 `3 a; u' J5 `void Delay(int j)   //延时
3 m/ Y7 u/ |0 r5 y+ M$ a: }    {      int i;7 C& w2 K% _8 h2 x( o6 L; l
        for(;j>0;j--)0 Z& F! R. u3 K' l
       { , G# M2 L' q" p2 H) ]
         for(i=0;i<28;i++);
+ ^0 X( [9 Z" m% ~3 K          }
5 ?/ x! t) Y6 P! o6 A4 k2 c' i- V    }
% f! {0 E4 v) D% Z! l( i
* N$ |5 r* V( T( H, |9 `* R0 Uvoid main(void)7 p+ _2 x  k! y& |: ?) A; G0 n7 `8 v- I
{
  q* ]! _3 s0 G9 x1 k2 t4 s          int i=0;. z- R! K) S3 |! t$ F; i
          int j=0;
( e( V1 B8 j" U) }. a5 ~$ E" F          int g=0;
. X3 |' N6 e3 X0 w7 ^  W          P2=0XFF;- J3 P: N+ h' ]
            P2_0=0;             //舵机电源地线
( P5 z0 p- k- ~  z8 k5 @4 u* p% i            P2_1 =1;   //舵机电源电压    注意 这两个 引脚要和单片机 电源电压和地线 共线 ,不然会出现舵机只按一个方向转 ' r6 k* e- Z+ u! d( [: M. a
            P2_2=0;   // 控制脉宽         * d9 P" K8 c! h& D" d: ^
  while(1)( ?/ `! K% |7 [$ v
       {  for(g=0;g<25;g++)   //0.5ms 0度位置
' {' Q4 _7 ]& `7 ]5 J$ t! ?' A5 k                {; R6 W& S& `/ h0 {; D: y
                   P2_7=0;  //开启P2_7灯
. c  \- y, S  z0 v& H' \; Y; ~                    P2_2=1;* {1 V# \/ U$ w: Y1 b: C, S+ E0 w
                     Delay(2);4 [7 x7 A% W+ e
                    P2_2=0;
% ~, ~$ Y- G0 u( _                  Delay(78);$ P) |- g) @/ E
                   Delay(100);/ L8 H" B7 t- `3 v
               }
2 T& m, ]. Z  `8 \2 V7 ~; _2 z$ I. I           Delay(5000);
' b7 V. C1 U3 Z# K" I            P2_7=1;  //结束P2_7灯
5 F/ E. m$ n3 i- y9 S. l          //1.0ms   45度位置' F9 \1 d5 I9 e! V/ R
      for(g=0;g<15;g++)
0 s+ k* W' p6 ~. B& k            { P2_2=1;# y/ j0 C( Q' I
              Delay(4);
" {5 q* ?/ [7 B  B) U5 c               P2_2=0;
; K8 x8 I3 V2 G7 R% Q* R  M1 @; E               Delay(78);
* E" K- u3 s5 a! C3 Q, G2 X             Delay(100);
% G! ?$ h! K1 K" y7 U           }' x+ x: P, ^7 \; U; r6 E0 a  Q+ W: \! H
  //1.5ms   90度位置
) J' u1 h0 ^' _' L# s- T# |1 r      for(g=0;g<15;g++)
$ g5 v( s& M" O- B4 B       {   P2_2=1;
) I, V* F2 m6 a6 }            Delay(6);
+ I3 V) r: Z% {. B6 e6 x) |7 Y             P2_2=0;
4 C' |( @  i1 U3 Y                Delay(78);/ y! D, {; Q9 m0 k
               Delay(100);# D0 ^7 F( g, u1 E) P. ]
         }% N9 y( l/ l/ E! u8 A4 n. Y
  //2.0ms   135度位置
' Y+ A, i  w8 }7 ]% ~( ^: F- J    for(g=0;g<15;g++) / k3 t! o6 d2 l9 D
         {   P2_2=1;' k7 Q! @0 z& `
              Delay(8);
; K! j9 H7 o0 r& Y              P2_2=0;, J% l6 H3 s. h. H
              Delay(74);% z# j0 W/ p1 d# |" O  S
              Delay(100);+ C* v; ^( g, Z7 _. S
         }
- U1 u# x$ Y; U  // 2.5ms   180度位置
" v1 v: n% \1 s$ v) F7 @4 r  for(g=0;g<15;g++) $ w) M/ s# Z( N' z
        { P2_2=1;
! |& \9 E9 Q" p9 `          Delay(10);
! `' {6 N5 @8 d- ?. b, Q" G           P2_2=0;& v* d; j' ]/ y1 }4 r2 j" Q
           Delay(72);
$ b6 n1 [$ @. g) p3 P           Delay(100);+ H2 [/ s+ K0 F- k6 p/ x7 E
          }1 G( b& N9 l; ^& [8 R! ?% L0 M
' _) G2 f4 d' w, C' O* z/ \0 Z' J
    }
& B7 ?- H3 j6 [}8 i0 ?) z' \- [, E2 J- H
6 h% H! J6 a  }4 `

该用户从未签到

2#
发表于 2020-2-26 16:51 | 只看该作者
matlab机器人 单片机控制舵机测试程序
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-4 17:43 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表