로그인 | 회원가입 | 주문 조회
총 10,748개의 질문이 있습니다.
번호 제목 작성자 등록일 조회
2963 답변완료AM_3AXIS_3축센서 질문입니다 배한수 2009-05-21 1,461
대학교 들어와서 마이크로프로세서를 접한지 얼마 안되어서 너무 막막합니다. 가속도센서 모듈까지 모두 샀구요 일단 avr과 가속도센서를 연결하여 값을 출력하려고 하는데 제가 적은것에 틀린부분 정정 부탁드립니다 ^_^ 1)자료를 찾아보니 f포트와 x,y,z축 값을 출력하는 모듈의 1,3,5번 핀과 연결해야 되는것같네요... 즉 가속도센서에서 avr쪽으로 보내는 핀은 이 3개 밖에 없죠? 2)g_select1,2는 중력을 느끼는 정도를 조정하는것인것 같은데 이것은 avr에서 가속도센서쪽으로 값을 보내서 조정하는건가요? 만약에 조정안하고 gnd에 연결하면 1.5g로 된다는것이죠? 3)sleep(SLP)는 뭔지 완전히 모르겠습니다. 설명서봐도 잘 모르겠어요 ㅠ_ㅠ 그리고 이것을 사용안하려면 Vcc와 연결해야되는것 같네요 맞나요?.. 4)모듈에있는 10개핀중 8개가 사용되던데 x,y,z 3개 g_select 2개 sleep 1개 gnd 1개 vcc 1개 설명서를 보니 커넥터 선을 통해 10개핀의 값을 at128보드 쪽으로 연결했던데 그 받은 10개핀중 사용안하는 2개는 가만히 두고 8개 핀은 각각의 용도에 맞게 at128칩과 연결하면 되는건가요? 후우...너무 아는게 없어서 질문이 좀 어렵게 느껴질것 같네요... 좋은 답변 부탁드립니다 ^_^ 수고하세요
관리자 답변 N.T.C · 2009-05-22
안녕하세요? 고객님, 저희 NewTC를 이용하여 주셔서 감사합니다. 우선, 대학교 들어와서 마이크로 프로세서를 접한지 얼마 안되는 데, 아래와 같이 질문할 수 있다는 것에 대해서, 이 쪽 분야에 소질이 있다고 생각합니다. 사람마다 잘하는 부분이 다를 수 있는 데, 느낌에는 분명 기초는 잘 다진 것 같습니다. 열심히 해보세요. 분명히 좋은 결과 있을 겁니다. 답변해 드릴께요. 1. 네. 2. 네. 3. 네. 4. 네. 입니다. 잘 이해한 것 같습니다. 그리고, 자료실->기존자료실에서 계산 또는 3축 으로 검색해 보세요. 거기에 계산하는 방법에 대한 식도 있으니, 참고하세요. 수고하세요. >대학교 들어와서 > >마이크로프로세서를 접한지 얼마 안되어서 >너무 막막합니다. > >가속도센서 모듈까지 모두 샀구요 > >일단 avr과 가속도센서를 연결하여 값을 출력하려고 하는데 > >제가 적은것에 틀린부분 정정 부탁드립니다 ^_^ > >1)자료를 찾아보니 f포트와 x,y,z축 값을 출력하는 모듈의 1,3,5번 핀과 연결해야 >되는것같네요... >즉 가속도센서에서 avr쪽으로 보내는 핀은 이 3개 밖에 없죠? > >2)g_select1,2는 중력을 느끼는 정도를 조정하는것인것 같은데 >이것은 avr에서 가속도센서쪽으로 값을 보내서 조정하는건가요? >만약에 조정안하고 gnd에 연결하면 1.5g로 된다는것이죠? > >3)sleep(SLP)는 뭔지 완전히 모르겠습니다. >설명서봐도 잘 모르겠어요 ㅠ_ㅠ >그리고 이것을 사용안하려면 Vcc와 연결해야되는것 같네요 맞나요?.. > >4)모듈에있는 10개핀중 8개가 사용되던데 >x,y,z 3개 >g_select 2개 >sleep 1개 >gnd 1개 >vcc 1개 >설명서를 보니 커넥터 선을 통해 10개핀의 값을 at128보드 쪽으로 연결했던데 >그 받은 10개핀중 사용안하는 2개는 가만히 두고 >8개 핀은 각각의 용도에 맞게 at128칩과 연결하면 되는건가요? > >후우...너무 아는게 없어서 질문이 좀 어렵게 느껴질것 같네요... >좋은 답변 부탁드립니다 ^_^ >수고하세요 >
2962 답변완료질문이요.ㅠ 김민수 2009-05-21 1,406
코드비전으로 128에 프로그래밍 한걸 넣으면은 같이 달린 7세그먼터는 제어가 되는데 printf문이나 putchar getchar 등이 안됩니다 칩을 지워도 터미널로 통신하면 문자 받아서 출력하는거는 그냥 계속 됩니다.;; 칩이 제대로 안지워 지는거 같기도하고..; 왜그런건가요??ㅠ
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 아래 코드를 참고하면 코드비전으로도 시리얼 출력 잘 되는 데요. - 아래 - 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 코드가 잘못되어서 그런 것 같습니다. 코드를 다시 짜서 해보세요. 수고하세요. >코드비전으로 128에 프로그래밍 한걸 넣으면은 >같이 달린 7세그먼터는 제어가 되는데 > >printf문이나 putchar getchar 등이 안됩니다 > >칩을 지워도 터미널로 통신하면 >문자 받아서 출력하는거는 그냥 계속 됩니다.;; >칩이 제대로 안지워 지는거 같기도하고..; >왜그런건가요??ㅠ >
2961 답변완료Cannot program or verify Flash 에러 관련 문의. 홍석대 2009-05-21 1,477
"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. Connected to STK500 V2 on port com3 Connection to STK500 V2 closed Done. Thu May 21 21:09:55 2009 informational - project has no EEPROM file Programming FLASH... "C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 -e -pf -ifC:\\iccv7avr\\test\\SETUP.hex STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. Connected to STK500 V2 on port com3 Device parameters loaded Programming mode entered Device erased Could not read FLASH input file Programming mode left Connection to STK500 V2 closed WARNING! One or more operations failed! Please examine the output log above! Done: there are error(s). Exit code: 1. Thu May 21 21:09:56 2009 Cannot program or verify Flash ISP programming done. In system programming 에서 Program flash/eeporm을 클릭하면 이렇게 뜹니다. 잘되다가 어느순간 갑자기 저런 오류가 뜨네요. chip eraser는 되는것 같구요. 다음과 같이 뜹니다. "C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 -e STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. Connected to STK500 V2 on port com3 Device parameters loaded Programming mode entered Device erased Programming mode left Connection to STK500 V2 closed Done. Thu May 21 21:12:23 2009 설마... 맡겨야 하나요? 졸업작품기한이 몇일 남지 않아서 굉장히 급한상황인데 맡기고 할 상황이 아닙니다. 만약 MCU가 고장났을수도 있다면 자가진단 방법같은건 없나요?
관리자 답변 N.T.C · 2009-05-21
CPU 이상일 확률이 높습니다. CPU를 교체해 보세요. 서울권에 있다면, 본사로 직접 가지고 와보세요~ 명쾌한 답이 기다리고 있습니다. 수고하세요. >"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 >STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. > >Connected to STK500 V2 on port com3 >Connection to STK500 V2 closed > >Done. Thu May 21 21:09:55 2009 >informational - project has no EEPROM file >Programming FLASH... >"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 -e -pf -ifC:\\iccv7avr\\test\\SETUP.hex >STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. > >Connected to STK500 V2 on port com3 >Device parameters loaded >Programming mode entered >Device erased >Could not read FLASH input file >Programming mode left >Connection to STK500 V2 closed > >WARNING! One or more operations failed! Please examine the output log above! > >Done: there are error(s). Exit code: 1. Thu May 21 21:09:56 2009 > >Cannot program or verify Flash > >ISP programming done. > > >In system programming 에서 >Program flash/eeporm을 클릭하면 >이렇게 뜹니다. > >잘되다가 어느순간 갑자기 저런 오류가 뜨네요. > >chip eraser는 되는것 같구요. >다음과 같이 뜹니다. > >"C:\\Program Files\\Atmel\\AVR Tools\\STK500\\Stk500.exe" -dATMega128 -ccom3 -dATmega128 -e >STK500 command line programmer, v 2.2 Atmel Corp (C) 2004-2005. > >Connected to STK500 V2 on port com3 >Device parameters loaded >Programming mode entered >Device erased >Programming mode left >Connection to STK500 V2 closed > >Done. Thu May 21 21:12:23 2009 > > >설마... >맡겨야 하나요? >졸업작품기한이 몇일 남지 않아서 굉장히 급한상황인데 맡기고 할 상황이 아닙니다. > >만약 MCU가 고장났을수도 있다면 자가진단 방법같은건 없나요?
2960 답변완료스테핑모터 SE-SM9 를 구입했는데 ^^; 강경식 2009-05-21 1,277
스테핑모터 SE-SM9 에 맞는 바퀴를 따로 파시나요? 맞는 바퀴를 어디서 구해야될지 모르겟습니다 ㅠ
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 고객님, 저희 NewTC 제품을 이용하여 주셔서 감사합니다. 헌데, 거기에 맞는 바퀴는 사실 구하기가 어럽겠습니다. 기계로 깍아서 만들어야 합니다. 수고하세요. >스테핑모터 SE-SM9 에 맞는 바퀴를 따로 파시나요? >맞는 바퀴를 어디서 구해야될지 모르겟습니다 ㅠ
2959 답변완료ADC질문이요 남궁해든 2009-05-21 1,325
제가 아까 글을 남겼는데요 답변을 다음과 같이 해주셨거든요 rc회로를 추천해주신다고 하셨는데 저도 인덕터는 써본적이 없어서 rc회로가 더 편하거든요 r,c 소자값은 얼마정도 되나요 혹시 데이터시트에도 나와있나요? 안녕하세요...고객님... 연결해주면 됩니다. 근데 노이즈에 의한 전압변동을 상쇄시키기 위해 rc회로를 추천하는데 10uH,100nF은 datasheet에서 권장하는거니까 괜찮겠네요. 특별히 아날로그 노이즈가 문제되지 않는다면 rc회로 없이 바로 연결해도 됩니다. 감사합니다. >ADC 를 하려고 하는데요 > >AREF 5v로 기준전압을 잡으려고 합니다. > >그러면 AVCC 와 AREF를 VCC와 연결해 주면 되나요? > >또한 RL회로를 달아야 한다고 하는데 10uH,100nF 정도면 괜찮을까요?
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 고객님, 고주파 전원 노이즈 제거를 위해서, 커패시터 104 ( 100nF )와 또한 저주파 전원 노이즈 제거 및 전원 안정화를 위하여 10uF~100uF 정도를 전원 3.3V 입력단 바로 근처에 달아주면 좋습니다. 아주 고주파 회로가 아니라서, 인덕터 같은 것들은 붙이지 않아도 될 것 같습니다. 사실, AREF에 기준전압으로 reference IC 같은 것과 OPAMP 등을 써서, 입력해 주는 것이 좋겠습니다만, 회로가 복잡해 지는 관계로, 그냥 5V에 직접 붙이셛 됩니다만, 그 전원용 5V가 정확해야 결과치도 그만큼 노이즈가 덜 타게 됩니다. 감사합니다. >제가 아까 글을 남겼는데요 답변을 다음과 같이 해주셨거든요 > >rc회로를 추천해주신다고 하셨는데 저도 인덕터는 써본적이 없어서 >rc회로가 더 편하거든요 > >r,c 소자값은 얼마정도 되나요 >혹시 데이터시트에도 나와있나요? > > > > > > > >안녕하세요...고객님... > >연결해주면 됩니다. 근데 노이즈에 의한 전압변동을 상쇄시키기 위해 rc회로를 추천하는데 10uH,100nF은 datasheet에서 권장하는거니까 괜찮겠네요. >특별히 아날로그 노이즈가 문제되지 않는다면 rc회로 없이 바로 연결해도 됩니다. > >감사합니다. > > >>ADC 를 하려고 하는데요 >> >>AREF 5v로 기준전압을 잡으려고 합니다. >> >>그러면 AVCC 와 AREF를 VCC와 연결해 주면 되나요? >> >>또한 RL회로를 달아야 한다고 하는데 10uH,100nF 정도면 괜찮을까요? >
2958 답변완료AM-IRS4D 적외선 센서모듈 질문있습니다. 김상준 2009-05-21 1,297
죄송한데 이 모듈에서 쓰인 센서종류좀 알수 있을까요 아니면 그 센서를 구입을 하고싶습니다.
관리자 답변 N.T.C · 2009-05-21
안녕하세요...고객님... 적외선 센서를 말하는거예요? ST3311 수광 발광 센서이고 3파이짜리입니다. 감사합니다. > >죄송한데 이 모듈에서 쓰인 센서종류좀 알수 있을까요 아니면 그 > >센서를 구입을 하고싶습니다.
2957 답변완료UART, RS485, RS232 통신할때 문제가 있습니다. 신동관 2009-05-21 1,895
안녕하세요.. 항상 친절한 답변 감사합니다. 이곳의 도움으로 일단 RS485통신 까지는 성공을 하였습니다. 그러나 통신시 이상문자가 들어옵니다. 34바이트의 문자를 1번MCU가 지속적으로 송신합니다. 이 데이타 값을 RS485 또는 RS232로 받아서 PC(하이퍼터미널)에서 받아보면 아래와 같이 깨끗하게 수신이 됩니다. 0449857A0000000000000000000000000F 7375857A0000000000000000000000000F 8E81857A0000000000000000000000000F 8E82857A0000000000000000000000000F 8D84857A0000000000000000000000000F 8D83857A0000000000000000000000000F 8D82857A0000000000000000000000000F 8D83857A0000000000000000000000000F 8D82857A0000000000000000000000000F 8D80857A0000000000000000000000000F 8D7F857A0000000000000000000000000F 그러나 이 데이타를 AM-M128-B 보드의 UART0로 수신하고 UART1으로 보면 아래와 같이 수신테이타에 이상한 값이 들어옵니다. 7D84857A0000000000000000000000000FFFF 8D83857A0000000000000000000000000F 8A82857A0000000000000000000000000F 8083857A0000000000000000000000000FFFF 8D82857A0000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 8D80857A0000000000000000000000000FFFF UART, RS232, RS485 모두 비슷한 형태의 이상한 문자가 들어옵니다. 1. 링버퍼에 관련해서 찾아보아도 특히 찾아볼만한 자료를 찾지 못하였습니다. 2. UART를 RS232, RS485변환 시 문제일수도 있어 관련설정을 변경하면서 PC에서 모니터링 하였을때문 문제없이 깨끗하게 들어옵니다. 7D84857A0000000000000000000000000F 이 값은 조이스틱의 값을 읽어 들인 값이어서 수시로 변경이 됩니다. 해볼만한 것이 있을까요.. 소스 첨부합니다. RS485로 테스트 중입니다. (물론 종단 저항 및 케이블 길이 그리고 GND관련도 해 보았습니다.) //ICC-AVR application builder : 2009-05-15 오후 7:45:48 // Target : M128 // Crystal: 16.000Mhz #include <iom128v.h> #include <macros.h> #include <stdio.h> volatile unsigned char RS485; volatile unsigned char RS232; // printf 와 scanf 오류 방지. 시작 ------------------------------------ // scanf 함수 사용시 추가할 것. int getchar(void) { while ((UCSR0A & 0x80) == 0); // while ((UCSR1A & 0x80) == 0); //232 수신전용 return UDR0; // return UDR1; //232 수신전용 } // printf 함수 사용시 추가할 것. int putchar(char c) { // while (((UCSR0A>>UDRE0)&0x01) == 0) ; // UDRE, data register empty //485 송신전용 while (((UCSR1A>>UDRE1)&0x01) == 0) ; // UDRE, data register empty // UDR0 = c; //485 송신전용 UDR1 = c; return c; } // printf 와 scanf 오류 방지. 종료 ------------------------------------ void port_init(void) { PORTA = 0x00; DDRA = 0x00; PORTB = 0x00; DDRB = 0x00; PORTC = 0x00; //m103 output only DDRC = 0x00; PORTD = 0x00; DDRD = 0x00; PORTE = 0x00; DDRE = 0x00; PORTF = 0x00; DDRF = 0x00; PORTG = 0x00; DDRG = 0x00; } //UART0 initialize // desired baud rate: 9600 // actual: baud rate:9615 (0.2%) // char size: 8 bit // parity: Disabled void uart0_init(void) { UCSR0B = 0x00; //disable while setting baud rate UCSR0A = 0x00; UCSR0C = 0x06; UBRR0L = 0x67; //set baud rate lo UBRR0H = 0x00; //set baud rate hi UCSR0B = 0xD8; } #pragma interrupt_handler uart0_rx_isr:iv_USART0_RXC void uart0_rx_isr(void) { //uart has received a character in UDR RS485=UDR0; } #pragma interrupt_handler uart0_tx_isr:iv_USART0_TXC void uart0_tx_isr(void) { //character has been transmitted } //UART1 initialize // desired baud rate:9600 // actual baud rate:9615 (0.2%) // char size: 8 bit // parity: Disabled void uart1_init(void) { UCSR1B = 0x00; //disable while setting baud rate UCSR1A = 0x00; UCSR1C = 0x06; UBRR1L = 0x67; //set baud rate lo UBRR1H = 0x00; //set baud rate hi UCSR1B = 0xD8; } #pragma interrupt_handler uart1_rx_isr:iv_USART1_RXC void uart1_rx_isr(void) { //uart has received a character in UDR RS232=UDR1; } #pragma interrupt_handler uart1_tx_isr:iv_USART1_TXC void uart1_tx_isr(void) { //character has been transmitted } //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(); uart0_init(); uart1_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 n) { volatile int i,j; for(i=0;i<n;i++) { for(j=0;j<100;j++); } } void main(void) { volatile unsigned char sw; init_devices(); DDRA = 0xFF; // PORTA 출력지정 DDRC = 0xFF; // PORTC 출력지정 DDRD = 0xFF; // PORTD 출력지정 485 RTX LOW 지정을 위해 printf(" ROV 제작 테스트 \\n\\r\\r\\r\\r\\r\\r"); while(1){ printf("%c",RS485); } // while end } // main end
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 고객님, 타이밍 상에서 빠지는 데이터가 발생하는 것 같네요. scanf에서 %s로 받아 보세요. 안깨지고 잘 들어 올겁니다. 감사합니다. >안녕하세요.. 항상 친절한 답변 감사합니다. > >이곳의 도움으로 일단 RS485통신 까지는 성공을 하였습니다. > >그러나 통신시 이상문자가 들어옵니다. > >34바이트의 문자를 1번MCU가 지속적으로 송신합니다. > >이 데이타 값을 RS485 또는 RS232로 받아서 PC(하이퍼터미널)에서 받아보면 > >아래와 같이 깨끗하게 수신이 됩니다. > >0449857A0000000000000000000000000F >7375857A0000000000000000000000000F >8E81857A0000000000000000000000000F >8E82857A0000000000000000000000000F >8D84857A0000000000000000000000000F >8D83857A0000000000000000000000000F >8D82857A0000000000000000000000000F >8D83857A0000000000000000000000000F >8D82857A0000000000000000000000000F >8D80857A0000000000000000000000000F >8D7F857A0000000000000000000000000F > >그러나 이 데이타를 AM-M128-B 보드의 UART0로 수신하고 UART1으로 보면 > >아래와 같이 수신테이타에 이상한 값이 들어옵니다. > >7D84857A0000000000000000000000000FFFF >8D83857A0000000000000000000000000F >8A82857A0000000000000000000000000F >8083857A0000000000000000000000000FFFF >8D82857A0000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF >FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF >FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF >8D80857A0000000000000000000000000FFFF > >UART, RS232, RS485 모두 비슷한 형태의 이상한 문자가 들어옵니다. > >1. 링버퍼에 관련해서 찾아보아도 특히 찾아볼만한 자료를 찾지 못하였습니다. >2. UART를 RS232, RS485변환 시 문제일수도 있어 관련설정을 변경하면서 PC에서 >모니터링 하였을때문 문제없이 깨끗하게 들어옵니다. > >7D84857A0000000000000000000000000F 이 값은 조이스틱의 값을 읽어 들인 값이어서 수시로 변경이 됩니다. > >해볼만한 것이 있을까요.. > >소스 첨부합니다. RS485로 테스트 중입니다. >(물론 종단 저항 및 케이블 길이 그리고 GND관련도 해 보았습니다.) > >//ICC-AVR application builder : 2009-05-15 오후 7:45:48 >// Target : M128 >// Crystal: 16.000Mhz > >#include <iom128v.h> >#include <macros.h> >#include <stdio.h> > >volatile unsigned char RS485; >volatile unsigned char RS232; > >// printf 와 scanf 오류 방지. 시작 ------------------------------------ > >// scanf 함수 사용시 추가할 것. >int getchar(void) >{ > while ((UCSR0A & 0x80) == 0); >// while ((UCSR1A & 0x80) == 0); //232 수신전용 > > return UDR0; >// return UDR1; //232 수신전용 >} > >// printf 함수 사용시 추가할 것. >int putchar(char c) >{ >// while (((UCSR0A>>UDRE0)&0x01) == 0) ; // UDRE, data register empty //485 송신전용 > while (((UCSR1A>>UDRE1)&0x01) == 0) ; // UDRE, data register empty > >// UDR0 = c; //485 송신전용 > UDR1 = c; > return c; >} > >// printf 와 scanf 오류 방지. 종료 ------------------------------------ > >void port_init(void) >{ > PORTA = 0x00; > DDRA = 0x00; > PORTB = 0x00; > DDRB = 0x00; > PORTC = 0x00; //m103 output only > DDRC = 0x00; > PORTD = 0x00; > DDRD = 0x00; > PORTE = 0x00; > DDRE = 0x00; > PORTF = 0x00; > DDRF = 0x00; > PORTG = 0x00; > DDRG = 0x00; >} > >//UART0 initialize >// desired baud rate: 9600 >// actual: baud rate:9615 (0.2%) >// char size: 8 bit >// parity: Disabled >void uart0_init(void) >{ > UCSR0B = 0x00; //disable while setting baud rate > UCSR0A = 0x00; > UCSR0C = 0x06; > UBRR0L = 0x67; //set baud rate lo > UBRR0H = 0x00; //set baud rate hi > UCSR0B = 0xD8; >} > >#pragma interrupt_handler uart0_rx_isr:iv_USART0_RXC >void uart0_rx_isr(void) >{ > //uart has received a character in UDR > RS485=UDR0; >} > >#pragma interrupt_handler uart0_tx_isr:iv_USART0_TXC >void uart0_tx_isr(void) >{ > //character has been transmitted >} > >//UART1 initialize >// desired baud rate:9600 >// actual baud rate:9615 (0.2%) >// char size: 8 bit >// parity: Disabled >void uart1_init(void) >{ > UCSR1B = 0x00; //disable while setting baud rate > UCSR1A = 0x00; > UCSR1C = 0x06; > UBRR1L = 0x67; //set baud rate lo > UBRR1H = 0x00; //set baud rate hi > UCSR1B = 0xD8; >} > >#pragma interrupt_handler uart1_rx_isr:iv_USART1_RXC >void uart1_rx_isr(void) >{ > //uart has received a character in UDR > RS232=UDR1; >} > >#pragma interrupt_handler uart1_tx_isr:iv_USART1_TXC >void uart1_tx_isr(void) >{ > //character has been transmitted >} > >//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(); > uart0_init(); > uart1_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 n) >{ > volatile int i,j; > for(i=0;i<n;i++) > { > for(j=0;j<100;j++); > } >} > >void main(void) >{ > > volatile unsigned char sw; > > init_devices(); > DDRA = 0xFF; // PORTA 출력지정 > DDRC = 0xFF; // PORTC 출력지정 > DDRD = 0xFF; // PORTD 출력지정 485 RTX LOW 지정을 위해 > > printf(" ROV 제작 테스트 \\n\\r\\r\\r\\r\\r\\r"); > > while(1){ > printf("%c",RS485); > } // while end >} // main end > > > > > > >
2956 답변완료ADC관련 문의 권은조 2009-05-21 1,299
안녕하세요 KD-128pro를 사용하여 포토센서로부터 아날로그 신호를 받고 있는데 출력 값을 받을 수 없어서 문의 드립니다. 먼저 회로도 연결은 다음과 같습니다. 포토센서에는 KD-128pro에서 나오는 12V와 GND를 연결하여 주었습니다. 그후 포토센서의 출력신호 11.5V(센서의 잔류전압에의해 조금 다운됨)를 7805레귤레이터를 사용하여 5V로 다운 시켰습니다. 다운된 신호는 PORTF의 1번핀(ADC0)에 연결하였고 7805레귤레이터의 GND는 PORTF의 9번핀(GND)에 연결 시켰습니다. 그후 귀사의 홈페이지에 있는 ADC값을 읽는 소스를 사용하여 RS232로 출력하여 보았는데 ADC0의 값이 0으로 찍히는데 0으로 찍히는건 신호를 못 받는 다는 의미가 맞는지요?(연결을 안한 다른 채널은 랜덤한 값이 나옵니다) 7805레귤레이터를 사용한 것은 문제가 되질 않는지요? (센서쪽 에는 LED를 달아서 출력이 나오는 것은 확인하고 있습니다. )
관리자 답변 N.T.C · 2009-05-21
안녕하세요....고객님.... 7805는 5V이상의 전원을 5V로 다운시키는 것은 맞지만 고객님과 같은 용도로 사용하는 것은 무리가 있습니다. 예를 들어 7805의 입력전압을 2V이하로 가정했을때 고객님의 의도대로 될려면 입력값과 같은 출력값이 나와야 하는데 실제론 0V가 나옵니다. 감사합니다. >안녕하세요 > >KD-128pro를 사용하여 포토센서로부터 아날로그 신호를 받고 있는데 출력 값을 받을 수 없어서 문의 드립니다. > >먼저 회로도 연결은 다음과 같습니다. > >포토센서에는 KD-128pro에서 나오는 12V와 GND를 연결하여 주었습니다. >그후 포토센서의 출력신호 11.5V(센서의 잔류전압에의해 조금 다운됨)를 7805레귤레이터를 사용하여 5V로 다운 시켰습니다. 다운된 신호는 PORTF의 1번핀(ADC0)에 연결하였고 7805레귤레이터의 GND는 PORTF의 9번핀(GND)에 연결 시켰습니다. > >그후 귀사의 홈페이지에 있는 ADC값을 읽는 소스를 사용하여 RS232로 출력하여 보았는데 ADC0의 값이 0으로 찍히는데 0으로 찍히는건 신호를 못 받는 다는 의미가 맞는지요?(연결을 안한 다른 채널은 랜덤한 값이 나옵니다) > >7805레귤레이터를 사용한 것은 문제가 되질 않는지요? > >(센서쪽 에는 LED를 달아서 출력이 나오는 것은 확인하고 있습니다. ) >
2955 답변완료AM-DCX-XX 관련 질문인데요.. 채희석 2009-05-21 1,448
안녕하세요. AM-DC모듈을 구매했는데요. 회로에 궁금한점이 생겨서요.. DC모터 드라이버에서 인가 전원이 DC인데 브릿지 다이오드가 들어가는 이유를 알수 있나요?? 그리고 모터 드라이버의 회로도를 구하고싶은데요.. 가능하련지요..
관리자 답변 N.T.C · 2009-05-21
안녕하세요...고객님... 모터모듈에 브릿지 다이오드가 들어간 이유는 전원부를 위한 것이 아니라 출력쪽(즉모터부)의 모터에 의한 역기전압을 방지하기 위해서입니다. 모터 드라이브를 방지하기 위해서지요. 저희 회사에서 공개하는 회로도는 자료실=>기존자료실에 가셔서 "회로도"검색하시면 나옵니다. 아직 공개되지 않았다면 회사 사정상 비공개를 택한것이나깐 이해바랍니다. 감사합니다. >안녕하세요. AM-DC모듈을 구매했는데요. >회로에 궁금한점이 생겨서요.. >DC모터 드라이버에서 인가 전원이 DC인데 브릿지 다이오드가 들어가는 이유를 알수 있나요?? >그리고 모터 드라이버의 회로도를 구하고싶은데요.. >가능하련지요..
2954 답변완료usb-isp v.3.0 드라이버 질문입니다. 유성종 2009-05-21 1,346
안녕하세요 드라이버 설치에 관해 문의합니다. usb-isp 를 드라이버 설치하는데 있어서 장치관리자에 cp2103 usb to usart bridge controller 가 떠서 하드웨어적인 인식은 되나 드라이버 설치하면 [물론 드라이버를 자료실에서 다운하고 설치하였습니다만] usb serial N.T.C 지정된 파일을 찾을 수 없습니다 라면서 설치가 실패합니다. 드라이버가 제대로 설치가 안되는것 같습니다. 해결 부탁드립니다.
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 고객님, 저희 NewTC 제품을 이용하여 주셔서 감사합니다. 제품 출하 검사에서 V03을 처음 생산하다 보니, 절차상 USB PID를 설정하는 부분을 빼고, 작업하여 내보낸 제품이 20여개 됩니다. 그 제품 중 하나를 받으신 것 같구요. 그래서, USB Serial N.T.C로 잡히지 않고, CP2103 Silabs.....(COMx)로 잡히게 됩니다. 하지만, 아래 드라이버를 깔으셔야 가능합니다. 자료실에 가서, V03 Driver 문제발생시 라고 된 부분을 클릭하여 다운받아서, 설치하세요. 드라이버 잡히는 이름은 칩 제조사로 잡히지만, 동작에는 아무런 문제가 없습니다. 만약에 USB Serial N.T.C로 잡고 싶으시다면, 본사로 내방하여 주시거나 택배로 보내주시면 그것도 처리해서 보내드리겠습니다. 이 경우 택배비는 본사 A/S 정책에 의해 본사가 부담하게 됩니다. 감사합니다. >안녕하세요 > >드라이버 설치에 관해 문의합니다. usb-isp 를 드라이버 설치하는데 있어서 >장치관리자에 cp2103 usb to usart bridge controller 가 떠서 하드웨어적인 인식은 되나 드라이버 설치하면 [물론 드라이버를 자료실에서 다운하고 설치하였습니다만] > >usb serial N.T.C >지정된 파일을 찾을 수 없습니다 라면서 설치가 실패합니다. >드라이버가 제대로 설치가 안되는것 같습니다. 해결 부탁드립니다.
2953 답변완료ADC 의 AREF질문입니다. 남궁해든 2009-05-21 1,313
ADC 를 하려고 하는데요 AREF 5v로 기준전압을 잡으려고 합니다. 그러면 AVCC 와 AREF를 VCC와 연결해 주면 되나요? 또한 RL회로를 달아야 한다고 하는데 10uH,100nF 정도면 괜찮을까요?
관리자 답변 N.T.C · 2009-05-21
안녕하세요? 고객님, 저희 NewTC 제품을 이용하여 주셔서 감사합니다. 본사의 ATMEGA128 모듈만 사용하신다면 그렇게 하시면 되구요. 본사의 메인 보드와 함께 사용하신다면, 이미 AVCC와 AREF가 5V에 연결되어 있습니다. 하지만, AREF를 3.3V에 연결하면 3.3V로 사용이 가능하도록 회로 처리가 되어 있습니다. 감사합니다. >ADC 를 하려고 하는데요 > >AREF 5v로 기준전압을 잡으려고 합니다. > >그러면 AVCC 와 AREF를 VCC와 연결해 주면 되나요? > >또한 RL회로를 달아야 한다고 하는데 10uH,100nF 정도면 괜찮을까요?
2952 답변완료회로도 첨부해서 다시 문의드립니다 이지은 2009-05-21 1,412
이 회로도입니다. 이대로 만들어도 되는지 궁금합니다^^
관리자 답변 이지은 · 2009-05-21
그리고 ba6208을 atmega16과 부착시키려고하는데 크리스탈처럼 가까이 붙여야하나요?
2951 답변완료방금 usb-isp 를 수령했습니다..그런데.. 김영환 2009-05-21 1,394
수고하십니다. 방금 귀사의 usb-isp v.3.0 을 수령하엿씁니다. 사서 노트북 usb 허브에 연결하였지만 장치관리자에서 인식이 안되는것 같습니다. 타 제품을 연결하면 이상이 없어서 해결방법을 찾지 못하고있는데 처리좀 부탁드립니다.
관리자 답변 N.T.C · 2009-05-21
안녕하세요...고객님.. USBISP는 USB허브를 통해 사용할 수 없습니다. 대부분의 USB-TO-SEREAL 제품들도 허브를 통해서는 안되는 걸로 알고 있습니다. 직접 컴퓨터 USB에 연결해서 사용할 수 밖에 없을것 같습니다. 감사합니다. >수고하십니다. 방금 귀사의 usb-isp v.3.0 을 수령하엿씁니다. > >사서 노트북 usb 허브에 연결하였지만 장치관리자에서 인식이 안되는것 같습니다. >타 제품을 연결하면 이상이 없어서 해결방법을 찾지 못하고있는데 처리좀 부탁드립니다.
2950 답변완료질문드립니다. 이지은 2009-05-21 1,392
현재 DC모터 모듈(AM-CD2L)을 구매하였습니다 모듈로는 모터 작동되는것을 확인했습니다. 모듈 사용안하고 회로를 구성하고 싶어서 BA6208칩을 구매해서 부착중에 궁금한점이 있어서요 홈페이지에서 본 회로도(4.7k 저항 두개와 다이오드 브릿지 연결한 회로요)대로 만들었는데 제어가 안되더라고요. 혹시나 ba6208 칩 뒤에 RF라고 쓰여있던데, 이 칩도 atmega16에 가까이 해서 달아야 하는 것인지 궁금합니다. 회로도 업로드 해두었습니다
관리자 답변 N.T.C · 2009-05-21
안녕하세요...고객님.. 정확히 어떤 회로도를 보고 계신지.... 핀번호는 제대로 확인하셨나요? 2,3(로직Input), 5(GND), 6(Vcc), 7,8(OUTPUT)이렇게 하시면 됩니다. 드릿지 다이오드랑 4.7K저항을 제거한후 사용해보세요. 감사합니다. >현재 DC모터 모듈(AM-CD2L)을 구매하였습니다 >모듈로는 모터 작동되는것을 확인했습니다. > >모듈 사용안하고 회로를 구성하고 싶어서 BA6208칩을 구매해서 부착중에 >궁금한점이 있어서요 >홈페이지에서 본 회로도(4.7k 저항 두개와 다이오드 브릿지 연결한 회로요)대로 >만들었는데 제어가 안되더라고요. > >혹시나 ba6208 칩 뒤에 RF라고 쓰여있던데, 이 칩도 atmega16에 가까이 해서 달아야 하는 것인지 궁금합니다. >
2949 답변완료AM-RFMOD 질문입니다. 조용상 2009-05-21 1,303
디바이스마트에서 AM-RFMOD 2개를 사서 시리얼 유선통신을 대체하려고 했습니다. 그런데 초기화 설정이 되질 않아서 여기 게시판에 찾아보니 전원 문제로 고장난 분들과 증상이 비슷하더군요. 아무것도 수신 안했는데 RX만 깜빡거리고 다른 하나는 전원 등만 깜빡거립니다. 본사에 찾아가서 고장났는지 점검할 수 있을까요? 혹시 고장났다면 교환이 가능한지도 알려주시면 감사하겠습니다.
관리자 답변 N.T.C · 2009-05-21
안녕하세요..고객님... 본사로 찾아오시면 점검및 A/S가 가능합니다. 경우에 따라서는 유료 A/S가 될수 있습니다. 본사의 업무 시간은 오전 10시부터 오후 6시까지입니다. 감사합니다. >디바이스마트에서 AM-RFMOD 2개를 사서 시리얼 유선통신을 대체하려고 했습니다. >그런데 초기화 설정이 되질 않아서 여기 게시판에 찾아보니 전원 문제로 고장난 분들과 증상이 비슷하더군요. >아무것도 수신 안했는데 RX만 깜빡거리고 다른 하나는 전원 등만 깜빡거립니다. > >본사에 찾아가서 고장났는지 점검할 수 있을까요? >혹시 고장났다면 교환이 가능한지도 알려주시면 감사하겠습니다.