久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1205|回復: 0
收起左側

基于51單片機的智能步進機器人機仿真

[復制鏈接]
ID:693688 發表于 2020-3-5 13:41 | 顯示全部樓層 |閱讀模式
程序代碼
#include "reg51.h"
#include "intrins.H"
//8步式步進電機脈沖序列
//unsigned char steps[8] = {0x77,0x33,0xbb,0x99,0xdd,0xcc,0xee,0x66};
unsigned char steps[8] = {0x2,0x6,0x4,0xc,0x8,0x9,0x1,0x3};
//當前各電機在上述序列中的位置
unsigned char cur_step[8] = {0,0,0,0,0,0,0,0};
//這個文件用于記錄舞步信息序列
char speed_tickers[8] = {0,0,0,0,0,0,0,0};
//從上述文件中讀出的當前舞步信息
unsigned char speeds[8] = {0,0,0,0,0,0,0,0};
unsigned char data_pointer = 0;//指向舞步數據的指針
unsigned char time_t = 0;//指定重新讀取一次 speeds 值的計時周期
code char dancedata[] = {54,15,12,12,87,95,65,45,-89,-88,-54,-54,54,68,-45,-65,-65,-48,101,121,115,117,19,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,109,104,-30,-102,-104,-106,110,100,
54,15,12,12,87,95,65,45,-89,-88,-54,-54,-98,95,102,102,100,130,30,10,-90,-120,87,102-114,-101,-24,-98,95,102,102,
100,130,30,10,-90,-120,87,102,102,100,130,30,10,-90,-120,87,102,103,105,54,15,12,12,87,95,65,45,-89,-88,-54,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,12,87,95,65,45,-89,-88,-54,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,109,104,-30,-102,-104,-106,110,
100,130,30,10,-90,-120,87,102,102,100,130,30,10,-90,-120,87,-120,87,102,103,105,109,104,-30,-102,-104,-106,110,
54,15,12,12,87,95,65,45,-89,-88,-54,-54,-98,95,102,102,100,130,30,10,-90,-120,87,102-114,-101,-24,-98,95,102,102,
54,15,12,12,87,95,65,45,-89,-88,-54,-54,-98,95,102,102,100,130,30,10,-90,-120,87,102-114,-101,-24,-98,95,102,102,
54,15,12,12,87,95,65,45,-89,-88,-54,-54,-98,95,102,102,100,130,30,10,-90,-120,87,102-114,-101,-24,-98,95,102,102,
54,15,12,12,87,95,65,45,-89,-88,-54,-54,-98,95,102,102,100,130,30,10,-90,-120,87,102-114,-101,-24,-98,95,102,102,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,12,87,95,65,45,-89,-88,-54,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,12,87,95,65,45,-89,-88,-54,
-98,-100,-21,-114,-101,-24,-98,95,102,102,100,130,30,10,-90,-120,87,102,103,105,12,87,95,65,45,-89,-88,-54,
};
code char pin[8] = {1,2,4,8,16,32,64,128};
char MAX_SPEED_TICKER = 120;
unsigned char i; //電機序號
void InitTimer(void) //初始化計數器
{
  TH0 = 0xFA;  //設置觸發周期:1000次
  TL0 = 0x24;
  TMOD = TMOD |0x01;  //select mode 1
  TR0 = 1; //start timer0
  ET0 = 1; //enable timer 0 interrupt
  EA =1; //global interrupt enable
}
void SetAllSpeeds(void)  //設置各電機的速度,并讓它運動起來
{
  char delta;  //旋轉方向 1:正 -1:反  0:停
  for(i=0;i<8;i++)
  {
    P2=pin; //發送鎖存信號
    speed_tickers += speeds; //計數值增加 speed越高,增加得越多
    if(speed_tickers >= MAX_SPEED_TICKER) //如果計數值超過預定最大值,就發送脈沖
    {
      speed_tickers = 0;
      delta = 1;
    }
    else if(speed_tickers <= -MAX_SPEED_TICKER) //同上,反響旋轉
    {
      speed_tickers = 0;
      delta = -1;
    }
    else delta = 0;
    cur_step += delta;
    cur_step &= 0x07; //計算當前應發脈沖
    P0 = steps[cur_step];
    P2 = 0;
  }
}
void OnTimer(void) interrupt 1 using 2
{
  unsigned char j;
  SetAllSpeeds();
  InitTimer();
  time_t++;
  if(time_t==200) //每200次觸發讀取一次新舞步數據
  {
    for(j=0;j<8;j++)
      speeds[j] = dancedata[data_pointer+j];
    data_pointer += 8;
    time_t = 0;
  }
}
void main()  //程序的入口
{
  InitTimer();  //初始化后等中斷
  while(1);
}
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美自拍另类 | 日韩一区三区 | 91中文字幕在线观看 | 国产第一页在线观看 | 国产精品久久一区二区三区 | 国产一区二区电影 | 国产成人福利 | 一区免费看 | 午夜免费视频观看 | 日日干夜夜操 | 精品国产一区探花在线观看 | 一区二区不卡 | 天堂影院av | 亚洲精品一区在线观看 | 激情五月婷婷综合 | 国产视频1区2区 | 欧美一级免费黄色片 | 国产激情视频在线观看 | 欧美精品片 | 国产午夜在线 | 国产丝袜人妖cd露出 | 日韩av免费看 | 国产亚洲欧美在线 | 欧美一区二区三区日韩 | 黄色免费观看网站 | 2019天天操 | 91文字幕巨乱亚洲香蕉 | 日韩欧美一区二区三区免费观看 | 久久99国产精品久久99果冻传媒 | 国产精品日日夜夜 | 国产91精品网站 | 日韩一区二区成人 | 精品国产乱码久久久久久图片 | 青青久在线视频 | 欧美一级特黄aaa大片在线观看 | japanhd美女动| 九九热最新视频 | 99精品国产一区二区三区 | 成人a在线观看 | 青青草社区 | 中文在线观看视频 |