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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3231|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

電機不動,求幫忙看下單片機程序!

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:749922 發(fā)表于 2020-5-14 11:58 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
想解決的問題電機不轉(zhuǎn)動,轉(zhuǎn)數(shù)不計數(shù)。

系統(tǒng)能夠?qū)崿F(xiàn)
用51單片機控制四相六線(8拍)步進電機并顯示。
(1)預(yù)設(shè)步進電機所轉(zhuǎn)圈數(shù)。(通過左下方16個按鍵可以輸入0,1,2,3,4,5,6,7,8,9,11,12,13,14,清零,顯示在屏幕上)
(2)可實現(xiàn)啟停,正反轉(zhuǎn),加減速功能。(中間下方4個按鈕控制,但是因為電機不轉(zhuǎn),失效。)
(3)同步顯示圈數(shù)。(未顯示)

綜上:可以預(yù)設(shè)圈數(shù),但電機不轉(zhuǎn),轉(zhuǎn)數(shù)不顯示。排查了一遍感覺程序沒問題,問題可能出現(xiàn)在電路連接上,麻煩大家?guī)兔匆幌,具體問題在哪里,點撥一下我改正,因為實在是找不出來了


電路圖片如下:(可能看不清楚,我放在附錄里






程序如下:
#include <at89x51.h>
#define uchar unsigned char
//uchar code rst[]={0xe4,0xc0,0xe0,0xc0,0xe0,0x32};  
char seg_0[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,
0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};    //共陰極數(shù)碼管
char seg_point[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,
0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0E};   // 帶小數(shù)點
int a=0, b=0,c=0x01;
unsigned int t,key,x=0,y,z=0,m=0,n;
char ge,shi,bai,qian,wan;
char age,ashi,abai,aqian,awan;
uchar readkey;
uchar x_temp,y_temp;



/*延時程序*/
void delay(char i)
{char j=0,n=0;
for(;j<i;j++)
{for(;n<100;n++)   //0.5s延時
{
}
}
}



/*電動機轉(zhuǎn)動程序*/
void time0() interrupt 1   //計數(shù)器T0 電機運轉(zhuǎn)
{ TH0=(65536-t)/256;
TL0=(65536-t)%256;
if(b)    //判斷方向
{
if(z/4<x||x==0)   //判斷步數(shù)是否與設(shè)置相符
{
if(a)    //是否停止
{
if(c&0x08)
{
c=0X01;
z++;
}
else
{
c<<=1;
}
P3=c;
}
else
{
z=0;
}
}
else if(z/4==x) {a=0;}     //電機達到預(yù)設(shè)值
}
else
{
if(z/4<x||x==0)
{
if(a)
{
if(c&0x01)
{
c=0X08;
z++;
}
else
{
c>>=1;
}
P3=c;
}
else
{
z=0;
}
}
else if(z/4==x) {a=0;}       //同上
}
}



/*數(shù)碼管顯示程序*/
void time1() interrupt 3
{
TH1=0xd8;
TL1=0xef;
if(a)
{
P2=0XFE;   //個位通選
P0=seg_0[ge];
delay(5);
P2=0XFD;
P0=seg_0[shi];
delay(5);
P2=0XFB;
P0=seg_0[bai];
delay(5);
P2=0XF7;
P0=seg_0[qian];
delay(5);
P2=0XEF;
P0=seg_0[wan];
delay(5);
if(b==0)
{
P2=0XdF;
P0=0x40;
}
}
else
{
P2=0XFE;
P0=seg_0[age];
delay(5);
P2=0XFD;
P0=seg_0[ashi];
delay(5);
P2=0XFB;
P0=seg_0[abai];
delay(5);
P2=0XF7;
P0=seg_0[aqian];
delay(5);
P2=0XEF;
P0=seg_0[awan];
delay(5);
}
}



/*鍵盤掃描程序*/
void Key_Scan(void)
{
P1=0x0f;
x_temp=P1&0x0f;
if(x_temp!=0x0f)
{
P1=0xf0;
y_temp=P1&0xf0;
readkey=x_temp|y_temp;
readkey=~readkey;;
x++;
switch(readkey)
{
case 0x11:key=0; break;
case 0x21:key=1; break;
case 0x41:key=2;break;
case 0x81:key=3; break;
case 0x12:key=4;break;
case 0x22:key=5;break;
case 0x42:key=6; break;
case 0x82:key=7; break;
case 0x14:key=8; break;
case 0x24:key=9; break;
case 0x44:key=10;break;
case 0x84:key=11;break;
case 0x18:key=12;break;
case 0x28:key=13;break;
case 0x48:key=14;break;
case 0x88:key=15;break;
default: key=16;break;
}
}
}



/*主程序*/
main()
{
int i;
int j;
t=30000;
TH0=(65536-t)/256;
TL0=(65536-t)%256;
TMOD=0X11;
TR0=0X01;
TF0=0X00;
PT0=0;
ET0=0X01;
TH1=0xd8;
TL1=0xef;
TR1=0X01;
TF1=0X00;
PT1=1;
ET1=0X01;
EA=0X01;
P3=0x01;
P2=0XFE;
key=0;
while(1)

{


//圈數(shù)計算
j=z/4;
i=j;
ge=i%10;
i=j/10;
shi=i%10;
i=j/100;
bai=i%10;
i=j/1000;
qian=i%10;
i=j/10000;
wan=i%10;



//鍵盤顯示值計算
P1=0x0f;
if(P1!=0x0f&&a==0)
{
if(P1!=0x0f&&a==0)   //電機未運轉(zhuǎn)則鍵盤有效
{
Key_Scan();
}
if(key==15)   //清零
{
age=0;
ashi=0;
abai=0;
aqian=0;
awan=0;
x=0;
m=0;
}
else if(m<6553)
{
m=m*10+key;
age=m%10;
n=m/10;
ashi=n%10;
n=m/100;
abai=n%10;
n=m/1000;
aqian=n%10;
n=m/10000;
awan=n%10;
x=m;
}
while(P1!=0xf0);
}
while(P3_7)   //開關(guān)
{
while(P3_7);
a=~a;
}
while(P3_6)    //方向
{
while(P3_6);
b=~b;
}
while(P3_5)   //減速
{
while(P3_5);  //t最大值為65535
if(t<=40000)
{
t=t+10000;
}
}
while(P3_4)   //加速
{
while(P3_4);
if(t>=20000)
{
t=t-10000;
}
}
}
}



程序和電路圖一起放在附錄里,方便觀看 希望大家能幫忙看一下。
電路和程序.zip (84.18 KB, 下載次數(shù): 9)

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:749922 發(fā)表于 2020-5-14 12:23 | 只看該作者
求別沉
回復(fù)

使用道具 舉報

板凳
ID:383631 發(fā)表于 2020-5-15 23:24 | 只看該作者
這個,你去看看樣例設(shè)計
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 超级乱淫av片免费播放 | 精品久久久久久久久久久院品网 | 中文字幕亚洲一区二区三区 | 成人亚洲精品久久久久软件 | 亚洲国产成人精品久久久国产成人一区 | 99热国产在线播放 | 国产专区在线 | 91精品中文字幕一区二区三区 | 亚洲高清中文字幕 | 国产成人精品一区二区三区视频 | 成年视频在线观看福利资源 | 欧美片网站免费 | 午夜影院在线观看视频 | 国产农村妇女精品一区 | 久久久久久高潮国产精品视 | 成人性视频免费网站 | 日本午夜在线视频 | 福利一区在线观看 | 亚洲一区二区免费 | 妞干网视频 | 成人精品网 | 国产日韩精品在线 | 久久精品国产亚洲一区二区三区 | 久草在线视频中文 | 91在线视频播放 | 欧美极品少妇xxxxⅹ免费视频 | 麻豆天堂 | 亚洲精品在线免费播放 | 国产精品久久久久久久久婷婷 | www.亚洲国产精品 | 免费成人高清在线视频 | 天天久久| 超碰3| 特黄级国产片 | 亚洲第一av | 美国一级毛片a | 日本黄色免费大片 | 99热在这里只有精品 | 日本黄色影片在线观看 | 狠狠色网 | 中文字幕日韩三级 |