Tải bản đầy đủ
CHƯƠNG III: THIẾT KẾ MẠCH ĐIỀU KHIỂN VÀ XÂY DỰNG CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC

CHƯƠNG III: THIẾT KẾ MẠCH ĐIỀU KHIỂN VÀ XÂY DỰNG CHƯƠNG TRÌNH ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC

Tải bản đầy đủ

3.3. Xây dựng sơ đồ hệ thống bằng phần mềm mô phỏng proteus

3.4. Xây dựng mạch điều khiển
3.4.1. Sơ đồ mạch in

41

3.4.2. Code điều khiển
#include
#define cuon4 P2_0
#define cuon3 P2_1
#define cuon2 P2_2
#define cuon1 P2_3
#define resetthuan P1_0
#define resetnguoc P1_1
#define tangtoc P1_2
#define giamtoc P1_3
#define bat 1
#define tat 0
unsigned int n,m,t_on;
char mathuan[4]={0x06,0x0c,0x09,0x03};
void delay (unsigned int time)
{
while(time--)
{
unsigned long temp=5;
while(temp--);
}
}
void chay_thuan()
{
if(m>0&&m<100)
{
n=m;
P2=mathuan[0];
delay(n);
P2=mathuan[1];
delay(n);
P2=mathuan[2];
delay(n);
P2=mathuan[3];
delay(n);
}
else if(m>=100)
{
P2=0x00;
}
42

}
void chay_nguoc()
{
if(m>0&&m<100)
{
n=m;
P2=mathuan[3];
delay(n);
P2=mathuan[2];
delay(n);
P2=mathuan[1];
delay(n);
P2=mathuan[0];
delay(n);
}
else if(m>=100)
{
P2=0x00;
}
}
void main()
{
P2=0x00;
m=50;
while(1)
{
if (resetthuan==0)
{
while(resetnguoc==1)
{
if(tangtoc==0)
{
n=m-5;
if(m<=20)m=20;
}
else if(giamtoc==0)
{
m=m+5;
if(m>=100)m=100;
}
43

chay_thuan();
}
}
else if(resetnguoc==0)
{
while(resetthuan==1)
{
if(tangtoc==0)
{
m=m-5;
if(m<=20)m=20;
}
else if(giamtoc==0)
{
m=m+5;
if(m>=100)m=100;
}
chay_nguoc();
}
}
}
}

44

3.4.3. Hình ảnh sản phẩm

45

TÀI LIỆU THAM KHẢO
1. Giáo trình hệ thống cơ điện tử ô tô 1 & 2\
2. Bộ ktv Toyota
3. Giáo trình điện tử căn bản
4. Giáo trình vi điều khiển
5. Mạng internet

46