㈠ 51單片機一般有哪些常用的簡單模塊
內部有UART、TIMER,還有的51有WATCHDOG,SPI,AD。
外部常用控制模塊有,LCD(如1602,12864等),7SegLED,IR,KEY,繼電器等等。
㈡ 51單片機開發板和驅動模塊怎麼連接
+ 5V和GND是電源,通常稱為正極和負極,可以連接到微控制器板板上DC-10插座中的電源介面(+ 5V連接到VCC,GND連接到GND),前提是沒有從該下載埠向微控制器板供電。
IN0~IN4連接到微控制器上的任何IO埠,只要在編程期間設置IO,P0~P3中的任何四個IO都可以。當然,為了方便起見,通常並聯在一起,例如P2_0至P2_3。驅動模塊的驅動電源輸入不應取自MCU板,而應使用其他電源為其供電。
(2)51單片機的電動驅動模塊擴展閱讀:
5V和GND分別是電源箱接地,驅動板上的5V可以與MCU相連,(當然,如果遇到麻煩,可以與MCU的5V相連),其為L298的L298提供邏輯電源。驅動板必須將GND連接到微控制器的GND。
至於控制電動機的旋轉方向的IN1,IN2,IN3和IN4,一般來說,IN2和IN1控制電動機。 IN3和IN4控制電動機。例如,如果IN1和IN2分別為0和1,則向左轉,反之亦然。當IN1和IN2都為高或低時,單擊以停止。 IN3和IN4也是如此。黃色的跳線帽是輸入PWM,用於控制電動機速度。
㈢ 51單片機開發板和驅動模塊怎麼連接
我記得我回答過這個問題的,怎麼又出現了。+5V和GND是電源,接到5V電源的正負極就可以了,IN1~IN4是控制IO,接到單片機的任意四個IO就可以了,比如P20到P23。
㈣ 51單片機怎麼驅動直流電機c語言
51單片機驅動直流電機程序(用的是l298n晶元):
#include<reg51.h>
#include<math.h>
#defineuintunsignedint
#defineucharunsignedchar
#defineN100
sbits1=P1^0;//電機驅動口
sbits2=P1^1;//電機驅動口
sbits3=P1^2;//電機驅動口
sbits4=P1^3;//電機驅動口
sbiten1=P1^4;//電機使能端
sbiten2=P1^5;//電機使能端
sbitLSEN=P2^0;//光電對管最左
sbitLSEN1=P2^1;//光電對管左1
sbitLSEN2=P2^2;//光電對管左2
sbitRSEN1=P2^3;//光電對管右1
sbitRSEN2=P2^4;//光電對管右2
sbitRSEN=P2^5;//光電對管最右
uintpwm1=0,pwm2=0,t=0;
voiddelay(uintxms)
{
uinta;
while(--xms)
{
for(a=123;a>0;a--);
}
}
voidmotor(ucharspeed1,ucharspeed2)
{
if(speed1>=-100&&speed1<=100)
{
pwm1=abs(speed1);
if(speed1>0)
{
s1=1;
s2=0;
}
if(speed1==0)
{
s1=1;
s2=1;
}
if(speed1<0)
{
s1=0;
s2=1;
}
}
if(speed2>=-100&&speed2<=100)
{
pwm2=abs(speed2);
if(speed2>0)
{
s3=1;
s4=0;
}
if(speed2==0)
{
s3=1;
s4=1;
}
if(speed2<0)
{
s3=0;
s4=1;
}
}
}
voidgo_forward(uintspeed)
{
s1=1;
s2=0;
s3=1;
s4=0;
pwm1=speed;
pwm2=speed;
}
voidgo_back(uintspeed)
{
s1=0;
s2=1;
s3=0;
s4=1;
pwm1=speed;
pwm2=speed;
}
voidstop()
{
s1=1;
s2=1;
s3=1;
s4=1;
pwm1=0;
pwm2=0;
}
voidturn_right(uintP1,uintP2)//右轉函數
{
s1=1;
s2=0;
s3=0;
s4=1;
pwm1=P1;
pwm2=P2;
}
voidturn_left(uintP1,uintP2)//左轉函數
{
s1=0;
s2=1;
s3=1;
s4=0;
pwm1=P1;
pwm2=P2;
}
voidtracking()
{
if((LSEN1==0)&&(LSEN2==0)&&(RSEN1==0)&&(RSEN2==0))//沒有檢測到
{
go_forward(100);
}
if((LSEN1==1)&&(LSEN2==0)&&(RSEN1==0)&&(RSEN2==0))//左一檢測到
{
turn_left(40,80);//左轉右輪》左輪
delay(N);
}
if((LSEN1==0)&&(LSEN2==1)&&(RSEN1==0)&&(RSEN2==0))//左二檢測到
{
turn_left(40,60);//左轉右輪》左輪
delay(N);
}
if((LSEN1==0)&&(LSEN2==0)&&(RSEN1==1)&&(RSEN2==0))//右一檢測到
{
turn_right(60,4);//右轉左輪》右輪
delay(N);
}
if((LSEN1==0)&&(LSEN2==0)&&(RSEN1==0)&&(RSEN2==1))//右二檢測到
{
turn_right(80,40);//右轉左輪》右輪
delay(N);
}
if((LSEN1==1)&&(LSEN2==1))
{
turn_left(0,100);
delay(1000);
}
if((RSEN1==1)&&(RSEN2==1))
{
turn_right(100,0);
delay(1000);
}
}
voidavoidance()
{
}
voidinit()
{
TMOD=0x02;//timer0同時配置為模式2,8自動重裝計數模式
TH0=156;//定時器初值設置100us中斷
TL0=156;
ET0=1;
EA=1;
TR0=1;//開啟總中斷
}
voidmain()
{
init();
while(1)
{
tracking();
}
}
voidtimer0()interrupt1//電機驅動提供PWM信號
{
if(t<pwm1)
en1=1;
else
en1=0;
if(t<pwm2)
en2=1;
else
en2=0;
t++;
if(t>100)
t=0;
}
(4)51單片機的電動驅動模塊擴展閱讀
L298N是一種雙H橋電機驅動晶元,其中每個H橋可以提供2A的電流,功率部分的供電電壓范圍是2.5-48v,邏輯部分5v供電,接受5vTTL電平。一般情況下,功率部分的電壓應大於6V否則晶元可能不能正常工作。
㈤ 51單片機電源模塊如何實現穩定可靠的供電
前端供電端電壓穩定且功率足夠,電源模塊所帶的負載合理,並帶有相應的濾波電路、短路保護、反接保護等。