로그인 | 회원가입 | 주문 조회
총 10,743개의 질문이 있습니다.
번호 제목 작성자 등록일 조회
768 답변완료reset 관련 질문입니다. 이은환 2008-02-26 1,907
AVR MEGA 128 개발보드를 사용하고 있는데 reset 버튼을 누르는 것 말고 ICCAVR을 이용하여 소프트웨어적으로 reset을 할려면 어떻게 해야 하는지 궁금합니다.
관리자 답변 N.T.C · 2008-02-26
안녕하세요? 와치독 타미어를 잘 활용하시면 가능합니다. 감사합니다.
767 답변완료lcd 관련 질문 한가지만 더 할께요~^^; 김민회 2008-02-25 2,181
void lcd_disp(char x, char y) { LCD_RS(OFF); LCD_RW(OFF); if(y == 1) y++; else if(y == 2) y--; if(y <= 1) { PORTC = y*20+x+0x80; } else { y = 2; PORTC = y*20+x+0xC0; } E_Pulse(); } void write_lcd(char x, char y, char *str) { lcd_disp(x,y); while(*str) write_char(*str++); } while(1) { write_lcd(0,0,"KIMMINHUE"); delay(1000); clrscr(); write_lcd(0,3,"KJO"); delay(1000); clrscr(); } 예제 소스 인데요~ 제 생각에 여기서 보면 y값에 따라 lcd에 출력 할때 1번째 줄에 출력 할 것인지 두 번째 줄에 출력 할 것인지를 결정되는 것으로 생각 됩니다. 근데 y값에 1,2,3을 줘봤는데 lcd 두 번째줄에 출력이 안되는데 무엇 때문인가요~?
관리자 답변 N.T.C · 2008-02-25
안녕하세요? LCD 종류를 알려 주시구요. 소스 전체를 올려봐 주시기 바랍니다. 감사합니다.
766 답변완료강좌에 내용들이 대부분 다운로드는 물론 열리지가 않네요..ㅠㅠ 김동희 2008-02-25 1,904
어떻게 된건지 강좌에 내용들을 좀 보려고 하는데 다운로드라던가 실행이 되지 않네요.. 회원이 아니라서 그런가 싶어 회원가입하고 로그인 상태인데도 안되네요.. 제 컴퓨터가 이상한건 아닌것 같은데 말입니다..ㅠㅠ
관리자 답변 N.T.C · 2008-02-25
안녕하세요? 고객님, 다운로드는 회원하고는 관계가 없구요. 아무나 다운로드 가능합니다. 다운로드가 간혹 안된다는 분이 계시는 데, 웹싸이트 게시판이 zero 보드로 되어 있는 데, 간혹 공유기 설정이나 보안설정이 잘못되어서, 그런 일이 발생한 것 같습니다. 고객님과 같은 분들을 위해서 조만간에 직접 다운로드 받으실 수 있도록 강좌 계시판을 개편할 예정입니다. 감사합니다.
765 답변완료제품문의 황현석 2008-02-24 1,909
파워를 제어해야하는데요. 예를들어 채널 5개가 있으면 각각의 채널의 파워를 on/off 시켜 제어가능해야하며 타이머기능도 추가해야합니다. 그래서 다음의 사진 제품을 생각하는데 문제는 저희가 제어할려는 제품은 레이저다이오드라 5V 700mA의 작은 전류와 전압인데 사진의 제품은 대용량의 전압전류라 문제가 되지 않는지 모르겠습니다. 해결책이라도 있는지 여쭙고 싶습니다.
관리자 답변 N.T.C · 2008-02-25
안녕하세요? 고객님, 700mA이면 작은 전류는 아닙니다. 물론, 저희 최대 용량에 비해 작은 것은 사실이지만, 그 정도면 피크때는 1A를 쉽게 넘어갈겁니다. 제품 사용시 이상은 없을 것 같습니다. 대량 생산시, 제품을 개발하고 싶으시면, 개발 의뢰도 가능합니다. 소량(500개 미만) 생산시에는 그냥 사용하시는 것이 좋겠습니다. 감사합니다.
764 답변완료AM-RB04-B 전원 보드 박형규 2008-02-23 2,179
졸작 하느라 위 전원 보드 구매할 예정인데요. 채널에 들어가는 케이블 모양은 어떤 걸로 해야 하나요?? 제품 설명하는 부분(위에 사진)에는 연두색으로 나사로 고정된 뭔가?가 있던데... 그 부분도 구매할 수 있나요??
관리자 답변 N.T.C · 2008-02-23
안녕하세요? 고객님, 저희 뉴테크놀로지 컴패니 제품 구매를 고려해 주셔서 감사드립니다. 채널에 들어가는 케이블은 어떤 것이든 상관 없습니다. 연두색으로 나사로 고정된 뭔가 라고 표현하신 부분이 케이블 연결하는 커넥터를 말씀하시는 것 같은데, 사시면 각 채널당 한개씩 함께 안에 들어 있습니다. 감사합니다.
763 답변완료포트 질문 올립니다. 안형주 2008-02-22 2,078
#include <iom128v.h> #include <macros.h> void port_init(void) { PORTA = 0x00; DDRA = 0x00; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; //m103 output only DDRC = 0x00; PORTD = 0x10; DDRD = 0xF0; PORTE = 0x00; DDRE = 0x00; PORTF = 0x00; DDRF = 0x00; PORTG = 0x00; DDRG = 0x00; } //TIMER0 initialize - prescale:1024 // WGM: Normal // desired value: 1uSec // actual value: -1000000.000uSec (100000100.0%) void timer0_init(void) { TCCR0 = 0x00; //stop ASSR = 0x00; //set async mode TCNT0 = 0x100; //set count OCR0 = 0x00; TCCR0 = 0x07; //start timer } //call this routine to initialize all peripherals void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts XDIV = 0x00; //xtal divider XMCRA = 0x00; //external memory port_init(); timer0_init(); MCUCR = 0x00; EICRA = 0x00; //extended ext ints EICRB = 0x00; //extended ext ints EIMSK = 0x00; TIMSK = 0x00; //timer interrupt sources ETIMSK = 0x00; //extended timer interrupt sources SEI(); //re-enable interrupts //all peripherals are now initialized } // void main(void) { init_devices(); } 이렇게 소스를 구성하여 프로그램을 돌려본 결과 포트 D와 E만 led 테스트보드에 불이 사진과 같이 나옵니다.... 다른 포트 A B F 는 5번 led에만 정상적으로 불이 들어옵니다... 이것은 소스구성에 있어서 문제는 없는 듯 싶은데 혹시 기기결함인지...... 포트 초기화의 문제인지...... 궁금하여 이렇게 질문을 올립니다.....
관리자 답변 안형주 · 2008-02-22
사진을 직접 찍어 첨부파일에 올려놨습니다...
762 답변완료다시 한번 감사드립니다. 한병인 2008-02-22 2,011
전자공학의 꽃 마이콤을 익히면서 많은 힘을주고, 전망을 주신점 감사드립니다. 종종 시간있을 때 찾아 뵙겠습니다... 현재 정신적으로나 육체적으로 힘들어 정서적으로 안정이 안되어 있는 관게로 주변 정리가 되면, 마이콤을 정진해야지요... 인연이되어 감사합니다... 한병인 배상.//
관리자 답변 N.T.C · 2008-02-22
감사합니다. 늘 지켜보고 힘드실 때, 힘이 될 수 있는 사람과 회사가 되겠습니다. 언제든 찾아와 주세요.
761 답변완료캐릭터lcd관련 질문 입니다. 김민회 2008-02-21 2,128
avr128를 이용하여 lcd에 문자를 출력하려고 하는데요~ 홈페이지에 있는데로 제어포트를 PORTA0~PORTA2까지 하고 데이터 포트는 PORTF0~PORTF7까지 하여 회로를 제작하고 //PORTA : RS:D0 RW:D1 E:D2 //PORTF : DATA //ICC-AVR application builder : 2005-11-11 오후 12:05:38 // Target : M128 // Crystal: 16.000Mhz #include <iom128v.h> #include <macros.h> #define ON 1 #define OFF 0 #define DELAYTIME 10 void port_init(void) { PORTA = 0x00; DDRA = 0xFF; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; //m103 output only DDRC = 0x00; PORTD = 0x00; DDRD = 0xFF; PORTE = 0x00; DDRE = 0x00; PORTF = 0x00; DDRF = 0xFF; PORTG = 0x00; DDRG = 0x00; } //call this routine to initialize all peripherals void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts XDIV = 0x00; //xtal divider XMCRA = 0x00; //external memory port_init(); MCUCR = 0x00; EICRA = 0x00; //extended ext ints EICRB = 0x00; //extended ext ints EIMSK = 0x00; TIMSK = 0x00; //timer interrupt sources ETIMSK = 0x00; //extended timer interrupt sources SEI(); //re-enable interrupts //all peripherals are now initialized } void delay(int dd){ int i,j; for(i=0 ; i<1000 ; i++){ for(j=0 ; j<dd ; j++){ } } } // RS : PORTA D0 void LCD_RS(int onoff){ if(onoff == ON) PORTA = PORTA | 0x01; else PORTA = PORTA & 0xFE; } // RW : PORTA D1 void LCD_RW(int onoff){ if(onoff == ON) PORTA = PORTA | 0x02; else PORTA = PORTA & 0xFD; } // RS : PORTA D2 void LCD_E(int onoff){ if(onoff == ON) PORTA = PORTA | 0x04; else PORTA = PORTA & 0xFB; } void E_Pulse(void){ char i; LCD_E(ON); delay(DELAYTIME*10); LCD_E(OFF); delay(DELAYTIME*10); } void write_char(char s){ LCD_RS(ON); delay(DELAYTIME); LCD_RW(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); PORTF = s; delay(DELAYTIME); LCD_E(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); } void clrscr(){ LCD_RS(OFF); delay(DELAYTIME); LCD_RW(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); PORTF = 0x01; delay(DELAYTIME); LCD_E(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); } void returnhome(){ LCD_RS(OFF); delay(DELAYTIME); LCD_RW(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); PORTF = 0x02; delay(DELAYTIME); LCD_E(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); } void LCDONOFF(int onoff){ LCD_RS(OFF); delay(DELAYTIME); LCD_RW(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); if(onoff == ON){ PORTF = 0x0F; }else{ PORTF = 0x08; } delay(DELAYTIME); LCD_E(OFF); delay(DELAYTIME); LCD_E(ON); delay(DELAYTIME); } void lcd_disp(char x, char y){ LCD_RS(OFF); LCD_RW(OFF); if(y==1)y++; else if(y==2) y--; if(y<=1){ PORTF=y*20+x+0x80; } else{ y=2; PORTF=y*20+x+0xc0; } E_Pulse(); } void write_lcd(char x, char y, char *str){ lcd_disp(x,y); while(*str) write_char(*str++); } void main(void){ int i; init_devices(); returnhome(); clrscr(); while(1){ LCDONOFF(ON); delay(1000); write_char('s'); LCDONOFF(OFF); delay(1000); } } /* while(1){ write_lcd(0,0,"Hello"); delay(300); // clrscr(); write_lcd(0,0,"Test"); delay(300); // clrscr(); } }*/ 이렇게 프로그램을 했는데 lcd 위줄만 ■■■■■■■■■■■■■■■■ 이렇게 나와요~~정말 4일동안 여러 소스를 보고 고쳐 봤는데 작동이 안되네요~ lcd는 캐릭터 LCD(16216D-4-B102A)이거를 썼고 퓨즈비트 설정은 0xFF99FE로 하였습니다~ 답변기다리겠습니다...ㅜㅜ
관리자 답변 N.T.C · 2008-02-22
안녕하세요? 고객님, 퓨즈비트 셋팅이 틀렸네요. 0xFFD9EF로 하세요. 고객님이 셋팅하신 퓨즈로 하니까 동작이 안됩니다. 그리고, 가변 저항값을 돌려서, LCD 바이어스를 맞춰 주셔야 글이 표시 됩니다. 본 소스는 잘 돌아 가네요. 제가 바로 돌려 보았습니다. 감사합니다. >avr128를 이용하여 lcd에 문자를 출력하려고 하는데요~ > >홈페이지에 있는데로 제어포트를 PORTA0~PORTA2까지 하고 > >데이터 포트는 PORTF0~PORTF7까지 하여 회로를 제작하고 > >//PORTA : RS:D0 RW:D1 E:D2 >//PORTF : DATA > >//ICC-AVR application builder : 2005-11-11 오후 12:05:38 >// Target : M128 >// Crystal: 16.000Mhz > >#include <iom128v.h> >#include <macros.h> > >#define ON 1 >#define OFF 0 >#define DELAYTIME 10 > >void port_init(void) >{ > PORTA = 0x00; > DDRA = 0xFF; > PORTB = 0x00; > DDRB = 0x00; > PORTC = 0x00; //m103 output only > DDRC = 0x00; > PORTD = 0x00; > DDRD = 0xFF; > PORTE = 0x00; > DDRE = 0x00; > PORTF = 0x00; > DDRF = 0xFF; > PORTG = 0x00; > DDRG = 0x00; >} > >//call this routine to initialize all peripherals >void init_devices(void) >{ > //stop errant interrupts until set up > CLI(); //disable all interrupts > XDIV = 0x00; //xtal divider > XMCRA = 0x00; //external memory > port_init(); > > MCUCR = 0x00; > EICRA = 0x00; //extended ext ints > EICRB = 0x00; //extended ext ints > EIMSK = 0x00; > TIMSK = 0x00; //timer interrupt sources > ETIMSK = 0x00; //extended timer interrupt sources > SEI(); //re-enable interrupts > //all peripherals are now initialized >} >void delay(int dd){ > int i,j; > > for(i=0 ; i<1000 ; i++){ > for(j=0 ; j<dd ; j++){ > } > } >} > >// RS : PORTA D0 >void LCD_RS(int onoff){ > if(onoff == ON) > PORTA = PORTA | 0x01; > else > PORTA = PORTA & 0xFE; >} >// RW : PORTA D1 >void LCD_RW(int onoff){ > if(onoff == ON) > PORTA = PORTA | 0x02; > else > PORTA = PORTA & 0xFD; >} >// RS : PORTA D2 >void LCD_E(int onoff){ > if(onoff == ON) > PORTA = PORTA | 0x04; > else > PORTA = PORTA & 0xFB; >} > >void E_Pulse(void){ > char i; > LCD_E(ON); > delay(DELAYTIME*10); > LCD_E(OFF); > delay(DELAYTIME*10); >} > >void write_char(char s){ > LCD_RS(ON); > delay(DELAYTIME); > LCD_RW(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); > PORTF = s; > delay(DELAYTIME); > LCD_E(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); >} > >void clrscr(){ > LCD_RS(OFF); > delay(DELAYTIME); > LCD_RW(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); > PORTF = 0x01; > delay(DELAYTIME); > LCD_E(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); >} > >void returnhome(){ > LCD_RS(OFF); > delay(DELAYTIME); > LCD_RW(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); > PORTF = 0x02; > delay(DELAYTIME); > LCD_E(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); >} > >void LCDONOFF(int onoff){ > LCD_RS(OFF); > delay(DELAYTIME); > LCD_RW(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); > if(onoff == ON){ > PORTF = 0x0F; > }else{ > PORTF = 0x08; > } > delay(DELAYTIME); > LCD_E(OFF); > delay(DELAYTIME); > LCD_E(ON); > delay(DELAYTIME); >} > > >void lcd_disp(char x, char y){ >LCD_RS(OFF); >LCD_RW(OFF); >if(y==1)y++; >else if(y==2) y--; >if(y<=1){ > PORTF=y*20+x+0x80; >} >else{ > y=2; > PORTF=y*20+x+0xc0; >} >E_Pulse(); >} > >void write_lcd(char x, char y, char *str){ >lcd_disp(x,y); >while(*str) write_char(*str++); >} > >void main(void){ > int i; > init_devices(); > returnhome(); > clrscr(); > while(1){ > LCDONOFF(ON); > delay(1000); > write_char('s'); > LCDONOFF(OFF); > delay(1000); > > } >} > >/* while(1){ > write_lcd(0,0,"Hello"); > delay(300); >// clrscr(); > write_lcd(0,0,"Test"); > delay(300); >// clrscr(); > } >}*/ > >이렇게 프로그램을 했는데 > >lcd 위줄만 ■■■■■■■■■■■■■■■■ > >이렇게 나와요~~정말 4일동안 여러 소스를 보고 고쳐 봤는데 작동이 안되네요~ > >lcd는 캐릭터 LCD(16216D-4-B102A)이거를 썼고 > >퓨즈비트 설정은 0xFF99FE로 하였습니다~ > >답변기다리겠습니다...ㅜㅜ
760 답변완료ATMEGA128관련 질문 문석봉 2008-02-21 2,035
오늘 ATmega128 PRO을 샀습니다. 제가 해야할 것은 모터를(서보모터든 디씨모터든 암튼) 30개정도를 서로 제어해야합니다. (30개의 모터를 동시에 어떤 조합으로든지 서로 다르게 움직일수있어야합니다.) 그래서 몇가지 조언을 부탁합니다. 제가 AVR에 관해서 잘 모르기때문에 일단은 공부를 해야할 텐데요. 첫번째, 위에서 말씀드린 대로 ATmega128를 가지고 30개의 모터를 어떤 조합으로든지 제어를 할 수는 있는 겁니까? 그것이 어려운일인지 그리 어렵지 않은지, 쉬운지 궁금합니다. 두번째, 지금 딸랑 ATmega128 PRO과 PC에서 AVR로 코드를 집어넣을수있는 케이블만 샀는데요. 기판같은것은 어떻게 해야합니까? 갖가지 저항이라든지 소자를 붙여서 일종의 회로를 구성해야만 제가 원하는 것을 할수 있는 겁니까? 세번째, 프로그래밍을 해야하는데 컴퓨터에 무엇을(어떤 프로그램) 깔아야 하는겁니까? 네번째, 세번째 질문에서 컴퓨터에 프로그램을 깔았을때 그갓을 가지고 C언어로 짤수있는겁니까? 아님 기계어를 써야하는겁니까? 좋은 답변 부탁드립니다.
관리자 답변 N.T.C · 2008-02-22
안녕하세요? 저희 뉴테크놀로지 컴패니 제품을 이용해 주셔서 감사드립니다. 질문에서 AVR을 공부하겠다는 열의가 느껴졌습니다. 화이팅입니다. 우선, AVR 한개로 DC 모터를 30개 제어하는 것은 쉽지 않아 보입니다. 불가능한 것은 아니지만, 쉬운 일도 아니지요. 또한, 어떤 DC 모터냐에 따라 다르겠습니다. 전류량 때문이지요. 우선, 우리 회사에서 서보 모터를 24개까지 자유자재로 다룰 수 있는 기본 C소스 코드를 무료로 제공하고 있습니다. 자료실->기존자료실에서 쉽게 다운로드 가능합니다. CSVP를 3개 사서 전류량을 늘릴 수 있도록 개조하고(방법은 회사로 방문하시면 보여드리겠습니다. 방열판을 늘리고, 7805를 78T05로 바꾸면 됩니다.) 서보 모터를 24개 연결하면 되지만, 전류량을 충분히 공급해 줘야 합니다. 서보 모터는 움직일 때 전류를 많이 먹거든요. 각 모터에 걸리는 부하가 어느정도냐에 따라서, 서보모터 선정도 달라지겠지요. 본사를 방문하여 자문 받으시기를 권합니다. AVR을 처음 하신다면 KD-128PRO 킷트를 구매하시기를 권장합니다. 그 안에 보시면, 예제 등이 준비되어 있습니다. 일단, 예제를 충실히 해 보신 후에, 본인이 하시려는 것을 확장 보드를 준비하거나 빵판을 준비하여 실습하시면서 만들어 보시면 되겠습니다. 프로그래밍 하실 때는 크로스컴파일러와 다운로더용 프로그램 등을 까셔야 하는 데, 보통 두개가 한 프로그램안에 함께 있습니다. 따로 있는 것도 있구요. 크로스 컴파일러로는 ICCAVR, Codevision, IARC, WINAVR(GCC계열) 등이 있는 데요. 우리 회사에서는 사용이 편리하고 데모 버전도 구하기 쉬운 ICCAVR을 권합니다. 강좌->AVR강좌에 가시면 ICCAVR 사용법 및 다운로딩 법 프로그래밍할 때 방법 등이 나와 있습니다. KD-128PRO 강좌를 다운로드 하세요. C로도 가능하구요. ASM도 가능합니다. 감사합니다. >오늘 ATmega128 PRO을 샀습니다. >제가 해야할 것은 모터를(서보모터든 디씨모터든 암튼) 30개정도를 서로 제어해야합니다. (30개의 모터를 동시에 어떤 조합으로든지 서로 다르게 움직일수있어야합니다.) > >그래서 몇가지 조언을 부탁합니다. >제가 AVR에 관해서 잘 모르기때문에 일단은 공부를 해야할 텐데요. > >첫번째, 위에서 말씀드린 대로 ATmega128를 가지고 30개의 모터를 어떤 조합으로든지 제어를 할 수는 있는 겁니까? 그것이 어려운일인지 그리 어렵지 않은지, 쉬운지 궁금합니다. > >두번째, 지금 딸랑 ATmega128 PRO과 PC에서 AVR로 코드를 집어넣을수있는 케이블만 샀는데요. 기판같은것은 어떻게 해야합니까? 갖가지 저항이라든지 소자를 붙여서 일종의 회로를 구성해야만 제가 원하는 것을 할수 있는 겁니까? > >세번째, 프로그래밍을 해야하는데 컴퓨터에 무엇을(어떤 프로그램) 깔아야 하는겁니까? > >네번째, 세번째 질문에서 컴퓨터에 프로그램을 깔았을때 그갓을 가지고 C언어로 짤수있는겁니까? 아님 기계어를 써야하는겁니까? > >좋은 답변 부탁드립니다.
759 답변완료[견적 의뢰]견적좀 부탁드립니다 노현우 2008-02-21 1,920
저는 작년에 eleparts를 통해서 DC모터 사용한 라인트레이서를 구매하였는데요 이번에 그 라인트레이서를 변형하여 다른 작품을 만들려고 합니다. DC모터를 스텝모터로 바꾸고 이런저런 변형을 좀 가하고 싶은데 eleparts 에 이야기 하였더니 이곳을 알려줘서 메일 남깁니다. 일단 제가 하고싶은것은 아무 라인이나 그려놓으면 라인트레이서가 라인을 따라서 이동하고 실시간으로 노트북 화면에 그 라인을 그려주는것입니다. 그래서 일단 스텝모터로 교체를 해야하고 무선통신 모듈을 사용하여 실시간으로 스텝모터의 회전수를 전달하여 화면으로 보여줘야하는데요... 제가 이런쪽에 문외한인지라 도움을 좀 받았으면 합니다. 우선 알고싶은것은 하드웨어적인 부품과 회로도는 구매 가능한듯 싶은데... 스텝모터,스텝코터 제어장치, 무선통신모듈 이렇게 이고요 그에따른 DC모터 라인트레이서에 어떻게 적용해야하는지 하는 회로도 입니다. 또 그에따른 소프트 웨어도 가능한지 알고싶습니다. 이 모든것에 대한 상세 견적을 받아볼수 있을까요? 제가 지금 외국에 있어서 통화는 안되고 메일로만 연락이 가능합니다. 혹시 가능하다면 모든것이 가능하도록 도움을 좀 받고 싶은데요... 가급적 좀 빠른 답변과 견적을 부탁드립니다. 감사합니다.
관리자 답변 N.T.C · 2008-02-21
안녕하세요? 저희 뉴테크놀로지 컴패니 제품을 이용해 주셔서 감사드립니다. 우선, 이메일이 없어서 견적을 보내드리기가 어렵네요. ATMEGA16을 이용한 스테핑 라인트레이서(KR-SL16), ATMEGA128을 이용한 스테핑 라인트레이서(KR-SL128) 등을 구매하시면 라인트레이서 소스와 회로도, 강좌 등 모든 것이 들어 있습니다. 그리고, 무선 통신 모듈은 블루투스 시리얼 모듈(HPS-120 : 165,000원)입니다. 각각 모듈만 구매하셔서 프로그램은 직접 짜넣으셔도 가능합니다. 저희 스테핑 라인트레이서 킷트를 구매하시면 안에 다 들어 있습니다만, 직접 짜시게 되면 아무래도 가지고 계신 16보드를 활용하실 수 있어서 좋으실 것 같습니다만 그 경우, 구매하셔야 하는 리스트는 IRS4D 센서보드, 모터 구동부(CS2P), 2x520 1개, 2x505 1개, 2핀 전원연장선, 스테핑모터용 바퀴, 스테핑 모터 2개, 스테핑트레이서용 바디 등입니다. ISP는 가지고 계실 테니 리스트에는 넣지 않았습니다. 또한, PC용으로 선을 따라가면서 노트북 화면에 그 라인을 그려주는 것은 프로그램 스펙이 확정되어야 정확한 견적이 가능할 듯 합니다. 블루투스 모듈은 가격을 미리 말씀 드렸구요. 블루투스 모듈과 연결하는 보드는 직접 제작하시거나 하셔야 할겁니다. 감사합니다. >저는 작년에 eleparts를 통해서 DC모터 사용한 라인트레이서를 구매하였는데요 >이번에 그 라인트레이서를 변형하여 다른 작품을 만들려고 합니다. >DC모터를 스텝모터로 바꾸고 이런저런 변형을 좀 가하고 싶은데 eleparts 에 이야기 하였더니 이곳을 알려줘서 메일 남깁니다. >일단 제가 하고싶은것은 아무 라인이나 그려놓으면 라인트레이서가 라인을 따라서 이동하고 실시간으로 노트북 화면에 그 라인을 그려주는것입니다. >그래서 일단 스텝모터로 교체를 해야하고 무선통신 모듈을 사용하여 실시간으로 스텝모터의 회전수를 전달하여 화면으로 보여줘야하는데요... 제가 이런쪽에 문외한인지라 도움을 좀 받았으면 합니다. >우선 알고싶은것은 하드웨어적인 부품과 회로도는 구매 가능한듯 싶은데... 스텝모터,스텝코터 제어장치, 무선통신모듈 이렇게 이고요 그에따른 DC모터 라인트레이서에 어떻게 적용해야하는지 하는 회로도 입니다. >또 그에따른 소프트 웨어도 가능한지 알고싶습니다. >이 모든것에 대한 상세 견적을 받아볼수 있을까요? >제가 지금 외국에 있어서 통화는 안되고 메일로만 연락이 가능합니다. >혹시 가능하다면 모든것이 가능하도록 도움을 좀 받고 싶은데요... >가급적 좀 빠른 답변과 견적을 부탁드립니다. >감사합니다.
758 답변완료가속도 센서에 관하여... 민병우 2008-02-20 2,032
안녕하세요? 가속도센서를 구입해서 현재 Test중입니다.. 주신자료(ppt)로 가속도는 구했는데... 속도와 위치값을 구하고 싶습니다... 적분을 하면 될것 같은데... 어떤식으로 구현해야 할지 궁금합니다... 자료실에 나와있는 소스를 보면, 가속도, 속도, 위치를 구하는 루틴이 없는것 같습니다.. 수고하십시오...
관리자 답변 N.T.C · 2008-02-21
적분하는 알고리즘은 알고리즘 책들을 보면 잘 나와 있습니다. 참고하시기 바랍니다. 감사합니다.
757 답변완료가속도 센서 질문좀 할께요~ 배성건 2008-02-19 2,256
가속도 센서로 출력 테스트를 하고 있습니다. 근데 생각보다 값이 많이 튀어서 질문좀 할께요 밑에 글들을 검색하다 보니 전원부에 캐패시터를 달아주면 괜찮아질꺼라고 되어있던데요, 그림이 보이질 않아서요... 그냥 8번(vcc)핀 바로 옆에 gnd랑 병렬로 104캐패시터 달아주면 되는건가요? 그림 파일 있으시면 멜좀 보내주세요~ 추운데 감기 조심하시고 좋은 하루 되세요~
관리자 답변 N.T.C · 2008-02-19
안녕하세요? 저희 뉴테크놀로지 컴패니 제품을 이용해 주셔서 감사드립니다. 아래 링크를 참고하세요. http://www.newtc.co.kr/board/view.php?id=qna&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=가속도&select_arrange=headnum&desc=asc&no=1292 감사합니다. >가속도 센서로 출력 테스트를 하고 있습니다. > >근데 생각보다 값이 많이 튀어서 질문좀 할께요 > >밑에 글들을 검색하다 보니 전원부에 캐패시터를 달아주면 > >괜찮아질꺼라고 되어있던데요, 그림이 보이질 않아서요... > >그냥 8번(vcc)핀 바로 옆에 gnd랑 병렬로 104캐패시터 달아주면 되는건가요? > >그림 파일 있으시면 멜좀 보내주세요~ > >추운데 감기 조심하시고 좋은 하루 되세요~
756 답변완료[질문]키스캔,키입력 안형주 2008-02-18 2,418
안녕하세요? PORTE의 핀 123을 출력으로 설정하여 키패드의 426에 물렸고 PORTE의 핀 5678을 입력으로 설정하여 키패드의 3875에 물려 입력을 받는 구조로 설정하였습니다. 키패드의 나머지 핀은 필요없어 연결하지 않았구요. #include <iom128v.h> #include <macros.h> #define KEY_IN_PORT PORTE #define KEY_DATA PINE #define K_CODE_01 0x11 //1 #define K_CODE_02 0x12 //2 #define K_CODE_03 0x14 //3 #define K_CODE_04 0x21 //4 #define K_CODE_05 0x22 //5 #define K_CODE_06 0x24 //6 #define K_CODE_07 0x41 //7 #define K_CODE_08 0x42 //8 #define K_CODE_09 0x44 //9 #define K_CODE_10 0x82 //0 #define K_CODE_11 0x81 //* #define K_CODE_12 0x84 //# #define ON 1 #define OFF 0 #define DELAYTIME 10 #define RIGHT 1 #define LEFT 0 void port_init(void) { PORTA = 0x00; DDRA = 0xff; PORTB = 0x00; // Port B DDRB = 0x00; // Port B PORTC = 0x00; DDRC = 0x00; PORTD = 0x00; DDRD = 0xff; PORTE = 0x0f; DDRE = 0x0F; PORTF = 0x00; DDRF = 0xff; PORTG = 0x00; DDRG = 0xff; } char key_scan(void) { char key; int i=0; PORTE = 0x01; delay(1000); while(i==0) { switch(KEY_DATA) { case K_CODE_01: key='1'; i=1; break; case K_CODE_04: key='4'; i=1; break; case K_CODE_07: key='7'; i=1; break; case K_CODE_11: key='*'; i=1; break; default: PORTE = PORTE<<1; break; } if(i==0) { switch(KEY_DATA) { case K_CODE_02: key='2'; i=1; break; case K_CODE_05: key='5'; i=1; break; case K_CODE_08: key='8'; i=1; break; case K_CODE_10: key='0'; i=1; break; default: PORTE = PORTE<<1; break; } } if(i==0) { switch(KEY_DATA) { case K_CODE_03: key='3'; i=1; break; case K_CODE_06: key='6'; i=1; break; case K_CODE_09: key='9'; i=1; break; case K_CODE_12: key='#'; i=1; break; } } } return key; } void main(void) { char str1[16]="Input number"; char str2[16]=""; char key; init_devices(); init_lcd(); LCDONOFF(ON); returnhome(); LCD_Clr(); write_lcd(0,0,str1); while(1) { str2[16]=PINE; write_lcd(0,1,str2); //delay(500); } } 정말 키패드가 이렇게 ㅠㅠ머리를 아프게 할 줄은 몰랐네요... 사용하는 프로그램은 iccavr이고요.... avr스튜디오를 사용하여 가상 시뮬레이션을 돌려본 결과.... 키스캔 함수까지 가는데에는 아무런 문제가 없었습니다... 여기서 키패드가 e포트에 연결되어있는데 if문을 돌기위해서는 핀값을 받고 함수를 아무런 문제 없이 돌아야 저희가 원하고자 하는 키스캔을 받아서 LCD에 뿌릴 것으로 생각하고 있습니다... 그런데 여기서 ㅠㅠ 시뮬레이션에서 스위치문을 돌&#46468; 핀값이 포트E 값과 동일하게 변화 되어 들어가게 됩니다.. 저희는 스위치를 눌렀을때 그 눌러진 핀의 DEFINE한 값이 대입되기를 원하는데 그것이 잘안되서 이렇게 질문을 올립니다.... 핀E값을 저희가 원하고자 할때에는 어떤식으로 해줘야 할런지요..... 작은 조언이라도 해주시면 감사하겠습니다.....
관리자 답변 N.T.C · 2008-02-19
안녕하세요? 출력을 PORTE의 123번에 물렸다고 했는 데, D0, D1,D2에 돌아가면서 1 출력을 내 줘야 하는 데, 그 부분이 전혀 보이지 않네요. 예전에 짯었던 소스입니다. 참고하세요. while(1) { for(i=0;i<6;i++) { Key_Select(i); Delay(1); j=Key_Read(); if(i*100+j != i*100+15){ Uart_Printf("%d Num : %d\\n", j, i*100+j); } } } void Key_Select(int k){ rPDATC = k; } int Key_Read(void){ int i=0; i = (0x000F)&(rPDATC>>4); return(i); } >안녕하세요? > >PORTE의 핀 123을 출력으로 설정하여 키패드의 426에 물렸고 > >PORTE의 핀 5678을 입력으로 설정하여 키패드의 3875에 물려 입력을 받는 구조로 설정하였습니다. > >키패드의 나머지 핀은 필요없어 연결하지 않았구요. > > > >#include <iom128v.h> >#include <macros.h> > > > > > >#define KEY_IN_PORT PORTE >#define KEY_DATA PINE >#define K_CODE_01 0x11 //1 >#define K_CODE_02 0x12 //2 >#define K_CODE_03 0x14 //3 >#define K_CODE_04 0x21 //4 >#define K_CODE_05 0x22 //5 >#define K_CODE_06 0x24 //6 >#define K_CODE_07 0x41 //7 >#define K_CODE_08 0x42 //8 >#define K_CODE_09 0x44 //9 >#define K_CODE_10 0x82 //0 >#define K_CODE_11 0x81 //* >#define K_CODE_12 0x84 //# >#define ON 1 >#define OFF 0 >#define DELAYTIME 10 >#define RIGHT 1 >#define LEFT 0 > > >void port_init(void) >{ > PORTA = 0x00; > DDRA = 0xff; > PORTB = 0x00; // Port B > DDRB = 0x00; // Port B > PORTC = 0x00; > DDRC = 0x00; > PORTD = 0x00; > DDRD = 0xff; > PORTE = 0x0f; > DDRE = 0x0F; > PORTF = 0x00; > DDRF = 0xff; > PORTG = 0x00; > DDRG = 0xff; >} > > > >char key_scan(void) >{ > char key; > int i=0; > PORTE = 0x01; > delay(1000); > while(i==0) > { > switch(KEY_DATA) > { > case K_CODE_01: > key='1'; > i=1; > break; > case K_CODE_04: > key='4'; > i=1; > break; > case K_CODE_07: > key='7'; > i=1; > break; > case K_CODE_11: > key='*'; > i=1; > break; > default: > PORTE = PORTE<<1; > break; > } > if(i==0) > { > switch(KEY_DATA) > { > case K_CODE_02: > key='2'; > i=1; > break; > case K_CODE_05: > key='5'; > i=1; > break; > case K_CODE_08: > key='8'; > i=1; > break; > case K_CODE_10: > key='0'; > i=1; > break; > default: > PORTE = PORTE<<1; > break; > } > } > if(i==0) > { > switch(KEY_DATA) > { > case K_CODE_03: > key='3'; > i=1; > break; > case K_CODE_06: > key='6'; > i=1; > break; > case K_CODE_09: > key='9'; > i=1; > break; > case K_CODE_12: > key='#'; > i=1; > break; > } > } > } > return key; >} > > > > > >void main(void) >{ > char str1[16]="Input number"; > char str2[16]=""; > char key; > init_devices(); > init_lcd(); > LCDONOFF(ON); > returnhome(); > LCD_Clr(); > write_lcd(0,0,str1); > while(1) > { > str2[16]=PINE; > write_lcd(0,1,str2); > //delay(500); > } >} > > > > 정말 키패드가 이렇게 ㅠㅠ머리를 아프게 할 줄은 몰랐네요... 사용하는 프로그램은 iccavr이고요.... > > > >avr스튜디오를 사용하여 가상 시뮬레이션을 돌려본 결과.... 키스캔 함수까지 가는데에는 아무런 문제가 > > > >없었습니다... 여기서 키패드가 e포트에 연결되어있는데 if문을 돌기위해서는 핀값을 받고 함수를 아무런 > > > >문제 없이 돌아야 저희가 원하고자 하는 키스캔을 받아서 LCD에 뿌릴 것으로 생각하고 있습니다... > > > >그런데 여기서 ㅠㅠ 시뮬레이션에서 스위치문을 돌&#46468; 핀값이 포트E 값과 동일하게 변화 되어 들어가게 됩니다.. > > > >저희는 스위치를 눌렀을때 그 눌러진 핀의 DEFINE한 값이 대입되기를 원하는데 그것이 잘안되서 이렇게 > > > >질문을 올립니다.... > > > >핀E값을 저희가 원하고자 할때에는 어떤식으로 해줘야 할런지요..... 작은 조언이라도 해주시면 > > > >감사하겠습니다..... > >
755 답변완료[다시 질문]VER2(AM-3AXIS VER.2) 김병진 2008-02-18 2,070
다시 질문합니다. 이 센서 모듈을 샀는데.. 회로도를 구할수 있나요? 회부에 달린 R, C 필터의 값때문에.. PCB로 제작을 해야되는데 모듈을 붙일수가 없어서..
관리자 답변 배성건 · 2008-02-19
출력 필터단에 저항은 1k고 캐패시터는 0.1uF 같네요..;;;
754 답변완료가속도 센서 문의 김병진 2008-02-18 1,867
가속도 센서 모듈을 구입했는데.. 모듈은 테스트 용으로 쓴다고 산거구요. PCB에 부착해야되는데 모듈에 달린 저항과 캐패시터 를 알수 있나요? 회로도를 참고 할 수는 없습니까?
관리자 답변 N.T.C · 2008-02-18
안녕하세요? 고객님, 저희 모듈을 구매해 주셔서 감사드립니다. 그런데, 정확히 어떤 말씀이신지 모르겠습니다. 구매하신 모듈은 VER2인지 1인지 그것도 명확하게 알려 주세요. 저항과 커패시터라는 게 어떤 것을 말씀하시는 지 모르겠습니다. 감사합니다.