久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
步進電機系統開發實例 帶仿真和單片機程序
[打印本頁]
作者:
林噯莫
時間:
2016-6-29 14:42
標題:
步進電機系統開發實例 帶仿真和單片機程序
2
.步進電機控制系統設計
第一個按鍵,速度等級增加,有多個速度等級,速度等級顯示在LCD上
第二個按鍵,速度等級減小
步進電機240.zip
(89.03 KB, 下載次數: 80)
2016-6-29 14:41 上傳
點擊文件名下載附件
步進電機系統開發
下載積分: 黑幣 -5
第三個按鍵,電機停止
第四個按鍵,電機啟動
0.png
(17.22 KB, 下載次數: 104)
下載附件
2016-6-29 15:07 上傳
#include <REGX51.H>
#include "def.h"
#include "lcd1602.h"
void MotorStop(void); //聲明函數
void qx (u16 ii);
void zt (void);
sbit k1=P3^2; // 運行與停止
sbit k2=P2^1; // 方向轉換
sbit k3=P2^2; // 速度調整
sbit k4=P2^3; // 設定圈數
u8 code ffw[4] ={0x01,0x02,0x04,0x08}; // 正轉
u8 code rev[4] ={0x08,0x04,0x02,0x01}; // 反轉
u16 snum=156; //預設角度
u16 rate=101; //預設速率
u16 ii; //角度顯示
u16 ia=100; //報警值
void Delay_xms(u8 x)//ms延時函數
{
u8 i,j;
for(i=0;i<x;i++)
for(j=0;j<112;j++);
}
bit on_off=1; // 運行與停止標志
bit direction=1; //方向標志
void to(void) //外部中斷
{
IT0=1;
EX0=1;
EA=1;
}
void bao (void) //、、、、、、、、、、、、、、、、、、、、、、、、報警 、、、、、、、、、、、、、、、、、、、、、、、、
{
if((ii==ia)|(on_off==1))
{
ii=snum;
if(on_off==1)
{
zt();
}
else
{
qx(ia);
display_lcd(0x19,0x21);
}
on_off=1;
MotorStop();
}
}
void clockwise(u16 rate) //順時針轉動
{
u8 i;
for(i=0;i<4;i++)
{
P1=ffw[i];
Delay_xms(rate);//轉速調節
}
}
//停止轉動
void MotorStop(void)
{
P1=0xff;
}
void anticlockwise (u16 rate) //逆時針轉動
{
u8 i;
for(i=0;i<4;i++)
{
P1=rev[i];
Delay_xms(rate);//轉速調節
}
}
void key (void) //按鍵判斷
{
if (k2 == 0)
{
delay(10);
if (k2 == 0)
{
direction=~direction; // 方向標志;
}
while (!k2);
}
if(on_off==1)
{
if (k3 == 0)
{
delay(10);
if (k3 == 0)
{
while (!k3)
{
if(direction==1)
{
Delay_xms(100);
if(rate<255)
{
rate++;
}
}
else
{
Delay_xms(100);
if(rate>10)
{
rate--;
}
}
}
}
}
if (k4 == 0)
{
delay(10);
if (k4 == 0)
{
while (!k4)
{
if(direction==1)
{
Delay_xms(100);
if(snum<255)
{
snum++;
}
}
else
{
Delay_xms(100);
if(snum>10)
{
snum--;
}
}
}
}
}
}
}
void zt (void) //狀態顯示
{
u8 a,b,c,d,e,f;
if(on_off==0)
{
display_lcd(0,'n');
}
else
{
display_lcd(0,'f');
}
if(direction==1)
{
display_lcd(1,0x7e);
}
else
{
display_lcd(1,0x7f);
}
a=snum/100;
b=(snum-100*a)/10;
c=(snum-100*a-b*10)%10;
d=rate/100;
e=(rate-100*d)/10;
f=(rate-100*d-e*10)%10;
display_lcd(0x10,a+'0');
display_lcd(0x11,b+'0');
display_lcd(0x12,c+'0');
display_lcd(0x15,d+'0');
display_lcd(0x16,e+'0');
display_lcd(0x17,f+'0');
}
void qx (u16 ii)
{
u8 a,b,c;
a=ii/100;
b=(ii-100*a)/10;
c=(ii-100*a-b*10)%10;
display_lcd(0x10,a+'0');
display_lcd(0x11,b+'0');
display_lcd(0x12,c+'0');
}
void quan (void) //圈數
{
if(on_off==0)
{
if(direction==1)
{
for(ii=0;ii<snum;ii++)
{
clockwise (rate);
bao();
if(on_off==0)
{
qx(ii);
}
}
}
else
{
for(ii=0;ii<snum;ii++)
{
anticlockwise(rate);
bao();
if(on_off==0)
{
qx(ii);
}
}
}
}
}
void main (void)
{
to();
lcd_init();
zt();
while(1)
{
key();
quan();
}
}
void exint0() interrupt 0
{
if (k1 == 0)
{
delay(10);
if (k1 == 0)
{
on_off=~on_off; // 運行與停止標志;
}
while (!k1);
}
}
復制代碼
作者:
xuejiamwj
時間:
2016-7-15 11:36
樓主,我想問一下,你這個電機是多大的電機??工業用大功率電機你這個能實現嗎?
作者:
nihaoqisiba
時間:
2016-7-17 22:45
學習學習學習學習學習學習,謝謝分享
作者:
td123
時間:
2017-9-7 10:35
學習,學習,學習,學習,學習
作者:
ysln2008
時間:
2019-3-4 13:02
感謝分享 但是我沒有積分了 只能看看你的原理圖了
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
久久在线精品
|
91视频88av
|
亚洲欧美日韩成人在线
|
国产乱码精品一品二品
|
国产成人av在线
|
日本电影免费完整观看
|
日韩一区二区三区在线
|
欧美日韩电影免费观看
|
亚洲毛片在线观看
|
国产精品久久国产精品99
|
成年人网站在线观看视频
|
一区2区
|
日本a在线
|
亚洲成av
|
在线免费中文字幕
|
日韩欧美精品
|
91精品国产综合久久福利软件
|
欧美日韩亚洲一区
|
国产精品美女一区二区
|
蜜桃黄网
|
久久之精品
|
国产一区2区
|
亚洲影音先锋
|
日韩欧美在线视频
|
日本在线一二
|
精品欧美一区二区在线观看
|
国产精品a久久久久
|
国产精品久久久久久影院8一贰佰
|
99久久影院
|
av免费观看在线
|
国产成人精品a视频一区www
|
国精久久
|
亚洲第一网站
|
国产成人福利在线观看
|
免费看av大片
|
免费视频一区二区
|
999热视频
|
男女羞羞视频在线免费观看
|
少妇一级淫片免费放播放
|
日本三级网
|
麻豆91av
|