導航:首頁 > 操作系統 > 單片機代碼控制字模的倒正

單片機代碼控制字模的倒正

發布時間:2022-05-07 11:38:36

『壹』 用單片機控制電機正反轉

這東西得花錢買。我有現成的,自己做好的。給你詳細使用說明書。
東西除了電機你自己買,電源我都給你配好,接好,包括電腦上控制的軟體。
400元。
要的話: [email protected]
or QQ: 24232860
如果你想學習,我把東西賣給你之後也可以慢慢跟你講原理,包括程序。

『貳』 51單片機步進電機正反轉程序

單片機控制步進電機,我想你說的是兩相步進電機,一般是控制其相序分配的順逆從而控制正反轉,一般而言,步進電機相序分配你可以做成一個數組比如step[]={0x03,0x06,0x0c,0x09},這樣來說可以假設P0口是步進電機控制口,那麼可以按如下方式來控制: while(1) { for(i=0;i<4;i++) { if(fx==1)P0=step[i]; //正向 else P0=step[3-i]; //反向 delay(x); //x大小決定電機速度。
根據電機相數買個驅動器。然後用單片機產生脈沖來控制電機的轉動以及正反轉。單片機產生脈沖的方法和單片機控制流水燈是一樣的。ULN2003D 是驅動步進電機的驅動晶元,主要是匹配電機所需的電流。 由於是四相電機,步進電機之所以可以轉動就需要給相繞組提供連續的脈沖,所以需要4個埠來控制四相繞組的工作狀態(P15應該是不需要的),具體的編碼要看電機的拍數; 一旦明白這些,你就可以很容易編寫代碼來控制電機的轉動了,還有在脈沖間你可以設置不同的延時時間來調節電機的轉速。

『叄』 單片機電機正反轉代碼怎麼寫求大神!

這個模塊是軟體PWM模擬調速的,接電源5V,MOTOR-A的兩個介面接馬達,IN1和IN2接單片機P1.0和P1.1。P1.0和P1.1都是0停止轉動,P1.0=1和P1.1=0正傳,P1.0=0和P1.1=1反轉。怎麼買了個不會的模塊?

『肆』 單片機控制步進機正反轉 的C程序源代碼的解釋(基於Proteus模擬)

圖看不清,控制步進電機的核心技術,是在4根控制線上按一定時間周期產生時序,時序的不同電機轉動的方向也不同,在程序里

code
char
fward[4]={0x0c,0x06,0x03,0x09};
code
char
bward[4]={0x09,0x03,0x06,0x0c};

就表示了這兩個時序,把數組的元素分四次寫入P1口就是電機的驅動時序,自己畫一下就明白了,一個是正轉一個是反轉,

電機核心控制在timer的中斷里,每25次中斷更改一次P0口電平,每更改4次電平生成一個完整的電機驅動時序

程序中其它的都是一些延時一類,沒什麼難度

『伍』 單片機步進電機的,就是那個控制正轉反轉的代碼怎麼來的

這個看不懂。
用89S52的計數器2,設置為可編程時鍾輸出控制伺服或步進電機特方便
12M的晶振
振盪頻率/(4*(65536-初裝值))

匯編代碼:
MOV C9H,#00000010B ;定時器2設為時鍾輸出
MOV CAH,#F9H ;T2寄存器低8位裝入初值
MOV CBH,#FFH ;T2寄存器高8位裝入初值
MOV C8H,#00000100B ;開定時計數器T2
運行此代碼P1.0口輸出500k方波
改變初裝值改變速度
關閉脈沖輸出命令,電機停止轉動
MOV C8H,#00000000B ;關定時計數器T2

加入停止開關和運轉指示燈

MOV C9H,#00000010B ;定時器2設為時鍾輸出
MOV CAH,#F9H ;T2寄存器低8位裝入初值
MOV CBH,#FFH ;T2寄存器高8位裝入初值
MOV C8H,#00000100B ;開定時計數器T2
CLR P1.3 ;開指示燈
1: JB P1.5,1;檢測停止按鍵
MOV C8H,#00H ;關定時計數器T2
SETB P1.3 ;關指示燈

加入啟動、停止、方向轉化開關和運轉指示燈
;P1.0運行脈沖信號輸出
;P1.1方向信號
;P1.2(離線使能信號)不明白你要干什麼用
;P1.3運轉指示燈
;P1.4啟動按鍵開關
;P1.5停止按鍵開關
;P1.6方向按鍵開關
變初裝值 0000H—FFFFH輸出頻率50HZ—3MHZ之間自由設定

MOV C9H,#00000010B ;定時器2設為時鍾輸出
MOV CAH,#F9H ;T2寄存器低8位裝入初值
MOV CBH,#FFH ;T2寄存器高8位裝入初值
KGJC:
JNB P1.4,KS;檢測啟動按鍵
JNB P1.5,TZ;檢測停止按鍵
JNB P1.6,HX;檢測方向按鍵
AJMP KGJC
TZ:MOV C8H,#00H ;關定時計數器T2
SETB P1.3 ;關指示燈
AJMP KGJC
KS:MOV C8H,#03H ;開定時計數器T2
CLR P1.3 ;開指示燈
AJMP KGJC

『陸』 51單片機控制電機正反轉,到達限位開關 停止如何實現 ,求代碼

比如用28的步進電機,用一個依次置一的數組加延時函數加for循環加按鍵檢測很容易實現的,就是讓單片機產生正向和反向的脈沖來控制步進電機。如果是一般的帶正反向的直流電機就用單片機的引腳或繼電器控制電機線圈的使能就解決了!

『柒』 單片機控制的16*16點陣顯示漢字,為什麼出現的字體是鏡像的怎麼改正

單片機控制的16*16點陣顯示漢字,出現字體是鏡像的現象是由於取點陣時掃描方向搞反了。改正方法是逆序讀點陣數組數據,即原來從數組0下標開始讀改為從下標15開始倒著讀,寫的順序不變,就矯正了。

『捌』 51單片機中如何用c語言控制直流電機正反轉

#include"reg52.h"
#include"intrins.h"
#define unint unsigned int
#define unchar unsigned char
#define PLAY_OUT P1
unchar sec=0;
unchar min=0;
unchar count=0;
bit gj=0; //光和遙控的切換
unchar r6,r7;
bit time0=1;
bit time1=1;
sbit PLAY_Q_Q=P3^0;
sbit PLAY_Z=P3^1;
sbit PLAY_Y=P3^4;
sbit PLAY_QH=P3^5;
sbit PLAY_Q_H=P3^6;
sbit PLAY_T=P3^7;
unchar r0,r1,r2=0x00,r3=0x00,r4=0x00,r5=0x00;
unchar code TAB_Q[4]={0xf9,0xf5,0xf6,0xfa};//前進
unchar code TAB_H[4]={0xfa,0xf6,0xf5,0xf9};//後退
unchar code TAB_Y[4]={0x9f,0x5f,0x6f,0xaf};//右轉
unchar code TAB_Z[4]={0xaf,0x6f,0x5f,0x9f};//左轉
/*************************/
void intiaton(void);
void int_time3(void);
void int_time0(void);
void fanzhuan_Y(void);
void fanzhuan_Z(void);
void zhenzhuan_Q(void);
void zhenzhuan_H(void);
void zhenzhuan_AQ(void);
void zhenzhuan_AH(void);
void cankey(void);
/*************************/
delay(unint t) //0.6ms
{unint i;
for(i=55;i>t;i--) ;

}
/**************************/
delayms(unint k) //k=1延遲0.884毫秒
{unint i;
for(i=80;i>k;i--)
;

}
/*************************/
void delay238(void) //2.38ms
{
unint i,j;
for(j=125;j>0;j--)
for(i=0;i<1;i++);
}
/************************/
void intiaton(void) //初始化
{
TMOD=0x11;
TH1=0XFA;
TL1=0X56;
ET1=1;
TR1=1;
EA=1;
}

/*********************/
void int_time3() interrupt 3 using 3
{
TH1=0XFA;
TL1=0X56;
sec++;
if(sec==2)
{
sec=0;
min++;
}
}
/*************************/ //光感與按鍵控制
void cankey()
{
if(gj)
{
if(!PLAY_Q_Q)
{
count=1;
}
if(!PLAY_T)
{
count=2;
}
if(!PLAY_Q_H)
{
count=3;
}
}
if((PLAY_Z==0)||(PLAY_Y==0))
{
delayms(1);
if(PLAY_Z==0)
{
fanzhuan_Z();count=1;
}
else
{
fanzhuan_Y();count=1;
}
}

if(PLAY_QH==0)
{
delayms(10);
if(PLAY_QH==0)
{
count++;
if(count==4)
{
count=0;
}
}
while(PLAY_QH==0);
}
switch(count)
{
case 0: PLAY_OUT=0xff;break;
case 1: zhenzhuan_AQ();break;
case 2: PLAY_OUT=0xff;break;
case 3: zhenzhuan_AH();break;
default :break;
}

}
/*******************************/ //按鍵前進
void zhenzhuan_AQ(void)
{
for(r6=0;r6<4;r6++)
{
PLAY_OUT=TAB_Q[r6];
while(sec==0);
sec=0;

}

}
/*******************/ //按鍵後退
void zhenzhuan_AH(void)
{

for(r6=0;r6<4;r6++)
{
PLAY_OUT=TAB_H[r6];
while(sec==0);
sec=0;
}

}
/**********************/ //左轉
void fanzhuan_Z(void)
{
unchar i;

for(i=0;i<22;i++)
{
for(r7=0;r7<4;r7++)
{
PLAY_OUT=TAB_Z[r7];
while(sec==0);
sec=0;
}
}
cankey();
}
/**********************/ //右轉
void fanzhuan_Y(void)
{
unchar i;
for(i=0;i<22;i++)
{
for(r7=0;r7<4;r7++)
{
PLAY_OUT=TAB_Y[r7];
while(sec==0);
sec=0;
}
}

cankey();
}
/***************************/
void main()
{
intiaton();
while(1)
{
cankey();
}
這是加了感光跟按鍵控制的智能小車,是讀大一時候寫的,現在看起來呵呵。。。垃圾代碼一大堆,不過好象還可以用。

『玖』 51單片機實現電動機正反轉控制如何實現

51單片機的IO口一般不能直接輸出控制電機,必須加裝電機驅動電路,常見的如L298N等,電機正反轉驅動採用H橋電路。你的要求使用很簡單的代碼就能實現。

『拾』 51單片機PWM怎麼正反轉呢幫我看下代碼怎麼改,謝謝

unsigned char bdata Bits;
sbit bit = Bits^0;//定義1個位變數
unsigned char T5S;定義1個5秒計時變數
void main(void)
{
bit = 0;//位變數清0
T5S = 0xxx;//賦5秒倒計數初值
egine = 0;關閉電機
agine = 0;
EA=1; //開啟中斷程序(into) //開段序
ET0=1; //開啟T0中斷程序(into) //中程
TR0=1; //打開T0中斷
while(1)
{
if(!ET0)//如果5秒計時結束
{
delay()//調用1個1秒的循環延時,電機停1秒
T5S = 0xxx;//重新賦初值
ET0 = 1;//重新開放T0中斷
}
}
}

void into(void) interrupt 1
{
T5S--;
if(!T5S){bit = ~bit;ET0 = 0;}//取反位變數,關閉T0中斷
whole--;
last--;
if(whole==0)
{whole=7;
last=2;
if(!bit)//判斷位變數決定電機轉動方向
{
egine =1;//電機正轉
agine = 0;
}
else
(
agine = 1;//電極反轉
egine =0;
}
}
else
{if(last==0)
{
egine =0;
agine = 0;
}
}
TH0 = 0x0FF;
TL0 = 0x9C;
}

delay()//1秒延時子程序
{
.........
}
以上修改的程序供參考,5秒和1秒的定時參數涉及單片機時鍾頻率,你自己解決,希望能幫到你。

閱讀全文

與單片機代碼控制字模的倒正相關的資料

熱點內容
公路商店app標簽選什麼 瀏覽:335
linuxoracle命令行登錄 瀏覽:224
android深度休眠 瀏覽:169
php微信開發例子 瀏覽:843
醫得app登錄密碼是什麼 瀏覽:140
spring開發伺服器地址 瀏覽:411
伺服器上如何查看伺服器的埠 瀏覽:678
單片機伺服器編譯 瀏覽:770
單口usb列印機伺服器是什麼 瀏覽:859
戰地五開伺服器要什麼條件 瀏覽:956
在word中壓縮圖片大小 瀏覽:255
javatomcat圖片 瀏覽:419
程序員生產智能創意 瀏覽:67
匯和銀行app怎麼登錄 瀏覽:383
騰訊伺服器如何上傳源碼 瀏覽:748
單片機的原理概述 瀏覽:512
火控pdf 瀏覽:269
如何復制雲伺服器centos環境 瀏覽:988
債權pdf 瀏覽:307
紅色番字的app怎麼下載 瀏覽:876