Q&A
| 번호 | 제목 | 작성자 | 등록일 | 조회 |
|---|---|---|---|---|
| 4713 | 답변완료am-slcd에 관련하여 질문입니다. | 오상엽 | 2010-03-16 | 1,343 |
|
AM-SLCD에 대하여 질문을 남겼는데 이렇게 댓글을 달아주셨습니다.
>>>
SLCD는 시리얼 통신을 통해서 들어오는 데이터를 LCD로 뿌려 주거나, 또는 시리얼을 통해 명령어로 LCD에 글을 쓰는 방식이구요. 즉, LCD를 직접 제어하는 것은 SLCD에 붙어 있는 모듈이 해 주구요. 그 모듈과 제어해 주는 쪽과는 시리얼로 통신한다는 말입니다. 터미널 모드를 사용하면 시리얼 통신을 통해 블루투스 모듈 등에서 들어오는 데이터를 바로바로 표시할 수 있습니다.
TLCD는 10핀 헤더핀들을 통해서, 직접 I/O를 건드려서, LCD를 직접 제어해야 하는 방식이구요. 타이밍도에 따라서, 맞춰서 프로그래밍을 일일이 해줘야 합니다. 즉, 학습하기 좋습니다.
<<<
질문1.
터미널모드에서 시리얼통신을 통해 블루투스 모듈등에서 들어오는 데이터를 바로바로 표시하지 않고 코드상에서 예로
송신용 블루투스에서 putchar(0x30)으로 '0'이라는 char를 보내면
수신용 블루투스에서 getchar()으로 '0'이라는 char를 받았다면
unsigned char data;
data = getchar();
if(data == 0x30) printf("Received char");
이런식으로 코드상에서 원하는 조건일때 LCD에 표시를 해줄수있습니까?
질문2.
SLCD와 TLCD의 역할은 같고 학습용도가 아니고 쉽게 응용목적이라면 SLCD로도 충분하다는 것입니까???
질문3.
제가 스위치를 이용해서 포트에 5V(HIGH)를 준다고했을때
unsigned char sw;
sw = PIND; <<<
if(sw == 0x01) PORTA=0xff;
라고했을때 화살표 부분에서 제가 포트 입력 테스트도중 어떤 포트에서는 입력이 읽히는데 다른포트에서는 안읽히고 어떤포트에서 상위비트는 읽히는데 하위비트는 안읽히든지 이런건 없습니까?
참고로 포트 초기화에서 DDRD=0x00;으로 포트D를 모두 입력으로 했는데도 말입니다 다른포트를 쓸때도 그에 맞춰서 입력으로 초기화했습니다. 제가알기로는 모든 포트가 병렬식으로 입출력설정을 할수 있다고 알고 있는데 특정 포트에서만 스위치 테스트가 성공되니 궁금합니다.
답변부탁드립니다. 수고하세요~!
관리자 답변
안녕하세요
1.
unsigned char data;
data = getchar();
if(data == 0x30) printf("Received char");
위코드로 하시면 안되고, 아래코드처럼 printf를 2개로 만드시면 가능해 보입니다.
아래처럼 따로 각각 만들서야 하는 부분입니다. ;;
예)
uart0_getchar()
uart1_getchar()
uart0 --> uart0_printf
uart1 --> uart1_printf
검색엔진에 printf 만드는 방법에 대해 나와있습니다.
아래와 같이 하면, UART0에서 getchar를 통한 scanf와 putchar를 통한 printf를 두가지 다 한포트에서 하겠지요?
// printf 함수 사용시 추가할 것.
int putchar(char c)
{
while (((UCSR0A>>UDRE0)&0x01) == 0) ; // UDRE, data register empty
UDR0 = c;
return c;
}
// scanf 함수 사용시 추가할 것.
int getchar(void)
{
while ((UCSR0A & 0x80) == 0);
return UDR0;
}
하지만, 아래와 같이 하면, UART0에서 getchar를 통한 scanf와 UART1에서 putchar를 통한 printf를 두가지 각각 다른 포트에서 하게 됩니다.
// printf 함수 사용시 추가할 것.
int putchar(char c)
{
while (((UCSR1A>>UDRE1)&0x01) == 0) ; // UDRE, data register empty
UDR1 = c;
return c;
}
// scanf 함수 사용시 추가할 것.
int getchar(void)
{
while ((UCSR0A & 0x80) == 0);
return UDR0;
}
여기서, putchar를 사용하는 printf를 평상시는 SLCD를 꽂은 쪽인 UART1에 하다가, 블루투스 모듈로 뭔가 데이터를 날리고 싶을 때는 UART0으로 해야 겠죠? 그 때는 아래와 같이 해서, dir라는 변수의 값을 0이나 1로 바꿔 가면서 printf를 하면 printf 방향을 바꿔서 쓸 수 있습니다.
// printf 함수 사용시 추가할 것.
volatile int dir;
int putchar(char c)
{
if(dir==1){
while (((UCSR1A>>UDRE1)&0x01) == 0) ; // UDRE, data register empty
UDR1 = c;
}else{
while (((UCSR0A>>UDRE0)&0x01) == 0) ; // UDRE, data register empty
UDR0 = c;
}
return c;
}
2.
slcd 와 tlcd 차이는 제어 방법이 간단한 데이타 입출력의 시리얼 방식과
초기화루틴이 필요한 패럴러 방식 둘 차이일뿐 사용목적에 따라 구분하지는 않습니다.
3.
입력으로 사용하실떄는 그 포트에 어떤 디바이스들 공용으로 사용하시는지를
도면을 확인해 보시길 바랍니다.
AB-M128Pro-A 이 키트를 사용하시면 PORTD 0,1 에 i2c 회로가 연결되어 있어
오동작이 할수있습니다.
I2C로 가는 저항을 제거 하여 사용하시거나 다른 디바이스가 물리지않는
포트를 사용하시면 됩니다.
수고하세요
>AM-SLCD에 대하여 질문을 남겼는데 이렇게 댓글을 달아주셨습니다.
>>>>
>
>SLCD는 시리얼 통신을 통해서 들어오는 데이터를 LCD로 뿌려 주거나, 또는 시리얼을 통해 명령어로 LCD에 글을 쓰는 방식이구요. 즉, LCD를 직접 제어하는 것은 SLCD에 붙어 있는 모듈이 해 주구요. 그 모듈과 제어해 주는 쪽과는 시리얼로 통신한다는 말입니다. 터미널 모드를 사용하면 시리얼 통신을 통해 블루투스 모듈 등에서 들어오는 데이터를 바로바로 표시할 수 있습니다.
>
>TLCD는 10핀 헤더핀들을 통해서, 직접 I/O를 건드려서, LCD를 직접 제어해야 하는 방식이구요. 타이밍도에 따라서, 맞춰서 프로그래밍을 일일이 해줘야 합니다. 즉, 학습하기 좋습니다.
>
><<<
>질문1.
>터미널모드에서 시리얼통신을 통해 블루투스 모듈등에서 들어오는 데이터를 바로바로 표시하지 않고 코드상에서 예로
>송신용 블루투스에서 putchar(0x30)으로 '0'이라는 char를 보내면
>수신용 블루투스에서 getchar()으로 '0'이라는 char를 받았다면
>unsigned char data;
>data = getchar();
>if(data == 0x30) printf("Received char");
>이런식으로 코드상에서 원하는 조건일때 LCD에 표시를 해줄수있습니까?
>질문2.
>SLCD와 TLCD의 역할은 같고 학습용도가 아니고 쉽게 응용목적이라면 SLCD로도 충분하다는 것입니까???
>질문3.
>제가 스위치를 이용해서 포트에 5V(HIGH)를 준다고했을때
>unsigned char sw;
>sw = PIND; <<<
>if(sw == 0x01) PORTA=0xff;
>라고했을때 화살표 부분에서 제가 포트 입력 테스트도중 어떤 포트에서는 입력이 읽히는데 다른포트에서는 안읽히고 어떤포트에서 상위비트는 읽히는데 하위비트는 안읽히든지 이런건 없습니까?
>참고로 포트 초기화에서 DDRD=0x00;으로 포트D를 모두 입력으로 했는데도 말입니다 다른포트를 쓸때도 그에 맞춰서 입력으로 초기화했습니다. 제가알기로는 모든 포트가 병렬식으로 입출력설정을 할수 있다고 알고 있는데 특정 포트에서만 스위치 테스트가 성공되니 궁금합니다.
>
>답변부탁드립니다. 수고하세요~!
>
|
||||
| 4712 | 답변완료스텝모터 구동에 관해 문의 드립니다. | 하은현 | 2010-03-16 | 1,327 |
|
안녕하세요.
스텝모터를 구동하는데 있어 궁금한 점이 있어 문의를 드립니다.
스텝모터는 SE-SM243을 사용하고 있고
드라이버 모듈은 AM-MS2를 사용하고 있습니다.
그리고 소프트웨어는 LabVIEW를 쓰고 있습니다.
전원과 전류에 관해 궁금한 것은
모터가 최상의 상태로 동작하기 위해서는 24V, 3A로 전압과 전류를 인가하면 되는지 궁금합니다.
(현재 클럭 입력을 가하지 않을 때 모듈에 12V, 1A를 인가해서 사용하고 있고, 가변저항을 조정하여 1A로 맞추었습니다.)
두번째 질문은 스텝모터의 스텝각입니다.
SE-SM243 스텝모터의 스텝각이 1.8도가 맞는지요.
세번째 질문은 클럭당 회전수에 관한 것입니다.
SLA7062M 칩이 4가지 스텝모드를 지원하는 것으로 알고 있습니다.
Half Step을 기준으로 모터가 한 바퀴 회전하는데 필요한 클럭수가 어떻게 되는지 궁금합니다.
(클럭이 8개가 인가되었을 때 1.8도가 회전한다면 1600클럭이 인가되면 360도를 회전하는 것으로 이해했는데, 1600Hz의 클럭을 인가했을 때 1바퀴 이상을 회전하는 거 같습니다.)
그럼 답변 기다리겠습니다.
감사합니다.
관리자 답변
안녕하세요
>전원과 전류에 관해 궁금한 것은
>모터가 최상의 상태로 동작하기 위해서는 24V, 3A로 전압과 전류를 인가하면 되는지 궁금합니다.
>(현재 클럭 입력을 가하지 않을 때 모듈에 12V, 1A를 인가해서 사용하고 있고, 가변저항을 조정하여 1A로 맞추었습니다.)
모터는 보통 용량으로 계산합니다.
SE-SM243 스펙을 보시면 4.1v / 0.95A 소모하다고 적혀있습니다.
이걸 요량으로 계산하면 대략 모터의 상의 소모요량이 4W 입니다.( 합은 16W)
그러나 AM-MS2 이것은 10볼트 이상을 넣어주어야하는 드라이버입니다.
12볼트인가 하면 최대 대략 1.2A(16W/12V) 정도를 소모합니다.
모터하나당 최대 소모량은 12볼트에 1.2A 입니다.
전압값이 두배로 24볼트가 되면 전류값(0.6A)은 더 적게 소모합니다.
그러나 용량의 값을 동일합니다.
>두번째 질문은 스텝모터의 스텝각입니다.
>SE-SM243 스텝모터의 스텝각이 1.8도가 맞는지요.
>
>세번째 질문은 클럭당 회전수에 관한 것입니다.
>SLA7062M 칩이 4가지 스텝모드를 지원하는 것으로 알고 있습니다.
>Half Step을 기준으로 모터가 한 바퀴 회전하는데 필요한 클럭수가 어떻게 되는지 궁금합니다.
>(클럭이 8개가 인가되었을 때 1.8도가 회전한다면 1600클럭이 인가되면 360도를 회전하는 것으로 이해했는데, 1600Hz의 클럭을 인가했을 때 1바퀴 이상을 회전하는 거 같습니다.)
SE-SM243 스텝각은 1.8도가 맞습니다.
총 200칸이 1회전입니다 7062 1~2-상여자방식이므로 곱하기 2배를 더 해주셔야합니다.
Half Step 400 펄스 1회전
Quarter Step 800 펄스 1회전
Wighth Step 1600 펄스 1회전
Sixteenth Step 3200 펄스 1회전
수고하세요
>안녕하세요.
>스텝모터를 구동하는데 있어 궁금한 점이 있어 문의를 드립니다.
>
>스텝모터는 SE-SM243을 사용하고 있고
>드라이버 모듈은 AM-MS2를 사용하고 있습니다.
>그리고 소프트웨어는 LabVIEW를 쓰고 있습니다.
>
>전원과 전류에 관해 궁금한 것은
>모터가 최상의 상태로 동작하기 위해서는 24V, 3A로 전압과 전류를 인가하면 되는지 궁금합니다.
>(현재 클럭 입력을 가하지 않을 때 모듈에 12V, 1A를 인가해서 사용하고 있고, 가변저항을 조정하여 1A로 맞추었습니다.)
>
>두번째 질문은 스텝모터의 스텝각입니다.
>SE-SM243 스텝모터의 스텝각이 1.8도가 맞는지요.
>
>세번째 질문은 클럭당 회전수에 관한 것입니다.
>SLA7062M 칩이 4가지 스텝모드를 지원하는 것으로 알고 있습니다.
>Half Step을 기준으로 모터가 한 바퀴 회전하는데 필요한 클럭수가 어떻게 되는지 궁금합니다.
>(클럭이 8개가 인가되었을 때 1.8도가 회전한다면 1600클럭이 인가되면 360도를 회전하는 것으로 이해했는데, 1600Hz의 클럭을 인가했을 때 1바퀴 이상을 회전하는 거 같습니다.)
>
>그럼 답변 기다리겠습니다.
>
>감사합니다.
|
||||
| 4711 | 답변완료PORTC에서 외부인터랍트 테스트중 발생문제 | 김영기 | 2010-03-16 | 1,526 |
|
코드는 INT0~3에서 각각 LED점등하는 코드입니다.
INT0시 결과는 INT3번에 해당하는 LED가 점등하는 식으로 에러가 발생합니다.
소트프문제인지 마이컴 문제인지 분간이 안갑니다.
AVRWIN사용자입니다.
참고로 코드 올립니다.
include <avr/io.h>
#include <avr/interrupt.h>
typedef union {
unsigned char bits;
struct {
unsigned char bit0:1;
unsigned char bit1:1;
unsigned char bit2:1;
unsigned char bit3:1;
unsigned char bit4:1;
unsigned char bit5:1;
unsigned char bit6:1;
unsigned char bit7:1;
};
} outport;
outport LED;
ISR( INT0_vect )
{
LED.bits=0x00;
LED.bit0=1;
PORTC =LED.bits;
}
ISR( INT1_vect )
{
LED.bits=0x00;
LED.bit1=1;
PORTC =LED.bits;
}
ISR( INT2_vect )
{
LED.bits=0x00;
LED.bit2=1;
PORTC =LED.bits;
}
ISR( INT3_vect )
{
LED.bits=0x00;
LED.bit3=1;
PORTC =LED.bits;
}
int main() {
DDRC=0xFF;
sei();
EIMSK |=1<<0 | 1<<1 |1<< 2 |1<< 3;
EICRA |=1<<0 | 1<<1;
EICRA |=1<<2 | 1<<3;
EICRA |=1<<4 | 1<<5;
EICRA |=1<<6 | 1<<7;
while(1)
{
// while( PIND & 1<<PIND0) PORTC &=~(1<<PORTC0) ;
// while( PIND & 1<<PIND1) PORTC &=~(1<<PORTC1);
// while( PIND & 1<<PIND2) PORTC =1<<PORTC2;
// while( PIND & 1<<PIND3) PORTC =1<<PORTC3;
while( PIND & 1<<PIND4) PORTC =1<<PORTC4;
while( PIND & 1<<PIND5) PORTC =1<<PORTC5;
while( PIND & 1<<PIND6) PORTC =1<<PORTC6;
while( PIND & 1<<PIND7) PORTC =1<<PORTC7;
}
}
관리자 답변
안녕하세요
AB-M128Pro-A로 테스트를 하였습니다.
INT0~1 은 I2C 와 같은 핀을 사용도록 되어있습니다.
2개의 핀을 INT로 사용하고 싶으시면 I2C로 가는 신호 없애야 합니다.
즉 R125, R126 저항을 없애야합니다.
아래 예제코드는 정상적으로 동작하고 있습니다.
아래 링크는 회로도 입니다. 보시고 참고 하시길 바랍니다.
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=AB-M128Pro-A&select_arrange=headnum&desc=asc&no=249
포트중에 출력을 제외한
입력, 통신(UART,I2C,SPI EMD),INT 특수한 목적으로 사용하는 핀에 대해서는 회로도에
다른 디바이스와 연결되어 있는지 확인하시길 바랍니다. ^^
수고하세요
>코드는 INT0~3에서 각각 LED점등하는 코드입니다.
>
>INT0시 결과는 INT3번에 해당하는 LED가 점등하는 식으로 에러가 발생합니다.
>
>소트프문제인지 마이컴 문제인지 분간이 안갑니다.
>AVRWIN사용자입니다.
>
>참고로 코드 올립니다.
>
>include <avr/io.h>
>#include <avr/interrupt.h>
>
>typedef union {
> unsigned char bits;
> struct {
> unsigned char bit0:1;
> unsigned char bit1:1;
> unsigned char bit2:1;
> unsigned char bit3:1;
> unsigned char bit4:1;
> unsigned char bit5:1;
> unsigned char bit6:1;
> unsigned char bit7:1;
> };
> } outport;
>
>outport LED;
>
>ISR( INT0_vect )
>{
> LED.bits=0x00;
> LED.bit0=1;
> PORTC =LED.bits;
>}
>
>ISR( INT1_vect )
>{
> LED.bits=0x00;
> LED.bit1=1;
> PORTC =LED.bits;
>}
>
>ISR( INT2_vect )
>{
> LED.bits=0x00;
> LED.bit2=1;
> PORTC =LED.bits;
>}
>ISR( INT3_vect )
>{
> LED.bits=0x00;
> LED.bit3=1;
> PORTC =LED.bits;
>}
>
>int main() {
>
> DDRC=0xFF;
> sei();
> EIMSK |=1<<0 | 1<<1 |1<< 2 |1<< 3;
> EICRA |=1<<0 | 1<<1;
> EICRA |=1<<2 | 1<<3;
> EICRA |=1<<4 | 1<<5;
> EICRA |=1<<6 | 1<<7;
>
>
> while(1)
> {
>// while( PIND & 1<<PIND0) PORTC &=~(1<<PORTC0) ;
>// while( PIND & 1<<PIND1) PORTC &=~(1<<PORTC1);
>// while( PIND & 1<<PIND2) PORTC =1<<PORTC2;
>// while( PIND & 1<<PIND3) PORTC =1<<PORTC3;
> while( PIND & 1<<PIND4) PORTC =1<<PORTC4;
> while( PIND & 1<<PIND5) PORTC =1<<PORTC5;
> while( PIND & 1<<PIND6) PORTC =1<<PORTC6;
> while( PIND & 1<<PIND7) PORTC =1<<PORTC7;
>
> }
>}
|
||||
| 4710 | 답변완료이번에 제품을 구매하려고 하는데요. | 남궁철 | 2010-03-16 | 1,451 |
|
이번에 avr 실습 장비를 구성하려고 하는데
제 생각으로는
- KD-128 pro
- AVR용 USB-ISP (이걸 눌러서 살펴보면 USBISP-L이 있고 AD-USBISP가 있는데 무슨차이죠?)
- 2x5 박스 케이블(긴것 밖에 안파나요?)
- AM-CS2P
- AM-DC2-2D
이정도를 구매하려 하는데
추가로 더 필요한건 없는지
조언좀 해주셨으면 합니다.
참 공부는 카페에 있는 자료로 해도 충분한가요?
별도의 서적이 있다면 알려주시면 감사하겠습니다~
감사합니다!
관리자 답변
안녕하세요, 고객님
>- AVR용 USB-ISP (이걸 눌러서 살펴보면 USBISP-L이 있고 AD-USBISP가 있는데 무슨차이죠?)
ISP 커넥터 변환 보드 AD-ISP-CVB 이 쪽보드가 추가된 것입니다.
현재 저희 키트만 사용 하신다면 USBISP-L 버젼을 사용하시면 됩니다.
>- 2x5 박스 케이블(긴것 밖에 안파나요?)
한종류만 판매되고 있습니다.
>- AM-CS2P
>- AM-DC2-2D
모터를 이용하시다면 아탑터를 12V 1A 급을 따로 구매하셔야 할것 같습니다.
>참 공부는 카페에 있는 자료로 해도 충분한가요?
>별도의 서적이 있다면 알려주시면 감사하겠습니다~
강좌에 avr 강좌를 보시면 컴파일러프로젝트 생성 및 다운로드등
기초부터 응용편까지 강좌들이 있습니다.
수고하세요
>
>이번에 avr 실습 장비를 구성하려고 하는데
>
>제 생각으로는
>
>- KD-128 pro
>- AVR용 USB-ISP (이걸 눌러서 살펴보면 USBISP-L이 있고 AD-USBISP가 있는데 무슨차이죠?)
>- 2x5 박스 케이블(긴것 밖에 안파나요?)
>- AM-CS2P
>- AM-DC2-2D
>
> 이정도를 구매하려 하는데
>
>추가로 더 필요한건 없는지
>
>조언좀 해주셨으면 합니다.
>
>참 공부는 카페에 있는 자료로 해도 충분한가요?
>
>별도의 서적이 있다면 알려주시면 감사하겠습니다~
>
>감사합니다!
>
>
|
||||
| 4709 | 답변완료ATMEGA 2560 개발보드에 2560모듈 포함가격인가요? | Hoony.Kwon | 2010-03-15 | 1,470 |
|
ATMEGA 2560 개발보드에 2560모듈 포함가격인가요?
이메일 답변 부탁드립니다. 아직 디바이스 마트에 없던데요.
NewTC에서 VAT없이 구매 가능한가요?
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨를 이용하여 주셔서 감사합니다.
2560 개발보드인 AB-M2560 보드에는 2560 모듈이 포함된 가격입니다.
본사의 제품소개에 있는 가격이 VAT 포함 가격이구요.
죄송하지만, VAT 없이는 법적으로도 실질적으로도 본사에서 판매할 수가 없습니다.
본사의 대리점 중 하나인 디바이스 마트에서는 현재 그 제품을 등록 중이구요.
제가 알기로는 디바이스 마트에서도 구매할 때 VAT가 붙어서 나가는 것으로 압니다.
디바이스마트 쇼핑몰 공개 가격은 VAT 없이 되어 있지만, 구매 버튼 누를 때, VAT가 붙어서 나가기 때문에, 본사와 같은 가격이 판매되게 됩니다.
현재는 본사와 다른 대리점들에서 주문이 가능합니다. 조만간에 디바이스마트에서도 주문이 가능할겁니다.
감사합니다.
>ATMEGA 2560 개발보드에 2560모듈 포함가격인가요?
>
>이메일 답변 부탁드립니다. 아직 디바이스 마트에 없던데요.
>
>NewTC에서 VAT없이 구매 가능한가요?
|
||||
| 4708 | 답변완료보드 한계전압과 연결에 대해서 질문드립니다. | 이호 | 2010-03-15 | 1,455 |
|
AB-M128-B에 대해서 질문드립니다.
전에 드렸던 질문인데,
제가 글솜씨가 부족해서인지
... 말을 이상하게 해서;;;
1) 개발보드가 30V이상 버틸 수 있나요?
부연설명 - 제가 돌리려는 것이 20V이상 필요합니다.
2) AM-DC1-4D 드라이버와 개발보드 소형을 연결할때
프로그램 제어를 위한 10단자 케이블은 연결하고
개발보드파워(12V OUT이나 5V OUT)은 드라이버와 연결하지 않고
여타의 다른 높은 전압(어차피 45V까지 드라이버가 버틸 수 있으니까요)을
따로 연결해주어도 개발보드로 모터드라이버를 제어가 가능한가요?
말이.. 어렵나요?
[개발보드 10단자 ] ======== |모 터|
[20V이상 서플라이] ======== |드라이버|
뭐 이런 식입니다. -.-;;;
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨를 이용하여 주셔서 감사합니다.
질문에 답변하여 드릴께요.
1) 개발보드가 30V이상 버틸 수 있나요?
> 부연설명 - 제가 돌리려는 것이 20V이상 필요합니다.
==> 네 가능합니다. 스펙상으로는 35V까지라고 되어 있는 데, 20V 정도는 문제 없습니다.
다만, 열이 많이 발생하므로, 장시간 사용시 방열에 신경을 좀 쓰셔야 합니다. 또는, 보드를 실장하여 테스트가 필요합니다.
2) AM-DC1-4D 드라이버와 개발보드 소형을 연결할때
> 프로그램 제어를 위한 10단자 케이블은 연결하고
> 개발보드파워(12V OUT이나 5V OUT)은 드라이버와 연결하지 않고
> 여타의 다른 높은 전압(어차피 45V까지 드라이버가 버틸 수 있으니까요)을
> 따로 연결해주어도 개발보드로 모터드라이버를 제어가 가능한가요?
==> 가능합니다. 5~45V를 넣어주면 동작 가능합니다. 다만, 충분한 전류를 공급할 수 있는 전원을 사용하시고, 또한, 전원을 공급하는 선도 그에 충분한 굵기의 연선을 사용하세요.
수고하세요.
>AB-M128-B에 대해서 질문드립니다.
>
>전에 드렸던 질문인데,
>
>제가 글솜씨가 부족해서인지
>
>... 말을 이상하게 해서;;;
>
>1) 개발보드가 30V이상 버틸 수 있나요?
> 부연설명 - 제가 돌리려는 것이 20V이상 필요합니다.
>
>2) AM-DC1-4D 드라이버와 개발보드 소형을 연결할때
> 프로그램 제어를 위한 10단자 케이블은 연결하고
> 개발보드파워(12V OUT이나 5V OUT)은 드라이버와 연결하지 않고
> 여타의 다른 높은 전압(어차피 45V까지 드라이버가 버틸 수 있으니까요)을
> 따로 연결해주어도 개발보드로 모터드라이버를 제어가 가능한가요?
>
> 말이.. 어렵나요?
>
>
> [개발보드 10단자 ] ======== |모 터|
> [20V이상 서플라이] ======== |드라이버|
>
>
> 뭐 이런 식입니다. -.-;;;
>
>
|
||||
| 4707 | 답변완료AM-SLCD와 AM-TLCD와의 차이점이 궁금합니다. | 오상엽 | 2010-03-15 | 1,389 |
|
강의자료 PDF파일에 있는 LCD모듈을 구입할려다 자세히보지못하고 AM-SLCD모듈을 구입하고말았습니다. AM-TLCD는 ATME128과 직접 포트끼리 연결할수있고 AM-SLCD는 UART통신을 하던데 사용함에 있어서 두개가 많은 차이점이있는것입니까?
저는 블루투스통신을 함에 있어서 만약 한쪽에서 1을 송신하였다면 다른쪽에서 1을 수신하였을때 LCD로 1을 표시한다고 가정하면 AM-SLCD로는 그것을 표현하지 못하는 것입니까???
제가 블루투스의 UART통신을 성공하였는데 AM-SLCD의 사용에 있어서 이해가 부족하여 적용을 하지 못하고있습니다. AVR STUDIO를 이용하고있어서 예제를 적용함에 어려움이 있습니다.
특히 PRINTF 함수의 이용에 있어서 문제가 많습니다.
전화로 문의드릴려고했는데 사이트로밖에 기술문의가 안된다고 하여서 이렇게 글로 남깁니다.
강좌에 PDF파일이나 예제를 참고하라는 말씀 지양해주세요...
다읽고도 해결하지 못해서 이렇게 글을 남기는 것입니다...ㅜ_ㅜ
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사드립니다.
SLCD는 시리얼 통신을 통해서 들어오는 데이터를 LCD로 뿌려 주거나, 또는 시리얼을 통해 명령어로 LCD에 글을 쓰는 방식이구요. 즉, LCD를 직접 제어하는 것은 SLCD에 붙어 있는 모듈이 해 주구요. 그 모듈과 제어해 주는 쪽과는 시리얼로 통신한다는 말입니다. 터미널 모드를 사용하면 시리얼 통신을 통해 블루투스 모듈 등에서 들어오는 데이터를 바로바로 표시할 수 있습니다.
TLCD는 10핀 헤더핀들을 통해서, 직접 I/O를 건드려서, LCD를 직접 제어해야 하는 방식이구요. 타이밍도에 따라서, 맞춰서 프로그래밍을 일일이 해줘야 합니다. 즉, 학습하기 좋습니다.
이 답변을 보고도 이해가 안되시면, 본사로 내일 전화 주셔서 Q&A에 올려서 질문했더니, 전화 하라고 했다고 말씀하시면 연결해 드릴겁니다.
감사합니다.
>강의자료 PDF파일에 있는 LCD모듈을 구입할려다 자세히보지못하고 AM-SLCD모듈을 구입하고말았습니다. AM-TLCD는 ATME128과 직접 포트끼리 연결할수있고 AM-SLCD는 UART통신을 하던데 사용함에 있어서 두개가 많은 차이점이있는것입니까?
>
>저는 블루투스통신을 함에 있어서 만약 한쪽에서 1을 송신하였다면 다른쪽에서 1을 수신하였을때 LCD로 1을 표시한다고 가정하면 AM-SLCD로는 그것을 표현하지 못하는 것입니까???
>제가 블루투스의 UART통신을 성공하였는데 AM-SLCD의 사용에 있어서 이해가 부족하여 적용을 하지 못하고있습니다. AVR STUDIO를 이용하고있어서 예제를 적용함에 어려움이 있습니다.
>
>특히 PRINTF 함수의 이용에 있어서 문제가 많습니다.
>전화로 문의드릴려고했는데 사이트로밖에 기술문의가 안된다고 하여서 이렇게 글로 남깁니다.
>
>강좌에 PDF파일이나 예제를 참고하라는 말씀 지양해주세요...
>다읽고도 해결하지 못해서 이렇게 글을 남기는 것입니다...ㅜ_ㅜ
|
||||
| 4706 | 답변완료디바이스 설정과 소스 올립니다. | 박윤신 | 2010-03-15 | 1,379 |
|
소스
#include <avr/io.h>
#include <avr/Dr_Kim KIT (SAT128-200).h>
//C:\\AvrEdit\\WinAvr\\avr\\include\\avr 폴더에 복사한다.
int main(void)
{
unsigned char in=0xff;
initialize_io(); //I/O Port 초기화 (Dr_Kim 헤더)
initialize_text_lcd(); //LCD 초기화
lcd_control_write(0xc8); //LCD창의 어드레스 선택 0x80+ADD(실제 어드레스=0x48)
lcd_char_data_write('0'); //LCD창에 "0" 표시
do{
in = key_scan_4bye4(); //스위치 입려값을 받아 온다.(Dr_Kim 헤더)
if(in != 0xff){ //switch의 입력유무 판별
if(in<10)
in += 0x30;
else
in += 0x37;
lcd_control_write(0xc8);//LCD창의 어드레스 선택 0x80+ADD(실제 어드레스=0x48)
lcd_char_data_write(in);
}
}while(1);
}
4.12 버전쓰는 다른 컴퓨터에선 잘만 되는데 왜 그러는지 모르겠네요
관리자 답변
그림에 보시면 optimization 옵션을 -O0 으로 변경하시길 바랍니다.
-Os 최적화를 설정하시면 딜레이문장 같은 아무의미 없는 함수들은 누락이 됩니다.
toolbar > help> avr studio 유저 가이드를 읽어 보시길 바랍니다.
본사는 icc/iar 컴파일러에 대한 써포트는 하지만,
winavr컴파일러에 대한 써포트를 하지 않고 있습니다. ;;
수고하세요 .
>소스
>#include <avr/io.h>
>#include <avr/Dr_Kim KIT (SAT128-200).h>
> //C:\\AvrEdit\\WinAvr\\avr\\include\\avr 폴더에 복사한다.
>int main(void)
>{
> unsigned char in=0xff;
>
> initialize_io(); //I/O Port 초기화 (Dr_Kim 헤더)
> initialize_text_lcd(); //LCD 초기화
> lcd_control_write(0xc8); //LCD창의 어드레스 선택 0x80+ADD(실제 어드레스=0x48)
> lcd_char_data_write('0'); //LCD창에 "0" 표시
> do{
> in = key_scan_4bye4(); //스위치 입려값을 받아 온다.(Dr_Kim 헤더)
> if(in != 0xff){ //switch의 입력유무 판별
> if(in<10)
> in += 0x30;
> else
> in += 0x37;
> lcd_control_write(0xc8);//LCD창의 어드레스 선택 0x80+ADD(실제 어드레스=0x48)
> lcd_char_data_write(in);
> }
> }while(1);
> }
>
>4.12 버전쓰는 다른 컴퓨터에선 잘만 되는데 왜 그러는지 모르겠네요
>
|
||||
| 4705 | 답변완료스테핑모터 제어모듈 문의 | jaehoon | 2010-03-15 | 1,360 |
|
반제품을 구입해서 납땜 완료후 커넥터 연결 전원공급해서 작동시켜보았는데...
스테핑모터제어모듈을 연결하면 디시공급기에서 쇼트가 계속 납니다.
그래서 좌우커넥터를 번갈아가면서 작동시켜보았는데 좌측을 연결시키면 쇼트발생
우측연결시에는 정상상태였습니다. 빠른 답변부탁드립니다. 사진첨부했으니 참고하세요
관리자 답변
안녕하세요
반제품은 소비자가 직접 떔질을 하는거라 저희가 말만으론 써포트해 드리기가
좀 하기 힘든 부분입니다. 정확한 내용은 직접 봐야 알 수 있습니다.
차라리 저희쪽으로 보드전부를 보내시어 테스트 및 A/S 받아 보시길 바랍니다.
http://www.newtc.co.kr/board/view.php?id=faq&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=5
위 링크는 A/S 관련된 내용입니다. 참고하세요 .
수고하세요
>반제품을 구입해서 납땜 완료후 커넥터 연결 전원공급해서 작동시켜보았는데...
>
>스테핑모터제어모듈을 연결하면 디시공급기에서 쇼트가 계속 납니다.
>
>그래서 좌우커넥터를 번갈아가면서 작동시켜보았는데 좌측을 연결시키면 쇼트발생
>
>우측연결시에는 정상상태였습니다. 빠른 답변부탁드립니다. 사진첨부했으니 참고하세요
|
||||
| 4704 | 답변완료128 AB-M128-B 이모델 F포트 | 김지설 | 2010-03-15 | 1,384 |
|
어제 글을 남긴사람인데요 답변이 잘이해가안가서그러는데
센서를 통해서 나온 아날로그신호를 F포트에 연결하면 보드자체에서 adc변환을 해준다는말씀인지
아니면 따로 adc컨버터를 거쳐 변환을 해서 F포트로 연결해야된다는 말씀이신지 잘모르겠네요(따로 칩이 필요한가)
부탁드립니당
관리자 답변
안녕하세요
칩안에 ADC 컨버터가 존재합니다. 10bit
즉,F포트가 ADC 또는 일반 IO 로 사용할수가 있습니다.
ADC값의 0~5V로 사이의 값을 입력하셔야 합니다.
아래 링크는 ADC 강좌입니다. 참고하세요
http://www.newtc.co.kr/board/data/mega128_lecture/AVR_기본강좌__12._AVR_ADC.pdf
수고하세요
>어제 글을 남긴사람인데요 답변이 잘이해가안가서그러는데
>
>센서를 통해서 나온 아날로그신호를 F포트에 연결하면 보드자체에서 adc변환을 해준다는말씀인지
>
>아니면 따로 adc컨버터를 거쳐 변환을 해서 F포트로 연결해야된다는 말씀이신지 잘모르겠네요(따로 칩이 필요한가)
>
>부탁드립니당
>
|
||||
| 4703 | 답변완료컴파일러 설정이랑 디바이스 설정 클럭 등 설정 내용 어디서 확인하는건가요?? | 박윤신 | 2010-03-15 | 1,404 |
|
studio 설치하고 디바이스 설정이랑 컴파일러 설정은 건들이지도 않고 사용했는데요
컴퓨터 B에서도 설치하고 디바이스 설정과 컴파일러 설정 역시 안 건드렸습니다.
관리자 답변
AVR Studio 툴바에
help > AVR Studio user guide 안에보시면
설정관련 방법이 있습니다.
그림처럼 어떤 옵션 내용을 찍어서 올려주시길 바랍니다.
말로만으로 잘 알수가 없습니다. 코드와 캡쳐그림을 올려주시길 바랍니다.
>studio 설치하고 디바이스 설정이랑 컴파일러 설정은 건들이지도 않고 사용했는데요
>컴퓨터 B에서도 설치하고 디바이스 설정과 컴파일러 설정 역시 안 건드렸습니다.
>
|
||||
| 4702 | 답변완료usbisp 연결이 갑자기 안되는 현상 | 강창규 | 2010-03-15 | 1,397 |
|
AB-M128-B, AD-USBISP-L 을 사용해서 테스트 하는 과정에 도움이 필요해서 글을 남깁니다.
어제까지 여러가지 기능을 잘 사용하다가
오늘 아침에 귀사이트에서 제공하는 int_timer1.c를 테스트 하기 위해 돌려 보는 과정에서
mega128이 먹통이 되었습니다.
리셋버튼을 눌러도 특별한 반응이 없습니다.
연결 상태에 문제가 있나해서 재차 확인해 봤는데 제가 봤을 때는 mega128에서 int_timer1의 기능을 계속 수행하고 있어서 먹통인 것 같은데 이런 경우는 어찌해야하는지요?
-------------------------------------------------
"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -cUSB -dATmega128
STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005.
Could not connect to STK500 V2 on USB
Done: there are error(s). Exit code: 1. Mon Mar 15 14:54:06 2010
관리자 답변
안녕하세요
에러 내역을 보니 USBISP 포트가 정상적이지 못한 것 같습니다.
in system programing 에서
stk-500/avrisp 체크
아래에 있는 comx 포트를 확인 하셨어 선택하시길 바랍니다.
program interface 가 usb 가아니고 com 포트입니다.
comx 포트 제어판 >시스템 ( 하드웨어 텝) > 장치관리자
장치관리자에 포트를 확인하시면 ISP가 어떤포트를 사용하고 있는지 나옵니다.
아래링크 usbisp 사용 메뉴얼입니다.침고 하세요
http://www.newtc.co.kr/board/data/mega128_lecture/AD_USBISP_V03_사용법.pdf
수고하세요
>
>AB-M128-B, AD-USBISP-L 을 사용해서 테스트 하는 과정에 도움이 필요해서 글을 남깁니다.
>
>
>어제까지 여러가지 기능을 잘 사용하다가
>
>오늘 아침에 귀사이트에서 제공하는 int_timer1.c를 테스트 하기 위해 돌려 보는 과정에서
>
>mega128이 먹통이 되었습니다.
>
>리셋버튼을 눌러도 특별한 반응이 없습니다.
>
>연결 상태에 문제가 있나해서 재차 확인해 봤는데 제가 봤을 때는 mega128에서 int_timer1의 기능을 계속 수행하고 있어서 먹통인 것 같은데 이런 경우는 어찌해야하는지요?
>
>-------------------------------------------------
>
>"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -cUSB -dATmega128
>STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005.
>
>Could not connect to STK500 V2 on USB
>Done: there are error(s). Exit code: 1. Mon Mar 15 14:54:06 2010
>
|
||||
| 4701 | 답변완료avr studio 헥스파일 문제 질문드립니다. | 박윤신 | 2010-03-15 | 1,383 |
|
avr stuido 4.13 버전 이상을 다 사용해봤는데
제 컴퓨터에서 생성된 헥스파일은 프로그램이 안되어 다른컴퓨터로 헥스파일을 옴겨서 프로그램해도 적용이 안되고
다른 컴퓨터에서 생성한 헥스파일을 제 컴퓨터로 옴겨서 프로그램하면 적용이됩니다.
usb-isp 사용하고 있습니다.
헥스파일 생성될때 문제가 생기는거같은데 도저히 찾을 수 가 없습니다.
지금 사용하고 있는 버전은 4.16 버전과 WinAVR-20080610 사용하고 있습니다. winavr을 최신버전으로 설치하고 사용해봐도 똑같은 증상이 나타납니다.
관리자 답변
컴퓨터 A 라는 곳에서 생성된 hex 을 다운로드 하였는데 코드를 짠 내용 대로 안돌아가고
컴퓨터 A 생성된 hex 파일을 컴퓨터 B 라는곳에 옮겨서 다운로드를 하였는데 동일한 현상이고,
컴퓨터 B 라는 곳에 컴파일러 된 hex 은 컴퓨터 A,B 라는곳에 hex를 다운로드 하여
정상적으로 돌아가는 말인가요?
위증상이라면 USBISP와는 상관이 없는 부분입니다.
winavr / avrstudio 버젼하고도 상관없는 문제입니다.
코드가 어떤 코드 인지 몰르겠으나
컴파일러 설정에 관련된 부분 같아 보입니다.
최적한 옵션이나 디바이스설정 클럭 등 설정에 내용들을 확인해 보시길 바랍니다.
>avr stuido 4.13 버전 이상을 다 사용해봤는데
>제 컴퓨터에서 생성된 헥스파일은 프로그램이 안되어 다른컴퓨터로 헥스파일을 옴겨서 프로그램해도 적용이 안되고
>다른 컴퓨터에서 생성한 헥스파일을 제 컴퓨터로 옴겨서 프로그램하면 적용이됩니다.
>usb-isp 사용하고 있습니다.
>헥스파일 생성될때 문제가 생기는거같은데 도저히 찾을 수 가 없습니다.
>지금 사용하고 있는 버전은 4.16 버전과 WinAVR-20080610 사용하고 있습니다. winavr을 최신버전으로 설치하고 사용해봐도 똑같은 증상이 나타납니다.
>
|
||||
| 4700 | 답변완료제품보낸거 테스트후 답변좀부탁드립니다. | 주성희 | 2010-03-15 | 1,408 |
|
바쁘시더라도 부탁좀드리겠습니다.
관리자 답변
안녕하세요
지금 당담하는 분이 외근중이라 확인이 잘안되네요
테스트 완료후에 개인적으로 연락이 가도록 되어 있습니다.^^
수고하세요
>바쁘시더라도 부탁좀드리겠습니다.
|
||||
| 4699 | 답변완료요밑에 rc만든다는 사람인데요 | 초보rc | 2010-03-15 | 1,406 |
|
128 AB-M128-B 모델 에 바로 모터를 연결하여 쓸순 없나요?
AM-DCx-xx 라는 시리즈의 모터 구동부가 있어야 하나요?
관리자 답변
보드에 바로 모터를 붙혀 사용할수는 없습니다.
칩의 포트당 나갈수 있는 전류량이 제한 되어 있고
역전류에 의한 칩손상이 있습니다.
포트 출력이 높게 나갈수 있게 tr 같은걸 삽입하셔도됩니다.
불가능하시다면 모터 드라이버를 사용하셔야 합니다.
본 게시판은 여러사람이 함께 사용하는 공간으로 본명으로 질문하셔야 답변이 가능합니다.
다음에는 꼭 본명으로 질문하여 주시기 바랍니다.
수고하세요
>128 AB-M128-B 모델 에 바로 모터를 연결하여 쓸순 없나요?
>
>AM-DCx-xx 라는 시리즈의 모터 구동부가 있어야 하나요?
|
||||
