BASIC4MCU | 모터 | KE-L298N강좌 | KE-L298N v1.0 - BLDC 모터 - GPIO 구동
페이지 정보
작성자 키트 작성일2017-09-05 14:57 조회2,289회 댓글0건본문
//-------------------------------------------------------------
// XTAL : 14.7456MHz
//-------------------------------------------------------------
// BLDC 가감속
//-------------------------------------------------------------
#include
#include
// 2상
//#define EN1 PORTB.5 // // 1010
//#define IN2 PORTB.3 // /A // 0010
//#define IN1 PORTB.2 // A // 1000
//
#define A_1 PORTA=0x28
#define A_0 PORTA=0x24
#define A_Z PORTA=0
#define B_1 PORTB=0x28
#define B_0 PORTB=0x24
#define B_Z PORTB=0
#define C_1 PORTC=0x28
#define C_0 PORTC=0x24
#define C_Z PORTC=0
//
void dly(int d){
int i;
for(i=0;i
}
//
void main(){
int i;
DDRA=0x2C; DDRB=0x2C; DDRC=0x2C;
while(1){
for(i=3000;i>300;i--){
C_Z; B_0; A_1; dly(i); //A->B
B_Z; C_0; A_1; dly(i); //A->C
A_Z; C_0; B_1; dly(i); //B->C
C_Z; A_0; B_1; dly(i); //B->A
B_Z; A_0; C_1; dly(i); //C->A
A_Z; B_0; C_1; dly(i); //C->B
}
for(i=300;i<3000;i++){
C_Z; B_0; A_1; dly(i); //A->B
B_Z; C_0; A_1; dly(i); //A->C
A_Z; C_0; B_1; dly(i); //B->C
C_Z; A_0; B_1; dly(i); //B->A
B_Z; A_0; C_1; dly(i); //C->A
A_Z; B_0; C_1; dly(i); //C->B
}
}
}
128모듈의 A,B,C 포트에 모터 드라이브모듈을 하나씩 연결하고
/A,B,/B는 사용하지 않고 A출력 하나만 사용해서 BLDC에 연결했습니다.
BLDC 모터에 전류를 인가하는 순서는 윗그림 참고하세요
3상이라서 임의로 정해서 구동하면 되고
회전 방향이 반대면 모터의 3선중 아무 것이나 두선을 바꾸면 됩니다.^^
댓글 0
조회수 2,289등록된 댓글이 없습니다.