Q&A
| 번호 | 제목 | 작성자 | 등록일 | 조회 |
|---|---|---|---|---|
| 3503 | 답변완료AM-3AXIS-P 센서 관련 문의 | 김도용 | 2009-08-19 | 1,303 |
|
ATmega128pro 제품과 AM-3AXIS-P을 연동하였고,
뉴티씨에서 제공하는 윈어플리케이션으로 테스트를 완료하였습니다.
궁금증 1. 뉴티씨에서 제공하는 윈도우 어플리케이션(RS-232) 소스를 받아볼수 있을까요?
메뉴얼에는 있다고 하는데...VC 소스는 안보이네요...
궁금증 2. 센싱된 가속도값 1은 값의 부호가 어떻게 되나요?
관리자 답변
안녕하세요? 고객님,
저희 NewTC 제품을 이용하여 주셔서 감사합니다.
답변하여 드릴께요.
1. 윈도우쪽 소스는 최신판은 제공되지 않고 있습니다. 예전의 소스는 아래 링크를 따라가시면 코드비전 및 ICCAVR의 예전 예제로 해 보실 수가 있습니다. 다만, 윈도 프로그램에 약간 버그가 있는 데, 주로 버퍼쪽입니다. 참고 바랍니다. 간혹 데이터가 튀고 하는 데, 그게 버퍼 문제입니다. 이 윈도우 소스는 공개해 드리고 있으니, 참고 바랍니다.
- 아래 -
http://www.newtc.co.kr/download/AM-3AXIS/Window_Example_old.zip
수고하세요.
2. 센싱된 가속도값 1이라는 것이 무슨 말씀이신지요?
아래의 식을 참고하여 계산하시면 되겠습니다.
- 아래 -
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=3축&select_arrange=headnum&desc=asc&no=121
현재의 최신 버전으로 테스트 하시려면, 아래 3을 받으시면 됩니다.
- 아래 3-
http://www.newtc.co.kr/download/AM-3AXIS/Window_Example.zip
수고하세요.
>ATmega128pro 제품과 AM-3AXIS-P을 연동하였고,
>뉴티씨에서 제공하는 윈어플리케이션으로 테스트를 완료하였습니다.
>
>궁금증 1. 뉴티씨에서 제공하는 윈도우 어플리케이션(RS-232) 소스를 받아볼수 있을까요?
> 메뉴얼에는 있다고 하는데...VC 소스는 안보이네요...
>
>궁금증 2. 센싱된 가속도값 1은 값의 부호가 어떻게 되나요?
|
||||
| 3502 | 답변완료UART 통신 | 돌콤 | 2009-08-19 | 1,460 |
|
AVR 강좌를 따라, ex_printf.c를 생성해서 compile 하면 아래와 같은 error 메세지가 나옵니다.
" !ERROR Function 'putchar' not defined. ...."
테스트 환경은, AM-128PL과 AM-128PRO 2가지 모델에서 동일한 오류 입니다.
동작하는 예제 코드를 부탁드립니다.
(필요시, header 파일 포함해서...)
관리자 답변
안녕하세요? 고객님, 저희 NewTC 제품을 이용하여 주셔서 감사합니다.
아래를 참고 바랍니다.
- 아래 -
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=21
그리고, 자료실->기존자료실에서
시리얼 그리고, UART 두가지로 쳐서 확인해 보시면, 예제소스들이 있습니다.
다음에는 본명으로 꼭 질문 바랍니다.
이곳은 공용 게시판으로 본명이 아니면 답변이 나가지 않습니다.
수고하세요.
>AVR 강좌를 따라, ex_printf.c를 생성해서 compile 하면 아래와 같은 error 메세지가 나옵니다.
>
> " !ERROR Function 'putchar' not defined. ...."
>
>테스트 환경은, AM-128PL과 AM-128PRO 2가지 모델에서 동일한 오류 입니다.
>
>동작하는 예제 코드를 부탁드립니다.
>(필요시, header 파일 포함해서...)
>
|
||||
| 3501 | 답변완료윈 7 64비트로 갈아탔는데.. isp드라이버를 깔아도 isp를 못잡요 ㅠㅠ | 누런생선 | 2009-08-19 | 1,390 |
|
xp 32비트쓸 땐 잘되건건데.... 이러네요...
어케 방도가 없을까요??
관리자 답변
안녕하세요? 고객님,
VISTA 32비트까지는 잘 설치하여 테스트 하였는데,
Vista 64비트는 아직 환경이 없어서, 테스트하지 못하였습니다.
다만, 드라이버 설치 시에 첨부해 드리는 소프트웨어를 통하여, 진행하여 보시기 바랍니다.
우선, 압축을 풀고 CP210xSetIDs.exe를 실행하여 드라이버가 잡히면,
VID에 10C4라고 잡힐 겁니다. PID에 84F3이라고 잡힐 거구요
그 중에서 PID를 체크하고, EA60으로 바꾼 뒤에 오른쪽에 있는 Program Device를 한 번 누르세요.
그런 다음에, 올려드린 최신 드라이버를 깔면 동작한다고, 칩 회사에서 설명하고 있습니다.
한 번 해보시기 바랍니다.
참고로 말씀드리면,
아직, 대부분의 개발 환경들이 비스타 64비트까지는 지원되는 것이 쉽지 않을 겁니다.
개발용은 가능하면 XP 정도로 사용하는 것이 좋습니다.
다음에는 본명으로 꼭 질문 바랍니다.
이곳은 공용 게시판으로 본명이 아니면 답변이 나가지 않습니다.
수고하세요.
>xp 32비트쓸 땐 잘되건건데.... 이러네요...
>
>어케 방도가 없을까요??
|
||||
| 3500 | 답변완료USART통신 결과 질문올립니다~! | 박민지 | 2009-08-18 | 1,447 |
|
보드 : NTC사이 ATmega128 Pro
프로그램 : 코드비전
인터넷 소스를 참고하여
LM35센서를 달고 OPAMP gain은 4로하여 이 소스를 돌려봤는데요 ~
결과 출력값이 298,330,310등 삼백대 전 후반으로 나옵니다 ~
손으로 센서를 만지면 온도가 상승하고
후후 불면 하강하는 등으로 보아 ADC가 잘 되는것으로 보여지는데요..
여기서 나오는 300등의 값을 현재온도로 변환을 해서 출력하려하는데요..
long temp; 이렇게 변수지정해서
온도 공식.. temp = 500/1024*abf;
이렇게 하면 0값이 출력되는데요...
그럼 어떻게 현재온도를 출력해야하나요 ..ㅠㅠ?
그리고 저 공식에 나온 값을 계산기로 해보면...
300일때 146이 나오는데...온도로 보기힘든 이 뜬금없는 값은...ㅠㅠ
코드비전은 float형식은 평가판에서는 지원되지 않던데요 ...
어떻게 하면 되나요 도와주세용 ㅠ.ㅠ
#include <mega128.h>
#include <delay.h>
#include <stdio.h>
//----------------------------------------------------
unsigned int abf;
//----------------------------------------------------
void uart_init()
{
UCSR0B=0x18; //RXEN0,TXEN0 enable, 송수신 허용
UCSR0C=6; //asynchronous mode, no parity, 1 stop bit, 8 bit
UBRR0H=0;
UBRR0L=103; // Baud rate=9600
}
//----------------------------------------------------
void get_adc()
{
ADMUX=0x40; //입력채널은 ADC0 즉, PF0 , 오른쪽 정렬, VREF는 AVCC
ADCSRA|=0x40; // 단일 모드로 컨버팅 시작
while((ADCSRA & 0x10)==0); //wait for the AD conversion to complete
ADCSRA|=0x10;
abf=ADCW;
}
//----------------------------------------------------
void main()
{
uart_init();
ADMUX=0x40;
ADCSRA=0x87;
while(1) { //endless loop
get_adc();
printf("%d ",abf);
delay_ms(1000);
}
}
//-------------------- end of file -------------------
관리자 답변
안녕하세요?
코드비전 평가판은 Float를 활성화하면 Evaluation 코드 제한에 걸리게 되네요.
그럼, ICCAVR을 사용하세요.
평가판에서도 float가 잘 됩니다.
다운로드 속도도 더 빠르구요.
수고하세요.
>보드 : NTC사이 ATmega128 Pro
>프로그램 : 코드비전
>
>인터넷 소스를 참고하여
>LM35센서를 달고 OPAMP gain은 4로하여 이 소스를 돌려봤는데요 ~
>결과 출력값이 298,330,310등 삼백대 전 후반으로 나옵니다 ~
>
>손으로 센서를 만지면 온도가 상승하고
>후후 불면 하강하는 등으로 보아 ADC가 잘 되는것으로 보여지는데요..
>
>여기서 나오는 300등의 값을 현재온도로 변환을 해서 출력하려하는데요..
>long temp; 이렇게 변수지정해서
>온도 공식.. temp = 500/1024*abf;
>이렇게 하면 0값이 출력되는데요...
>그럼 어떻게 현재온도를 출력해야하나요 ..ㅠㅠ?
>그리고 저 공식에 나온 값을 계산기로 해보면...
>300일때 146이 나오는데...온도로 보기힘든 이 뜬금없는 값은...ㅠㅠ
>코드비전은 float형식은 평가판에서는 지원되지 않던데요 ...
>어떻게 하면 되나요 도와주세용 ㅠ.ㅠ
>
>#include <mega128.h>
>#include <delay.h>
>#include <stdio.h>
>//----------------------------------------------------
>unsigned int abf;
>
>//----------------------------------------------------
>void uart_init()
>{
> UCSR0B=0x18; //RXEN0,TXEN0 enable, 송수신 허용
> UCSR0C=6; //asynchronous mode, no parity, 1 stop bit, 8 bit
> UBRR0H=0;
> UBRR0L=103; // Baud rate=9600
> }
>//----------------------------------------------------
>void get_adc()
>{
> ADMUX=0x40; //입력채널은 ADC0 즉, PF0 , 오른쪽 정렬, VREF는 AVCC
> ADCSRA|=0x40; // 단일 모드로 컨버팅 시작
>
> while((ADCSRA & 0x10)==0); //wait for the AD conversion to complete
> ADCSRA|=0x10;
> abf=ADCW;
>}
>//----------------------------------------------------
>void main()
>{
> uart_init();
> ADMUX=0x40;
> ADCSRA=0x87;
>
>
> while(1) { //endless loop
> get_adc();
> printf("%d ",abf);
>
> delay_ms(1000);
> }
>}
>//-------------------- end of file -------------------
|
||||
| 3499 | 답변완료interrupt부분 질문드립니다 ㅠㅠ | 김정민 | 2009-08-18 | 1,440 |
|
이 부분에서 putch쓰면 안된다고 하셨는데요...
제가 수업을 듣고 하는게 아니라 혼자서 하는거라..ㅠㅠ
어떻게 해야하는지 막막해서요
혹시 저 인터럽트 부분만 그럼 수정봐주시면 안될런지요...ㅠㅠ
interrupt [ADC_INT] void adc_isr(void) // ADC 컨버전 완료 interrupt
{
//ADCSR |= 0x10; // ADIF를 "1"로 클리어한다.
result=ADCH; // ADMUX 레지스터 셋팅에 의해 좌정렬 하게 되면 ADC는 8bit의 분해능을 가지게 되고,
// ADCH에 그 결과 값이 저장 되므로, ADCH를 읽어 온다.
if(ADMUX==0x20)
{
if(timer_flag==10) // 값을 세번 읽어서 평균을 내에서 전송한다.
temp[0]=result;
else if(timer_flag==30)
temp[1]=result;
else if(timer_flag==50)
{
temp[2]=result;
result_temp = (temp[0]+temp[1]+temp[2])/3;
//result |= 0x80;
putch(result_temp);
}
}
}
관리자 답변
아래에 답변 단 것을 참고하세요.
수고하세요.
>이 부분에서 putch쓰면 안된다고 하셨는데요...
>제가 수업을 듣고 하는게 아니라 혼자서 하는거라..ㅠㅠ
>어떻게 해야하는지 막막해서요
>혹시 저 인터럽트 부분만 그럼 수정봐주시면 안될런지요...ㅠㅠ
>
>
>
>interrupt [ADC_INT] void adc_isr(void) // ADC 컨버전 완료 interrupt
>{
> //ADCSR |= 0x10; // ADIF를 "1"로 클리어한다.
> result=ADCH; // ADMUX 레지스터 셋팅에 의해 좌정렬 하게 되면 ADC는 8bit의 분해능을 가지게 되고,
> // ADCH에 그 결과 값이 저장 되므로, ADCH를 읽어 온다.
>
> if(ADMUX==0x20)
> {
>
> if(timer_flag==10) // 값을 세번 읽어서 평균을 내에서 전송한다.
> temp[0]=result;
> else if(timer_flag==30)
> temp[1]=result;
> else if(timer_flag==50)
> {
> temp[2]=result;
> result_temp = (temp[0]+temp[1]+temp[2])/3;
>
> //result |= 0x80;
> putch(result_temp);
> }
> }
>}
>
|
||||
| 3498 | 답변완료올려주신 가속도 예제 질문입니다 ~!! | 김정민 | 2009-08-18 | 1,461 |
|
예제 소스를 분석하고 있는데요~~
ADC변환하는 부분이요..
아래 소스는 adc변환 데이터를 받는 소스 아닌가요 ~?
그리고 ch0 += buf[0]+buf[1]*256; 에서요
왜 ADCH에 256을 곱해주는 것인가요 ~?
void get_adc_data(void)
{
unsigned int i;
ch0=ch2=ch4=0;
for(i=0;i<16;i++){
ADCSRA &= 0x7f;
ADMUX = 0x40;
ADCSRA |= 0xC0;
while((ADCSRA & 0x10) != 0x10);
buf[0] = ADCL;
buf[1] = ADCH;
ch0 += buf[0]+buf[1]*256;
ADCSRA &= 0x7f;
ADMUX = 0x42;
ADCSRA |= 0xC0;
while((ADCSRA & 0x10) != 0x10);
buf[2] = ADCL;
buf[3] = ADCH;
ch2 += buf[2]+buf[3]*256;
ADCSRA &= 0x7f;
ADMUX = 0x44;
ADCSRA |= 0xC0;
while((ADCSRA & 0x10) != 0x10);
buf[4] = ADCL;
buf[5] = ADCH;
ch4 += buf[4]+buf[5]*256;
}
ch0 = ch0>>4;
ch0 &=0xfffe;
ch2 = ch2>>4;
ch2 &=0xfffe;
ch4 = ch4>>4;
ch4 &=0xfffe;
data.x = ch0;
data.y = ch2;
data.z = ch4;
data.reserve = 0x0000;
}
관리자 답변
안녕하세요?
3축 가속도 센서용 Codevision용 소스를 다시 짯습니다.
분석중이신 소스는 옛날 윈도 프로그램용 소스라서,
현재 자료실에 올려 놓은 윈도프로그램용 소스를 다시 올립니다.
최신 버전인 이 소스를 분석하여 사용하는 것이 좋겠습니다.
그리고, 256을 곱했던 것은 8비트를 상위로 시프트 시키기 위함이었습니다.<<8과 같은 거죠.
최신 것으로 다시 하세요. 일부러 다시 짯습니다. 테스트 한 것이니 그냥 쓰시면 됩니다.
ADC 변환하여 출력하는 소스인데, 최신 버전이 더 좋을 것 같아서, 이것을 올려드립니다.
수고하세요.
>예제 소스를 분석하고 있는데요~~
>ADC변환하는 부분이요..
>아래 소스는 adc변환 데이터를 받는 소스 아닌가요 ~?
>그리고 ch0 += buf[0]+buf[1]*256; 에서요
>왜 ADCH에 256을 곱해주는 것인가요 ~?
>
>
>void get_adc_data(void)
>{
> unsigned int i;
> ch0=ch2=ch4=0;
>
> for(i=0;i<16;i++){
> ADCSRA &= 0x7f;
> ADMUX = 0x40;
> ADCSRA |= 0xC0;
>
> while((ADCSRA & 0x10) != 0x10);
> buf[0] = ADCL;
> buf[1] = ADCH;
> ch0 += buf[0]+buf[1]*256;
>
> ADCSRA &= 0x7f;
> ADMUX = 0x42;
> ADCSRA |= 0xC0;
>
> while((ADCSRA & 0x10) != 0x10);
> buf[2] = ADCL;
> buf[3] = ADCH;
> ch2 += buf[2]+buf[3]*256;
>
> ADCSRA &= 0x7f;
> ADMUX = 0x44;
> ADCSRA |= 0xC0;
>
> while((ADCSRA & 0x10) != 0x10);
> buf[4] = ADCL;
> buf[5] = ADCH;
> ch4 += buf[4]+buf[5]*256;
> }
>
> ch0 = ch0>>4;
> ch0 &=0xfffe;
> ch2 = ch2>>4;
> ch2 &=0xfffe;
> ch4 = ch4>>4;
> ch4 &=0xfffe;
>
> data.x = ch0;
> data.y = ch2;
> data.z = ch4;
> data.reserve = 0x0000;
>
>}
>
|
||||
| 3497 | 답변완료USART통신 질문드립니다...도와주세용 ㅠ.ㅠ | 김정민 | 2009-08-18 | 1,367 |
|
코드비전을 사용하고있구요.. 거기 터미널 창으로 출력해서 보고있습니다.
그런데 출력값이 "255, 60"이 계속 나오는데.....
온도가 변하는 것도 아니고..
어디에 문제가 있는 것인가요~?ㅜㅜ도와주세용
#include <mega128.h>
#include <delay.h>
#include <stdio.h>
typedef unsigned char byte;
unsigned char timer_flag=0;
unsigned int result=0x00,temp[3]={0x00};
unsigned int result_temp;
void Timer0_interrupt()
{
TCCR0=0x07; // Normal mode , 1024prescaler
TCNT0=0x00; // 카운터에 들어갈 값을 0으로 초기화
TIMSK=0x01; //Timer0 overflow interrupt enable
TIFR=0x00; //overflow flag 클리어
#asm("sei")
}
void ADC_Int()
{
ADCSR=0x8F; // (1000 1111) ADC enable, 128 분주
}
void Uart_Int()
{
UCSR0B = 0x18; // (0000 1000) USART0 송신부 enable
UCSR0C = 0x86; // (0000 0110) 전송 문자의 데이터 비트수를 8bit, 비동기 방식, No parity bit, 1 stop bit
UBRR0L = 103; // 16MHz에서 보드레이트를 9600으로 설정
}
void putch(unsigned char data)
{
while(!(UCSR0A & 0x20)); // 송신 버퍼에 새로운 송신 데이터를 받을 준비가 되면
UDR0 = data;
}
interrupt [TIM0_OVF] void timer0_ovf_int(void) //Timer0 overflow interrupt
{
TCNT0=0x00; // 카운터에 들어갈 값을 0으로 초기화
timer_flag++;
if(timer_flag==10||timer_flag==30||timer_flag==50)
{
ADMUX=0x20; //(ADC 채널0번 사용,온도센서)
ADCSR |= 0x40; //ADC start conversion
}
else if(timer_flag==61) //1초가 되면 타이머 플레그를 초기화 한다.
{
timer_flag=0;
}
else{
SREG |= 0x80; //전체 인터럽트 이네이블.
}
}
interrupt [ADC_INT] void adc_isr(void) // ADC 컨버전 완료 interrupt
{
//ADCSR |= 0x10; // ADIF를 "1"로 클리어한다.
result=ADCH; // ADMUX 레지스터 셋팅에 의해 좌정렬 하게 되면 ADC는 8bit의 분해능을 가지게 되고,
// ADCH에 그 결과 값이 저장 되므로, ADCH를 읽어 온다.
if(ADMUX==0x20)
{
if(timer_flag==10) // 값을 세번 읽어서 평균을 내에서 전송한다.
temp[0]=result;
else if(timer_flag==30)
temp[1]=result;
else if(timer_flag==50)
{
temp[2]=result;
result_temp = (temp[0]+temp[1]+temp[2])/3;
//result |= 0x80;
putch(result_temp);
}
}
}
void main( void )
{
int temperature;
Uart_Int();
Timer0_interrupt();
ADC_Int();
SREG |= 0x80; //전체 인터럽트 이네이블.
while(1){
temperature = result_temp*500/1024;
printf("%d\\t",result_temp);
printf("%d\\t",temperature);
delay_ms(1000);
}
}
관리자 답변
안녕하세요? 고객님,
저희 NewTC를 이용하여 주셔서 감사합니다.
아까 답변 드린 사항을 참고 바랍니다.
본사에서 고객님에 맞게 소스를 짜드리진 않습니다.
아래에 3축 가속도 센서를 이용하는 관련된 128용 코드비전 소스가 있으니, 참조 바랍니다.
같은 ADC를 사용하니, 약간만 수정하면 쓸 수 있겠네요.
- 아래 -
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=코드비전&select_arrange=headnum&desc=asc&no=254
그리고, 한 가지 인터럽트 구문내에서 putch와 같은 함수를 사용하면 안됩니다.
인터럽트 구문은 빨리 하고 빠져나가야 하니까요.
타이밍이 너무 길어지면, 빠져나가지 못하고, 무한루프 돌게 되거나, 시스템 리셋 될 수 있습니다.
수고하세요.
>코드비전을 사용하고있구요.. 거기 터미널 창으로 출력해서 보고있습니다.
>그런데 출력값이 "255, 60"이 계속 나오는데.....
>온도가 변하는 것도 아니고..
>어디에 문제가 있는 것인가요~?ㅜㅜ도와주세용
>
>
>#include <mega128.h>
>#include <delay.h>
>#include <stdio.h>
>
>
>
>typedef unsigned char byte;
>unsigned char timer_flag=0;
>unsigned int result=0x00,temp[3]={0x00};
>unsigned int result_temp;
>
>void Timer0_interrupt()
>{
> TCCR0=0x07; // Normal mode , 1024prescaler
> TCNT0=0x00; // 카운터에 들어갈 값을 0으로 초기화
> TIMSK=0x01; //Timer0 overflow interrupt enable
> TIFR=0x00; //overflow flag 클리어
>
> #asm("sei")
>}
>
>void ADC_Int()
>{
> ADCSR=0x8F; // (1000 1111) ADC enable, 128 분주
>}
>
>void Uart_Int()
>{
> UCSR0B = 0x18; // (0000 1000) USART0 송신부 enable
> UCSR0C = 0x86; // (0000 0110) 전송 문자의 데이터 비트수를 8bit, 비동기 방식, No parity bit, 1 stop bit
> UBRR0L = 103; // 16MHz에서 보드레이트를 9600으로 설정
>}
>
>void putch(unsigned char data)
>{
> while(!(UCSR0A & 0x20)); // 송신 버퍼에 새로운 송신 데이터를 받을 준비가 되면
> UDR0 = data;
>}
>
>interrupt [TIM0_OVF] void timer0_ovf_int(void) //Timer0 overflow interrupt
>{
> TCNT0=0x00; // 카운터에 들어갈 값을 0으로 초기화
> timer_flag++;
> if(timer_flag==10||timer_flag==30||timer_flag==50)
> {
> ADMUX=0x20; //(ADC 채널0번 사용,온도센서)
> ADCSR |= 0x40; //ADC start conversion
> }
> else if(timer_flag==61) //1초가 되면 타이머 플레그를 초기화 한다.
> {
> timer_flag=0;
> }
> else{
> SREG |= 0x80; //전체 인터럽트 이네이블.
> }
>}
>
>interrupt [ADC_INT] void adc_isr(void) // ADC 컨버전 완료 interrupt
>{
> //ADCSR |= 0x10; // ADIF를 "1"로 클리어한다.
> result=ADCH; // ADMUX 레지스터 셋팅에 의해 좌정렬 하게 되면 ADC는 8bit의 분해능을 가지게 되고,
> // ADCH에 그 결과 값이 저장 되므로, ADCH를 읽어 온다.
>
> if(ADMUX==0x20)
> {
>
> if(timer_flag==10) // 값을 세번 읽어서 평균을 내에서 전송한다.
> temp[0]=result;
> else if(timer_flag==30)
> temp[1]=result;
> else if(timer_flag==50)
> {
> temp[2]=result;
> result_temp = (temp[0]+temp[1]+temp[2])/3;
>
> //result |= 0x80;
> putch(result_temp);
> }
> }
>}
>
>
>
>
>void main( void )
>{
> int temperature;
>
> Uart_Int();
> Timer0_interrupt();
> ADC_Int();
> SREG |= 0x80; //전체 인터럽트 이네이블.
>
> while(1){
> temperature = result_temp*500/1024;
>
> printf("%d\\t",result_temp);
> printf("%d\\t",temperature);
> delay_ms(1000);
> }
>}
>
>
>
>
|
||||
| 3496 | 답변완료ATMega128 개발보드(AB-M128-B) 에 관련된 질문입니다. | 류명한 | 2009-08-18 | 1,401 |
|
공급 전원은 12V 에, 전류는 어느 정도 범위로 연결해야 하는지 알고 싶습니다.
그리고 5v, 12v 출력에서는 어느 정도의 전류가 나오는지 알려주세요~
관리자 답변
안녕하세요? 고객님,
저희 NewTC 제품을 이용하여 주셔서 감사합니다.
전원 공급은 12V 쪽이나 아답타 입력쪽으로 주심 되구요.
사용하시는 확장 보드나 회로에 따라서 사용되는 전류량이 다를 것이라서,
뭐라고 말씀드려야 할 지 모르겠습니다.
사용하시는 전류량만큼 쓰시면 됩니다.
그 보드만 쓰실 때는 12V, 300mA 정도면 넉넉하게 잘 돌아깁니다.
그 정도로 LED 구동이나 스위치 구동 정도는 문제 없습니다.
하지만, 모터 같은 것을 돌리시게 되면, 모터 구동용 전류도 함께 넉넉하게 넣어 주셔야 겠지요.
아답타 12V 입력 전류가 충분할 경우 5V 출력으로는 최대 800mA까지 쓸 수 있는 데, 기본적으로 AVR 도 어느정도 사용하게 되기 때문에 커넥터 바깥에 연결하는 것은 500mA까지는 사용이 가능합니다.
감사합니다.
>공급 전원은 12V 에, 전류는 어느 정도 범위로 연결해야 하는지 알고 싶습니다.
>
>그리고 5v, 12v 출력에서는 어느 정도의 전류가 나오는지 알려주세요~
|
||||
| 3495 | 답변완료ADC관련 질문드립니다 | 김정민 | 2009-08-18 | 1,288 |
|
안녕하세요 전자공학과에 재학중인 학생입니다 ~!
일단 코드비전을 사용하고있구요~
ATMega128을 사용해서 돌려봤는데..
ADC에서 나온 10비트를 8비트로 저장되게끔 소스도 수정했거든요...
LM35온도센서가 달린 128에 USART통신을해서
코드비전에 있는 터미널 창과 하이퍼터미널 2개에 다 띄워보았는데요..
온도면 온도값이 조금씩 변하고 그래야하는데..
일정하게 한 값만 찍히네요..
그래서 가변저항을 달고 해보려고 하느데요..
저번에 ADC해서 USART통신하는 소스 IVVACR?용으로 올려주셨는데요...
혹시 코드비전용 소스는 없으신지요 ㅜㅜ...
가변저항을 돌려보면서 출력되는 값을 확인해보려구요
예제 소스 있으면 부탁드립니다 ㅠ.ㅠ~!!!
아참! 가변저항은 ADC0에는 온도센서가 달려있으니까
ADC1번 핀에 연결하면 되는거죠~?
가운데 있는 칩은 ADC1번에 연결하고..
VCC GND연결시에는 ..방향에 무관하게 한쪽한쪽씩 연결하면 되나용 ㅜㅜ?
관리자 답변
안녕하세요? 고객님,
저희 NewTC를 이용하여 주셔서 감사합니다.
아래에 3축 가속도 센서를 이용하는 관련된 128용 코드비전 소스가 있으니, 참조 바랍니다.
같은 ADC를 사용하니, 약간만 수정하면 쓸 수 있겠네요.
- 아래 -
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=코드비전&select_arrange=headnum&desc=asc&no=254
다른 질문은 이해가 잘 안갑니다. 자세히 질문해 주세요.
수고하세요.
>안녕하세요 전자공학과에 재학중인 학생입니다 ~!
>
>일단 코드비전을 사용하고있구요~
>
>ATMega128을 사용해서 돌려봤는데..
>ADC에서 나온 10비트를 8비트로 저장되게끔 소스도 수정했거든요...
>
>LM35온도센서가 달린 128에 USART통신을해서
>코드비전에 있는 터미널 창과 하이퍼터미널 2개에 다 띄워보았는데요..
>온도면 온도값이 조금씩 변하고 그래야하는데..
>일정하게 한 값만 찍히네요..
>
>그래서 가변저항을 달고 해보려고 하느데요..
>
>저번에 ADC해서 USART통신하는 소스 IVVACR?용으로 올려주셨는데요...
>혹시 코드비전용 소스는 없으신지요 ㅜㅜ...
>가변저항을 돌려보면서 출력되는 값을 확인해보려구요
>예제 소스 있으면 부탁드립니다 ㅠ.ㅠ~!!!
>
>아참! 가변저항은 ADC0에는 온도센서가 달려있으니까
>ADC1번 핀에 연결하면 되는거죠~?
>가운데 있는 칩은 ADC1번에 연결하고..
>VCC GND연결시에는 ..방향에 무관하게 한쪽한쪽씩 연결하면 되나용 ㅜㅜ?
>
|
||||
| 3494 | 답변완료AD-USBISP V03에 대한 질문입니다. | 이종민 | 2009-08-18 | 1,354 |
|
안녕하세요
위제품을 구매해서 사용하려고 하는데
드라이버 설치까지는 마쳤습니다.
그런데 포니프로그 2000에서는 어떻게 사용하는지 알고싶습니다.
매뉴얼에 코드비전, 스튜디오등은 나와있는데
포니프로그에 대한 설명이 없습니다.
알려주시면 감사하겠습니다.
관리자 답변
안녕하세요? 고객님,
저희 NewTC 제품을 이용하여 주셔서 감사합니다.
포니프로그는 USBISP의 프로토콜인 STK500이 지원되지 않는 프로그램입니다.
따라서, 사용이 가능하지 않습니다. 그래서, 설명이 없는 것입니다.
프로토콜 STK500이 사용 가능한 프로그램을 사용하세요.
수고하세요.
>안녕하세요
>
>위제품을 구매해서 사용하려고 하는데
>
>드라이버 설치까지는 마쳤습니다.
>
>그런데 포니프로그 2000에서는 어떻게 사용하는지 알고싶습니다.
>
>매뉴얼에 코드비전, 스튜디오등은 나와있는데
>
>포니프로그에 대한 설명이 없습니다.
>
>알려주시면 감사하겠습니다.
|
||||
| 3493 | 답변완료릴레이 전원 공급 보드 사용중에 문제가일어났습니다.;;; | 김정현 | 2009-08-17 | 1,397 |
|
보시면 하드웨어적을 연결을 하기위해
점프선을 잘라 전원공급에 연결을 하고 채널1포트에연결을 하였습니다.
그리고 내부 전원공급을 하기위해 지그비사용하는 전원을 연결하였습니다.
그리고 순서는 내부 전원 공급을 하였습니다. 그후 보드에 빨간 LED가 켜졌습니다.
그리고 외부 전원 공급을 하였습니다. 연결하자마자 퍽~하는 소리와 보드가 타있었습니다.ㅜㅜ
어떤게 문제가 되었는지? AS는 가능한지요?
외부전원은 두개의 플러그가 꼽히는 점프선입니다.
(동양 2구 멀티 이동형 콘센트 둥근형 측면접지극부 2극 10A 250v)
내부에 세개의 선(하늘색 선, 갈색 선, 두개의 색 초록,노랑 을 가진선)중에
+극을 갈색선 , -극을 하늘색선으로 연결하였습니다.
내부전원은 Fuhua사 model : UE10W-060050SPC 이고요
(Input:100-240v~ 50/60Hz 150mA
Output:6.0v- 500mA)입니다.
문제점을 찾아주시면 감사하겠네요. 참고로 내부전원에 문제가 없다면 이걸로 계속 사용가능한지도요~ 그리고 외부 전워의 문제였다면 외부 전원 연결할수있는 콘센트를 추천바람니다.(+,-)색깔 알수있는걸로;;;;
릴레이 보드 구입하여 처음으로 연결 한번 해보았는데 보드가 탔습니다. 필히..AS가능 바랍니다;;;
관리자 답변
안녕하세요? 고객님,
저희 NEWTC 제품을 이용하여 주셔서 감사합니다.
A/S가 가능할 것 같습니다.
테스트를 위하여 본사로 방문하면 좋겠구요. 어렵다면 택배도 가능하지만, 택배는 고객님 부담입니다.
그리고, 내부전원이라고 쓰신 릴레이 전원공급보드 구동 전원은 9~12V로 구동하셔야 합니다.
또한, 외부 전원이라고 말씀하신 부분을 메뉴얼의 3.1.3을 잘 읽어보고 연결하기 바랍니다.
물론, 전원 연결하지 않은 상태에서 연결하고서 쇼트 안되었는 지 확인하고 맨 마지막에
전원을 넣어야 합니다. 220V AC 이므로, 위험할 수 있기 때문에, 매우 조심해야 합니다.
메뉴얼의 사용법을 잘못 알고 있거나, 읽지 않은 것 같습니다. 자세히 읽고 진행하여야 합니다.
두개의 전원커넥터가 연결되는 컨센트에는 몇 볼트를 인가하고자 하는 건가요?
어떻게 하려는 것인지 이해가 잘 안갑니다.
감사합니다.
>보시면 하드웨어적을 연결을 하기위해
>점프선을 잘라 전원공급에 연결을 하고 채널1포트에연결을 하였습니다.
>그리고 내부 전원공급을 하기위해 지그비사용하는 전원을 연결하였습니다.
>그리고 순서는 내부 전원 공급을 하였습니다. 그후 보드에 빨간 LED가 켜졌습니다.
>그리고 외부 전원 공급을 하였습니다. 연결하자마자 퍽~하는 소리와 보드가 타있었습니다.ㅜㅜ
>어떤게 문제가 되었는지? AS는 가능한지요?
>
>외부전원은 두개의 플러그가 꼽히는 점프선입니다.
>(동양 2구 멀티 이동형 콘센트 둥근형 측면접지극부 2극 10A 250v)
>내부에 세개의 선(하늘색 선, 갈색 선, 두개의 색 초록,노랑 을 가진선)중에
>+극을 갈색선 , -극을 하늘색선으로 연결하였습니다.
>
>내부전원은 Fuhua사 model : UE10W-060050SPC 이고요
>(Input:100-240v~ 50/60Hz 150mA
>Output:6.0v- 500mA)입니다.
>
>문제점을 찾아주시면 감사하겠네요. 참고로 내부전원에 문제가 없다면 이걸로 계속 사용가능한지도요~ 그리고 외부 전워의 문제였다면 외부 전원 연결할수있는 콘센트를 추천바람니다.(+,-)색깔 알수있는걸로;;;;
>릴레이 보드 구입하여 처음으로 연결 한번 해보았는데 보드가 탔습니다. 필히..AS가능 바랍니다;;;
>
>
|
||||
| 3492 | 답변완료AB-M128-B 는 DL16과 기구도가 같습니다. | N.T.C | 2009-08-17 | 1,267 |
|
어떤 고객님이 올려 달라고 하여 올려드립니다.
아래의 AB-M128-B 는 DL16과 기구도가 같습니다.
참고하세요.
- 아래 -
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=16&select_arrange=headnum&desc=asc&no=61
수고하세요.
관리자 답변
안녕하세요, 뉴티씨입니다. 문의 내용 확인하였습니다. 추가 문의사항은 [email protected] 또는 02-704-4774로 연락 주시기 바랍니다. 감사합니다.
|
||||
| 3491 | 답변완료AM-RFMOD 안테나 연결문의 | 김민혁 | 2009-08-17 | 1,402 |
|
아래와 같은 예전 글을 봤습니다.
보드상에 C8번 부품은 연결하지 않아도 되는건가요??
아래 글처럼 커넥터 보드에 납땜하고 안테나 연결하면 되는겁니까?
-------------------------------------------------------------
안녕하세요...고객님....
rfmod는 유선에서 무선으로의 하드적인 변환만 있을분, 소프트웨어적인 어떠한 변경도 없습니다. 그러니 유선으로 시리얼 통신이 가능하다면 무선은 그냥 단지 연결로만 통신이 가능합니다. 안테나의 경우 단지 통신거리가 길어질뿐 소프트웨어적으로나 하드웨어적으로 어떠한 설정도 필요없습니다.
하시다가 의문정 있으면 언제라도 질문 주세요..
감사합니다.
>안녕하세요 ㅎ
>
>AM-RFMOD를 한쌍구입하여 열심히 요리조리 뜯어보고잇습니다.
>
>이 게시판을 검색하다보니 수신범위가 안테나없이는 30~40미터이고 안테나가 있을경우 약 100미터까지 가능하다는 답변을 보았습니다.
>
>마침 수신범위가 좀더 필요한상황이라 안테나를 구입하여 장착해보려고하는데요
>
>제가 이쪽에는 문외한이라 답변에 써져잇는것을 보고 유추해서 제품을 골라봤는데요
>
>* 안테나 ( 2.4GHz안테나(5dBi) DANT-200SP )
>http://www.devicemart.co.kr/mart7/mall.php?cat=004017007&query=view&no=18508
>
>* SMA 커넥터 ( RF커넥터 SMA(F)ST )
>http://www.devicemart.co.kr/mart7/mall.php?cat=013020015&query=view&no=19418
>
>이 두가지를 구입한뒤 SMA커넥터를 RF-MOD에 납땜해서 고정시키고 위제품의 안테나를 꼽으면
>
>별도의 설정을 하지않고도 바로 동작하게되는건가요??
관리자 답변
안녕하세요? 고객님,
저희 NewTC를 이용하여 주셔서 감사합니다.
C5번에 있는 1pF를 떼어내서 C8번에 달으셔야 합니다.
그걸 달고서 SMA 타입 커넥터를 땜하여 안테나를 연결하시면 됩니다.
감사합니다.
>아래와 같은 예전 글을 봤습니다.
>
>보드상에 C8번 부품은 연결하지 않아도 되는건가요??
>
>아래 글처럼 커넥터 보드에 납땜하고 안테나 연결하면 되는겁니까?
>
>-------------------------------------------------------------
>
>안녕하세요...고객님....
>
>rfmod는 유선에서 무선으로의 하드적인 변환만 있을분, 소프트웨어적인 어떠한 변경도 없습니다. 그러니 유선으로 시리얼 통신이 가능하다면 무선은 그냥 단지 연결로만 통신이 가능합니다. 안테나의 경우 단지 통신거리가 길어질뿐 소프트웨어적으로나 하드웨어적으로 어떠한 설정도 필요없습니다.
>하시다가 의문정 있으면 언제라도 질문 주세요..
>
>감사합니다.
>
>
>
>>안녕하세요 ㅎ
>>
>>AM-RFMOD를 한쌍구입하여 열심히 요리조리 뜯어보고잇습니다.
>>
>>이 게시판을 검색하다보니 수신범위가 안테나없이는 30~40미터이고 안테나가 있을경우 약 100미터까지 가능하다는 답변을 보았습니다.
>>
>>마침 수신범위가 좀더 필요한상황이라 안테나를 구입하여 장착해보려고하는데요
>>
>>제가 이쪽에는 문외한이라 답변에 써져잇는것을 보고 유추해서 제품을 골라봤는데요
>>
>>* 안테나 ( 2.4GHz안테나(5dBi) DANT-200SP )
>>http://www.devicemart.co.kr/mart7/mall.php?cat=004017007&query=view&no=18508
>>
>>* SMA 커넥터 ( RF커넥터 SMA(F)ST )
>>http://www.devicemart.co.kr/mart7/mall.php?cat=013020015&query=view&no=19418
>>
>>이 두가지를 구입한뒤 SMA커넥터를 RF-MOD에 납땜해서 고정시키고 위제품의 안테나를 꼽으면
>>
>>별도의 설정을 하지않고도 바로 동작하게되는건가요??
>
|
||||
| 3490 | 답변완료ATmega128을 사용해서 공부하는 학생입니다 | 학생 | 2009-08-17 | 1,212 |
|
여름방학을 알차게 보내고자
학과 친구들을 모아 NTC의 ATmega128을 통해 프로젝트를 하나 하는 도중에
해결되지 않는 부분이 있어서 이렇게 글을 씁니다 ^^
일단 저희 프로젝트를 설명드리면
LM35라는 온도센스를 사용해서 측정한 온도를 ADC를 통해 변환하여
그 정보를 ATmega128(1)에 연결되어있는 FB155BC블루투스(1)를 사용하여
또다른 블루투스(2)에 받아서 그 블루투스와 연결되어있는 ATmega128(1)에 받아
USART통신을 사용하여 컴퓨터 모니터에 출력하려고 합니다
그런데
일단 블루투스를 만지기전에
첫번째 ATmega128에서 하이퍼터미널을 사용해 USART통신을 할 경우에
HELLO같은 문자는 잘 출력이 되는데
온도는 ADC변환상 문제가 있어서 그런지...
아예 뜨질 않거든요..
몇일째 고민하다가 이렇게 글을 남깁니다..ㅠㅠ
p.s - 오늘 용산갈일이 있는데 ..혹시 방문해서 여쭤봐도 될런지요..?
관리자 답변
안녕하세요? 고객님,
질문할 때는 반드시 본명을 원칙으로 하고 있습니다.
이 곳은 여러사람이 사용하는 공간으로 본명이 아닌 질문은 삭제될 수 있음을 말씀드립니다.
- ADC 소스 -
http://www.newtc.co.kr/board/view.php?id=pds&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=ADC&select_arrange=headnum&desc=asc&no=212
참고하세요.
>여름방학을 알차게 보내고자
>학과 친구들을 모아 NTC의 ATmega128을 통해 프로젝트를 하나 하는 도중에
>해결되지 않는 부분이 있어서 이렇게 글을 씁니다 ^^
>
>일단 저희 프로젝트를 설명드리면
>
>LM35라는 온도센스를 사용해서 측정한 온도를 ADC를 통해 변환하여
>그 정보를 ATmega128(1)에 연결되어있는 FB155BC블루투스(1)를 사용하여
>또다른 블루투스(2)에 받아서 그 블루투스와 연결되어있는 ATmega128(1)에 받아
>USART통신을 사용하여 컴퓨터 모니터에 출력하려고 합니다
>
>그런데
>일단 블루투스를 만지기전에
>첫번째 ATmega128에서 하이퍼터미널을 사용해 USART통신을 할 경우에
>HELLO같은 문자는 잘 출력이 되는데
>온도는 ADC변환상 문제가 있어서 그런지...
>아예 뜨질 않거든요..
>몇일째 고민하다가 이렇게 글을 남깁니다..ㅠㅠ
>
>
>p.s - 오늘 용산갈일이 있는데 ..혹시 방문해서 여쭤봐도 될런지요..?
>
|
||||
| 3489 | 답변완료스테핑 모터에 대한 문의 사항입니다. | 정상현 | 2009-08-17 | 1,188 |
|
안녕하세요.
스테핑 모터를 이용하여 간단한 정 역 회전과
속도 제어, 거리 제어 하고 싶습니다
쓰고자 하는 스테핑 모터 모델은 SE-SM2이고
아직 나머지는 미정입니다.
들어가는 제품이 궁금합니다.
AVR 128을 이용하여 제어하고 싶은데
혹시 오픈 소스가 있나요?
관리자 답변
안녕하세요?
저희 NewTC 제품을 이용하여 주셔서 감사합니다.
- 기본소스 -
http://www.newtc.co.kr/board/zboard.php?id=pds&select_arrange=headnum&desc=asc&page_num=15&selected=&exec=&sn=off&ss=on&sc=off&category=&keyword=CS2P
- AM-CS2P를 이용한 스테핑 모터 제어(속도, 방향) ICCAVR V7사용 -
http://cafe.naver.com/newtc/318
수고하세요.
>안녕하세요.
>
>스테핑 모터를 이용하여 간단한 정 역 회전과
>
>속도 제어, 거리 제어 하고 싶습니다
>
>쓰고자 하는 스테핑 모터 모델은 SE-SM2이고
>
>아직 나머지는 미정입니다.
>
>들어가는 제품이 궁금합니다.
>
>AVR 128을 이용하여 제어하고 싶은데
>
>혹시 오픈 소스가 있나요?
>
|
||||
