Q&A
| 번호 | 제목 | 작성자 | 등록일 | 조회 |
|---|---|---|---|---|
| 9623 | 답변완료아래글 질문 내용 추가합니다 | 김상진 | 2016-05-17 | 1,570 |
|
만약 3.3 v 전원을 인가하게 되면
통신선 연결시 따로 전압분배기를 달지 않아도 되는건가요?
관리자 답변
본사 모듈이용시5V이용하시고 전압분배기 필요없습니다.
감사합니다
>
>
> 만약 3.3 v 전원을 인가하게 되면
>
> 통신선 연결시 따로 전압분배기를 달지 않아도 되는건가요?
>
|
||||
| 9622 | 답변완료블루투스 모듈 연결 질문 | 김상진 | 2016-05-17 | 1,561 |
|
ab m128 b 보드에
블루투스모듈(슬레이브) 를 달아서 스마트폰과 통신을 하려고 합니다
블루투스 모듈이 5v 전원을 사용한다고 하던데 전원은 보드의 5v 를 그대로 인가한다하고
tx. rx 통신선 연결시 전압분배회로 같은 것을 추가해주어야하나요?
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용해 주셔서 감사합니다.
전원은 GND와 VCC에 gnd와 5V인가하시면되시구요.
전압분배회로는 필요없고 RX. TX만 서로 크로스해주시면 됩니다.
감사합니다
>
>
> ab m128 b 보드에
>
> 블루투스모듈(슬레이브) 를 달아서 스마트폰과 통신을 하려고 합니다
>
> 블루투스 모듈이 5v 전원을 사용한다고 하던데 전원은 보드의 5v 를 그대로 인가한다하고
>
> tx. rx 통신선 연결시 전압분배회로 같은 것을 추가해주어야하나요?
>
|
||||
| 9621 | 답변완료ISP Mode Error에 관해 질문드립니다. | 김성헌 | 2016-05-17 | 1,990 |
|
USB 전원용 케이블 (SE-USBPOWER)
AVR용 USB-ISP 라이트 V03.5(AD-USBISP-L V03.5)
AVR MEGA 8 모듈 라이트 (AM-8PL) 를 사용중이고
AVR Studio 4 를 사용중입니다.
구매후 처음 사용하려고하는데
코드를 칩에 넣으려고 Program을 누르면
ISP Mode Error라고 뜨면서 오류가 납니다.
Main 탭에서 ISP 주파수를 아무리 낮춰봐도 해결이 안되네요.
드라이브는 다 설치했구요... 핀도 제대로 연결했어요
뭐가 고장이 난건지 ㅠㅠ
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용해 주셔서 감사합니다.
본사로 전체를 가지고 방문하시면 그 자리에서 처리해드리며,
택배로도 AS가능합니다.
감사합니다.
>
>
> USB 전원용 케이블 (SE-USBPOWER)
>
> AVR용 USB-ISP 라이트 V03.5(AD-USBISP-L V03.5)
>
> AVR MEGA 8 모듈 라이트 (AM-8PL) 를 사용중이고
>
> AVR Studio 4 를 사용중입니다.
>
> 구매후 처음 사용하려고하는데
>
> 코드를 칩에 넣으려고 Program을 누르면
>
> ISP Mode Error라고 뜨면서 오류가 납니다.
>
> Main 탭에서 ISP 주파수를 아무리 낮춰봐도 해결이 안되네요.
>
> 드라이브는 다 설치했구요... 핀도 제대로 연결했어요
>
> 뭐가 고장이 난건지 ㅠㅠ
>
|
||||
| 9620 | 답변완료am 3axis v03 자이로센서 질문드립니다 답변 바로 달아주세요~!! | 이한수 | 2016-05-14 | 1,778 |
|
이 센서를 사용 할 때 VCC를 아두이노 3.3V 에 연결하고 X,Y,Z축 센서는 아두이노 아날로그 핀에 연결하고
GND 는 GND에 꽂고 나머지 P/D, F/S, S/T 는 연결 안하거나 그라운드에 물려주면 되는거죠?
S/T 는 셀프테스틑 모드 해서 테스르 할 때 쓰는건 알겠고 P/D 는 파워 다운과 F/S 풀스케일의 모드를 잘 모르겠습니다 풀스케일은 연결안하면 2g 모드고 vcc를 주면 6g 라서 민감도 가 더 커진다고 하는데, F/S 과 P/D에 VCC를 준다는게 3.3V를 바로 연결하라는 건가요? 아니면 3.3V를 연결한 VCC포트를 연결해주라는 건가요??
그리고 Z축 센서를 사용하고 싶은데 코드 정보를 얻고 싶습니다.
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용해 주셔서 감사합니다.
AM-3AXIS V03센서는 자이로가 아니라 3축 가속도센서 입니다.
네 이해하신데로 XYZ를 제외하고는 연결하지 않으면 default값으로 설정됩니다.
이 모듈의 전원에 3.3V를 연결해야하고,
나머지 팬들에 High를 주는것은 3.3V를 가해주어도 되지만, 전원핀들 제외하고 AVR등에서 3.3V나 5V등으로 GPIO로 신호는 줘도됩니다.
소스는 자료실에서 검색해 예제를 사용하세요.
축은 모두 사용법이 같습니다.
감사합니다.
>
>
> 이 센서를 사용 할 때 VCC를 아두이노 3.3V 에 연결하고 X,Y,Z축 센서는 아두이노 아날로그 핀에 연결하고
> GND 는 GND에 꽂고 나머지 P/D, F/S, S/T 는 연결 안하거나 그라운드에 물려주면 되는거죠?
> S/T 는 셀프테스틑 모드 해서 테스르 할 때 쓰는건 알겠고 P/D 는 파워 다운과 F/S 풀스케일의 모드를 잘 모르겠습니다 풀스케일은 연결안하면 2g 모드고 vcc를 주면 6g 라서 민감도 가 더 커진다고 하는데, F/S 과 P/D에 VCC를 준다는게 3.3V를 바로 연결하라는 건가요? 아니면 3.3V를 연결한 VCC포트를 연결해주라는 건가요??
>
> 그리고 Z축 센서를 사용하고 싶은데 코드 정보를 얻고 싶습니다.
>
|
||||
| 9619 | 답변완료인터럽트가 왜 D0/D1에서는 동작 않고, D2/D3에서 동작할까요? | 이정주 | 2016-09-07 | 1,646 |
|
아래 소스에서요.
-------------------------------------------------------------------------------------------------
프로그램의 의도는
SW_START를 한 번 누르면 start_flag가 true로 되고.
SW_CH1_TEST를 한 번 누르면 SW_CH1_TEST_flag가 true로 되고.
SW_CH2_TEST를 한 번 누르면 SW_CH2_TEST_flag가 true로 되고.
3중의 어느 하나가 먼저 true로 되면 다른 sw를 눌러도 변화가 없어야 합니다.
true로 된 flag들은 SW_STOP나 TIMER_OUT 신호에 의해서 Interrupt가 걸려야만 false로 해제되도록 하면 되는 것입니다.
-------------------------------------------------------------------------------------------------
그런데 실제 동작은
SW_START(D2)로 SW_START_flag는 true로 되는데, SW_START를 놓으면 다시 저절로 false로 바뀝니다.
그리고 SW_START를 놓는 순간 intr_STOP_SW() ISR로 들어갔다 나오고요.
SW_CH1_TEST(D3)로 SW_CH1_TEST_flag도 true로 되는데, SW_CH1_TEST를 놓으면 다시 저절로 false로 바뀝니다.
그리고 SW_CH1_TEST를 놓는 순간 intr_TIMER_OUT() ISR로 들어갔다 나오고요.
SW_CH2_TEST(D4)는 SW_CH2_TEST_flag로 true로 변하고, SW_CH2_TEST를 놓아도 true 상태를 유지하여 정상 동작을 합니다.
그런데 STOP_SW(D0)나 TIMER_OUT(D1) 신호로도 인터럽트가 걸리지도 않고, false로 바뀌지도 않습니다.
-------------------------------------------------------------------------------------------------
어떻게 하면 프로그램의 의도처럼 동작하게 할 수 있을까요?
바쁘시겠지만 답변 좀 부탁 드리겠습니다.
감사합니다.
-------------------------------------------------------------------------------------------------
그리고 ISR은 D0와 D1에 걸어 놓았는데, D0와 D1에서는 인터럽트가 안 걸리고, D2, D3 Pin을 Low로 해야 ISR로 진입하여 "1st Interrupt"과 "2nd Interrupt"를 Print 합니다.
DM-USTYLE-CT V1.0 보드 2개를 실험했는 데, 모두 동일합니다.
바쁘시겠지만 원인 좀 알려 주시면 대단히 감사하겠습니다.
-------------------------------------------------------------------------------------------------
#define SW_START 2 // D2 (Pin 4, INPUT_PULLUP)
#define SW_CH1_TEST 3 // D3 (RL_CH1_SOL) (Pin 5, INPUT_PULLUP)
#define SW_CH2_TEST 4 // D4 (RL_CH2_SOL) (Pin 6, INPUT_PULLUP)
#define SW_STOP 0 // D0, Interrupt ID 0 (Pin 2, INPUT_PULLUP)
//5
#define TIMER_OUT 1 // D1, Interrupt ID 1 (Pin 3, INPUT_PULLUP)
#define TIMER_INA 10 // D10 (Pin 16, OUTPUT)
#define TIMER_RESET 11 // D11 (Pin 17, OUTPUT)
#define ON 1 // 상수
#define OFF 0
//12
boolean state = false; //
boolean start_flag = false; //
boolean ch1_flag = false; //
boolean ch2_flag = false; //
void setup(){ // Assign INPUT/OUTPUT Port
//19
pinMode(SW_START, INPUT_PULLUP); // SW_START SW_START, 누르면 Low 입력
pinMode(SW_CH1_TEST, INPUT_PULLUP); // SW_CH1_TEST (RL_CH1_SOL), SW_CH1_TEST (RL_CH1_SOL), 누르면 Low 입력
pinMode(SW_CH2_TEST, INPUT_PULLUP); // SW_CH2_TEST (RL_CH2_SOL), SW_CH2_TEST (RL_CH2_SOL), 누르면 Low 입력
pinMode(SW_STOP, INPUT_PULLUP); // STOP_SW, STOP_SW, 누르면 Low 입력
//24
pinMode(TIMER_OUT, INPUT_PULLUP); // TIMER_OUT (Timer(CT4S) Time Out Signal), Time OUT 시 Low 입력
pinMode(TIMER_INA, OUTPUT); // Timer_INA (CT4S)
pinMode(TIMER_RESET, OUTPUT); // (CT4S)
//28
attachInterrupt(0, intr_STOP_SW, FALLING); // STOP SW가 눌리면(High) 인터럽트 발생
attachInterrupt(1, intr_TIMER_OUT, FALLING); // Time Out 되면(High) 인터럽트 발생
Serial.begin(9600);
}
//35
void intr_STOP_SW() { // ISR(Interrupt Service Routine), 입력시
Serial.println("1st Interrupt");
start_flag = false;
ch1_flag = false;
ch2_flag = false;
}
//43
void intr_TIMER_OUT() { // ISR(Interrupt Service Routine), TIMER_OUT 입력시
Serial.println("2nd Interrupt");
start_flag = false;
ch1_flag = false;
ch2_flag = false;
}
//51
void loop(){ //
int sw_start_val = digitalRead(SW_START);
int sw_ch1_test_val = digitalRead(SW_CH1_TEST);
int sw_ch2_test_val = digitalRead(SW_CH2_TEST);
int sw_stop_val = digitalRead(SW_STOP);
int timer_out_val = digitalRead(TIMER_OUT);
if ((sw_start_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("1st Step");
start_flag = true;
} else if ((sw_ch1_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("2nd Step");
ch1_flag = true;
} else if ((sw_ch2_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("3rd Step");
ch2_flag = true;
}
//68
Serial.print("start_flag=");
Serial.println(start_flag);
Serial.print("ch1_flag=");
Serial.println(ch1_flag);
Serial.print("ch2_flag=");
Serial.println(ch2_flag);
Serial.println("-------------------------------------------");
Serial.println("");
Serial.println("");
Serial.println("");
Serial.println("");
delay(500);
}
//85
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨를 이용하여 주셔서 감사합니다.
어떤 하드웨어를 사용중이신지와 컴파일러, 사용 OS 등을 함께 써주셔야 답변이 가능합니다.
고객들의 개발환경은 매우 다양하므로, 부정확하면 그만큼 상상의 나래를 펴게 됩니다.
일단, 고객님은 아두이노 시리즈 중 하나를 쓰시나 봅니다.
그리고, 인터럽트를 attachInterrupt()를 통해 사용할 때에는
const byte interruptPin = 2;
attachInterrupt(digitalPinToInterrupt(interruptPin), intr_STOP_SW, FALLING);
위의 이런 식으로 사용하는 것이 안전합니다. 왜냐하면 인터럽트는 사용하는 아두이노에 따라 다양하게 번호가 바뀔 수 있기 때문입니다.
또한, 인터럽트가 발생하는 시점을 표시하신 FALLING 이라는 것은 High일때 발생하는 것이 아니고,.
High->Low가 되는 순간에 발생하는 겁니다.
이상의 내용을 참고로 하여 한번 생각해 보세요.
감사합니다.
>
>
> 아래 소스에서요.
>
> -------------------------------------------------------------------------------------------------
> 프로그램의 의도는
> SW_START를 한 번 누르면 start_flag가 true로 되고.
> SW_CH1_TEST를 한 번 누르면 SW_CH1_TEST_flag가 true로 되고.
> SW_CH2_TEST를 한 번 누르면 SW_CH2_TEST_flag가 true로 되고.
> 3중의 어느 하나가 먼저 true로 되면 다른 sw를 눌러도 변화가 없어야 합니다.
> true로 된 flag들은 SW_STOP나 TIMER_OUT 신호에 의해서 Interrupt가 걸려야만 false로 해제되도록 하면 되는 것입니다.
> -------------------------------------------------------------------------------------------------
> 그런데 실제 동작은
> SW_START(D2)로 SW_START_flag는 true로 되는데, SW_START를 놓으면 다시 저절로 false로 바뀝니다.
> 그리고 SW_START를 놓는 순간 intr_STOP_SW() ISR로 들어갔다 나오고요.
>
> SW_CH1_TEST(D3)로 SW_CH1_TEST_flag도 true로 되는데, SW_CH1_TEST를 놓으면 다시 저절로 false로 바뀝니다.
> 그리고 SW_CH1_TEST를 놓는 순간 intr_TIMER_OUT() ISR로 들어갔다 나오고요.
>
> SW_CH2_TEST(D4)는 SW_CH2_TEST_flag로 true로 변하고, SW_CH2_TEST를 놓아도 true 상태를 유지하여 정상 동작을 합니다.
> 그런데 STOP_SW(D0)나 TIMER_OUT(D1) 신호로도 인터럽트가 걸리지도 않고, false로 바뀌지도 않습니다.
> -------------------------------------------------------------------------------------------------
> 어떻게 하면 프로그램의 의도처럼 동작하게 할 수 있을까요?
> 바쁘시겠지만 답변 좀 부탁 드리겠습니다.
> 감사합니다.
> -------------------------------------------------------------------------------------------------
> 그리고 ISR은 D0와 D1에 걸어 놓았는데, D0와 D1에서는 인터럽트가 안 걸리고, D2, D3 Pin을 Low로 해야 ISR로 진입하여 "1st Interrupt"과 "2nd Interrupt"를 Print 합니다.
> DM-USTYLE-CT V1.0 보드 2개를 실험했는 데, 모두 동일합니다.
> 바쁘시겠지만 원인 좀 알려 주시면 대단히 감사하겠습니다.
>
> -------------------------------------------------------------------------------------------------
>
> #define SW_START 2 // D2 (Pin 4, INPUT_PULLUP)
> #define SW_CH1_TEST 3 // D3 (RL_CH1_SOL) (Pin 5, INPUT_PULLUP)
> #define SW_CH2_TEST 4 // D4 (RL_CH2_SOL) (Pin 6, INPUT_PULLUP)
> #define SW_STOP 0 // D0, Interrupt ID 0 (Pin 2, INPUT_PULLUP)
> //5
> #define TIMER_OUT 1 // D1, Interrupt ID 1 (Pin 3, INPUT_PULLUP)
> #define TIMER_INA 10 // D10 (Pin 16, OUTPUT)
> #define TIMER_RESET 11 // D11 (Pin 17, OUTPUT)
>
> #define ON 1 // 상수
> #define OFF 0
> //12
> boolean state = false; //
> boolean start_flag = false; //
> boolean ch1_flag = false; //
> boolean ch2_flag = false; //
>
> void setup(){ // Assign INPUT/OUTPUT Port
> //19
> pinMode(SW_START, INPUT_PULLUP); // SW_START SW_START, 누르면 Low 입력
> pinMode(SW_CH1_TEST, INPUT_PULLUP); // SW_CH1_TEST (RL_CH1_SOL), SW_CH1_TEST (RL_CH1_SOL), 누르면 Low 입력
> pinMode(SW_CH2_TEST, INPUT_PULLUP); // SW_CH2_TEST (RL_CH2_SOL), SW_CH2_TEST (RL_CH2_SOL), 누르면 Low 입력
> pinMode(SW_STOP, INPUT_PULLUP); // STOP_SW, STOP_SW, 누르면 Low 입력
> //24
> pinMode(TIMER_OUT, INPUT_PULLUP); // TIMER_OUT (Timer(CT4S) Time Out Signal), Time OUT 시 Low 입력
> pinMode(TIMER_INA, OUTPUT); // Timer_INA (CT4S)
> pinMode(TIMER_RESET, OUTPUT); // (CT4S)
> //28
> attachInterrupt(0, intr_STOP_SW, FALLING); // STOP SW가 눌리면(High) 인터럽트 발생
>
> attachInterrupt(1, intr_TIMER_OUT, FALLING); // Time Out 되면(High) 인터럽트 발생
>
> Serial.begin(9600);
> }
> //35
> void intr_STOP_SW() { // ISR(Interrupt Service Routine), 입력시
> Serial.println("1st Interrupt");
>
> start_flag = false;
> ch1_flag = false;
> ch2_flag = false;
> }
> //43
> void intr_TIMER_OUT() { // ISR(Interrupt Service Routine), TIMER_OUT 입력시
> Serial.println("2nd Interrupt");
>
> start_flag = false;
> ch1_flag = false;
> ch2_flag = false;
> }
> //51
> void loop(){ //
>
> int sw_start_val = digitalRead(SW_START);
> int sw_ch1_test_val = digitalRead(SW_CH1_TEST);
> int sw_ch2_test_val = digitalRead(SW_CH2_TEST);
> int sw_stop_val = digitalRead(SW_STOP);
> int timer_out_val = digitalRead(TIMER_OUT);
>
> if ((sw_start_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("1st Step");
> start_flag = true;
> } else if ((sw_ch1_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("2nd Step");
> ch1_flag = true;
> } else if ((sw_ch2_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("3rd Step");
> ch2_flag = true;
> }
> //68
> Serial.print("start_flag=");
> Serial.println(start_flag);
>
> Serial.print("ch1_flag=");
> Serial.println(ch1_flag);
>
> Serial.print("ch2_flag=");
> Serial.println(ch2_flag);
>
> Serial.println("-------------------------------------------");
> Serial.println("");
> Serial.println("");
> Serial.println("");
> Serial.println("");
> delay(500);
> }
> //85
>
|
||||
| 9618 | 답변완료TIMSK undeclared indentifier 에러 질문 | 문해니 | 2016-05-12 | 1,874 |
|
TIMSK를 선언 안해줘도 잘쓰고 있었고,
보드 설정할때 atmega128로 설정해놓았는데 자꾸 이런에러가 뜨는데 왜일까요?
소스코드
#include <iom1280v.h>
#include <macros.h>
//////////////TIMER/////////////////////
void timer1_1200ms_setting(void)
{
TCCR1A = 0X00;
TCCR1B = 0X05;
TCNT1 = 0XFFFF - 18750;
}
#pragma interrupt_handler TIME_OVF1 : 15
void TIMER_OVF1(void)
{
PORTA = ~(PORTA);
timer1_1200ms_setting();
}
int main(void)
{
TIMSK = 0X04;
DDRA = 0X02;
PORTA = 0X00;
timer1_1200ms_setting();
while(1);
}
error메세지
undeclared identifier 'TIMSK'
관리자 답변
안녕하세요? 고객님,
잘 지내셨어요?
#include <iom1280v.h> ==> #include <iom128v.h>
이렇게 수정해 보세요.
감사합니다.
>
>
> TIMSK를 선언 안해줘도 잘쓰고 있었고,
> 보드 설정할때 atmega128로 설정해놓았는데 자꾸 이런에러가 뜨는데 왜일까요?
>
> 소스코드
> #include <iom1280v.h>
> #include <macros.h>
>
> //////////////TIMER/////////////////////
> void timer1_1200ms_setting(void)
> {
> TCCR1A = 0X00;
> TCCR1B = 0X05;
> TCNT1 = 0XFFFF - 18750;
>
> }
> #pragma interrupt_handler TIME_OVF1 : 15
> void TIMER_OVF1(void)
> {
> PORTA = ~(PORTA);
> timer1_1200ms_setting();
> }
>
> int main(void)
> {
> TIMSK = 0X04;
>
> DDRA = 0X02;
> PORTA = 0X00;
>
> timer1_1200ms_setting();
>
> while(1);
> }
>
>
>
> error메세지
>
> undeclared identifier 'TIMSK'
>
|
||||
| 9617 | 답변완료kr-dl16라인트레이서 질문 | 이수현 | 2016-05-11 | 1,700 |
|
kr-dl16라인트레이서를 구매했는데
안해 프로그래밍되있는 소스를 hex파일로 뽑아내고 싶어서
뉴티시에서 구매한 usbisp 3.6버전으로 연결해 atmel-studio6.0버전에서
device programming 창에서 read버튼을 했더니 안되서 질문드립니다.
아 그리고 usbisp 3.6버전이 장치관리자에서 com2로 인식이 되는데
atmel-studio 6.0에서 다운로드를 하려고 apply 버튼을 눌렀는데 unable connect라고 뜨는데 어떻게 해야하나요?
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
일단, hex 파일은 컴파일 후, 소스코드의 폴더에 저장되어 있으므로, 일부러 뽑지 않으셔도 됩니다.
그리고, USBISP가 연결되어 있지 않은 상태에서 read 등을 누르거나 해도 동작하지 않습니다.
ATMEL Studio V6.0 이후에서는
Tools --> Add Target 하시고, 첨부한 1.png 그림처럼
Select tool에서 STK500을 선택하시고, 밑에서 COM포트 선택되신 COM2로 선택하시면 됩니다.
(저는 COM3에 연결되어 있어서 COM3라고 뜨지만요.)
Apply를 눌러서 적용해 주시고,
다시 Tools -->Device Programming 을 눌러서,
Tool에는 STK500 COM2을
Device는 ATMEGA128을
Interface에는 ISP를 하신 다음 적용하여 주세요.
ISP Clock를 1.843MHz에 조정한 후 Set 하여 주시고,
그런 다음에 memories 눌러서 flash 파일에서 read 선택하면 뽑기고, Program 선택하면 Write라서 필요에 따라서, 선택하여 주시면 됩니다.
감사합니다.
>
>
> kr-dl16라인트레이서를 구매했는데
>
> 안해 프로그래밍되있는 소스를 hex파일로 뽑아내고 싶어서
>
> 뉴티시에서 구매한 usbisp 3.6버전으로 연결해 atmel-studio6.0버전에서
>
> device programming 창에서 read버튼을 했더니 안되서 질문드립니다.
>
> 아 그리고 usbisp 3.6버전이 장치관리자에서 com2로 인식이 되는데
>
> atmel-studio 6.0에서 다운로드를 하려고 apply 버튼을 눌렀는데 unable connect라고 뜨는데 어떻게 해야하나요?
>
|
||||
| 9616 | 답변완료se-sm243 질문 | 김상진 | 2016-05-11 | 1,797 |
|
sm243 모터는 동기기인가요. 유도기인가요
구체적으로 어떤 분류에 속하는지 알려주시면 감사하겠습니다
영구자석이 사용된 동기기(pmsm) 아닌가요?
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
SE-SM243 모터는 유니폴라(UNIPOLAR)형 4상스테핑 모터입니다.
즉, 항상 전류가 한쪽 방향으로만 흐르는 구동 방식입니다.
내부적으로는 영구자석이 사용되어 있습니다.(PM형이라고 하지요)
감사합니다.
>
>
> sm243 모터는 동기기인가요. 유도기인가요
>
> 구체적으로 어떤 분류에 속하는지 알려주시면 감사하겠습니다
>
> 영구자석이 사용된 동기기(pmsm) 아닌가요?
>
|
||||
| 9615 | 답변완료AD-JTAG V02 관련 질문의 건 | 이성준 | 2016-05-10 | 1,976 |
|
수고하십니다.
얼마전 귀사의 AD-JTAG V02를 구매, 사용중에 있습니다.
개발 환경은 이하와 같으며 디버깅시(디버깅 스타트 버튼을 눌렀을때)
첨부와 같은 에러와 함께 프로그램이 종료됩니다.(에러 메세지 첨부)
Windows 7 32비트
Atmega128칩 사용
AVR Studio 4.19 build730 사용
AVRr-toolchain 3.4.2.1573 사용
퓨즈비트설정과 프로그램configuration은 첨부사진과 같습니다.
귀사 페이지에 링크되어있는 AVR Studio 4.19 build730 와 AVRr-toolchain 3.4.2.1573 을 사용하고 있습니다.
첨부의 에러 상황을 회피하고자 4~5회 정도 프로그램 재인스톨을 해보았습니다.
다른 PC에서도 동일하게 재현됩니다.(Windows 7 32비트)
AD-JTAG V02의 문제라고는 생각되지않습니다.
장치관리자에서 드라이버도 잡혀있고 프로그램 라이팅도 되기 때문입니다.
또한, 단순히 시뮬레이터로 설정하여 디버깅시에도 재현되기 때문에
AD-JTAG V02와는 별개의 문제라고 생각되지만, 아무리 찾아봐도 해결방법을 모르겠습니다.
무엇을 확인해봐야 할까요?
경험많은 귀사의 조언부탁드립니다.
관리자 답변
안녕 하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
퓨즈비트 값이 좀 이상합니다.
0xff19ef로 놓고 해보세요.
감사합니다.
>
>
> 수고하십니다.
>
>
> 얼마전 귀사의 AD-JTAG V02를 구매, 사용중에 있습니다.
>
> 개발 환경은 이하와 같으며 디버깅시(디버깅 스타트 버튼을 눌렀을때)
> 첨부와 같은 에러와 함께 프로그램이 종료됩니다.(에러 메세지 첨부)
>
> Windows 7 32비트
> Atmega128칩 사용
> AVR Studio 4.19 build730 사용
> AVRr-toolchain 3.4.2.1573 사용
> 퓨즈비트설정과 프로그램configuration은 첨부사진과 같습니다.
>
> 귀사 페이지에 링크되어있는 AVR Studio 4.19 build730 와 AVRr-toolchain 3.4.2.1573 을 사용하고 있습니다.
>
> 첨부의 에러 상황을 회피하고자 4~5회 정도 프로그램 재인스톨을 해보았습니다.
> 다른 PC에서도 동일하게 재현됩니다.(Windows 7 32비트)
>
> AD-JTAG V02의 문제라고는 생각되지않습니다.
> 장치관리자에서 드라이버도 잡혀있고 프로그램 라이팅도 되기 때문입니다.
>
> 또한, 단순히 시뮬레이터로 설정하여 디버깅시에도 재현되기 때문에
> AD-JTAG V02와는 별개의 문제라고 생각되지만, 아무리 찾아봐도 해결방법을 모르겠습니다.
> 무엇을 확인해봐야 할까요?
>
> 경험많은 귀사의 조언부탁드립니다.
>
|
||||
| 9614 | 답변완료avr용 usb-jtag 질문 | 이수현 | 2016-05-10 | 1,769 |
|
AD-JTAG V02 이 제품이 atmel studio6.0이나 상위 버전에서도 사용 가능한가요?
관리자 답변
안녕 하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
해당제품은 AVR Studio V4.19까지만 사용가능합니다.
감사합니다.
>
>
> AD-JTAG V02 이 제품이 atmel studio6.0이나 상위 버전에서도 사용 가능한가요?
>
|
||||
| 9613 | 답변완료라인트레이서 소스 문의 | 김상진 | 2016-05-10 | 1,704 |
|
sl-128 스테핑 라인트레이서 키트
구동 소스를 보니까 PORTB 에 관한 내용이 있던데 portb가 뭘 뜻하는건가요?
모터드라이버모듈은 ms2씁니다
메인함수 부분보니까 각 case 마다 portb 값을 설정해주던데요?
물리적으로는 portb에 연결된게 없눈데..
관리자 답변
안녕하세요? 고객님,
PORTB에는 LED모듈인 AM-TL8모듈을 물려주고 상태를 눈으로 보고자 했던겁니다.
동작에 영향을 미치지는 않습니다. 궁금증이 풀리셨어요?
감사합니다.
>
>
> sl-128 스테핑 라인트레이서 키트
>
> 구동 소스를 보니까 PORTB 에 관한 내용이 있던데 portb가 뭘 뜻하는건가요?
>
> 모터드라이버모듈은 ms2씁니다
>
> 메인함수 부분보니까 각 case 마다 portb 값을 설정해주던데요?
>
> 물리적으로는 portb에 연결된게 없눈데..
>
|
||||
| 9612 | 답변완료gps 관련 부품 문의입니다. | 백승호 | 2016-05-09 | 1,880 |
|
얼마전에 제가 문의글을 드렸었는데
AD-GPSSUIT V1.0
라는 gps 연결 모듈에 관한 것이었습니다. gps자체가 아닌
gps 모듈과 연결 모듈 AD-GPSSUIT V1.0 를 같이 연결하여
컴퓨터에 연결하였을시에 comport는 연결이 되는데
데이터 송신이 안됩니다.
시리얼 통신으로 연결하였을 시에 따로 어떠한 신호를 줘야되는 것인지요
AD-GPSSUIT V1.0 모듈에 관한 문의입니다.
관리자 답변
안녕하세요? 고객님,
해당 모듈은 수신 전용입니다.
GPS 자체는 송신이 가능한데, 커넥터가 수신쪽만 연결되어 있습니다.
송신쪽은 연결이 되어 있지 않아서, 명령이 먹지 않는 것입니다.
감사합니다.
>
>
> 얼마전에 제가 문의글을 드렸었는데
> AD-GPSSUIT V1.0
> 라는 gps 연결 모듈에 관한 것이었습니다. gps자체가 아닌
>
> gps 모듈과 연결 모듈 AD-GPSSUIT V1.0 를 같이 연결하여
> 컴퓨터에 연결하였을시에 comport는 연결이 되는데
> 데이터 송신이 안됩니다.
> 시리얼 통신으로 연결하였을 시에 따로 어떠한 신호를 줘야되는 것인지요
> AD-GPSSUIT V1.0 모듈에 관한 문의입니다.
>
|
||||
| 9611 | 답변완료모터 질문 | 이수현 | 2016-05-09 | 1,811 |
|
소형 dc 기어드 모터 (모델명 : se-dm)가 모터 드라이버 필요없이
전원만 연결하면 구동 되는건가요?
그리고 구동 전압은 3.3v를 줘도 작동하나요?
또 서보모터 a410 모델도 3.3v를 모터 드라이버 없이 줘도 작동하나요?
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
SE-DM 모터는 전원만 주면 동작합니다.
하지만, CPU에서 신호만 주는 것은 안됩니다. 왜냐하면 전류가 너무 작게 나오기 때문입니다.
또한, SE-DS350 모터도 DC 모터라 같습니다.
다만, SE-A410으로는 서보모터라서 PWM으로 신호를 줘야 하기 때문에 불가합니다.
또한, 5V 사용입니다.
감사합니다.
>
>
> 소형 dc 기어드 모터 (모델명 : se-dm)가 모터 드라이버 필요없이
>
> 전원만 연결하면 구동 되는건가요?
>
> 그리고 구동 전압은 3.3v를 줘도 작동하나요?
>
> 또 서보모터 a410 모델도 3.3v를 모터 드라이버 없이 줘도 작동하나요?
>
|
||||
| 9610 | 답변완료인터럽트가 왜 D0/D1에서는 동작 않고, D2/D3에서 동작할까요? (2) | 이정주 | 2016-09-09 | 1,737 |
|
지난 주 토요일에 갔던 사람입니다.
토요일에도 급해서 찾아 갔었는데, 시간은 흐르고 너무 답답합니다.
Board는 우노 DM-USTYLE-CT V1.0입니다.
프로그램은 당시 사용하던 Arduino cc입니다.
Falling은 제가 나중에 바꾼 것이고요. High에서 Low로 떨어지는 순간에 인터럽트는 맞게 발생하고 있습니다.
그런데 D0/D1에서는 인터럽트가 안 걸리고, D2/D3에서 인터럽트가 걸리는 이유를 모르겠습니다.
혹시 여기 사용하신 CPU가 모든Pin에서 인터럽트가 가능한 아두이노 두에 보드인가요?.
설사 그렇다 해도 분명히 D0/D1에 인터럽트를 걸었는데, 이유를 모르겠습니다.
아래 소스는 인터럽트를 알려 주신 소스로 고쳤지만 마찬가지입니다.
바쁘시겠지만 소스를 복사하셔서 검토 좀 해 주시기 부탁 드립니다.
감사합니다.
------------------------------------------------------------------------------------------------
프로그램의 의도는
SW_START를 한 번 누르면 Low가 되는 순간 start_flag가 true로 되고.
SW_CH1_TEST를 한 번 누르면 Low가 되는 순간 SW_CH1_TEST_flag가 true로 되고.
SW_CH2_TEST를 한 번 누르면 Low가 되는 순간 SW_CH2_TEST_flag가 true로 되고.
3중의 어느 하나가 먼저 true로 되면 다른 sw를 눌러도 변화가 없어야 합니다.
true로 된 flag들은 SW_STOP나 TIMER_OUT 신호에 의해서 Interrupt가 걸려야만 false로 해제되도록 하면 되는 것입니다.
그리고 "#define SW_START 2"에서 2는 D2이지요?
토요일 저와 같이 확인 결과 Pin2가 아니라, D2였지요?
------------------------------------------------------------------------------------------------
#define SW_START 2 // D2 (Pin 4, INPUT_PULLUP)
#define SW_CH1_TEST 3 // D3 (RL_CH1_SOL) (Pin 5, INPUT_PULLUP)
#define SW_CH2_TEST 4 // D4 (RL_CH2_SOL) (Pin 6, INPUT_PULLUP)
//#define SW_STOP 0 // D0, Interrupt ID 0 (Pin 2, INPUT_PULLUP)
// #define TIMER_OUT 1 // D1, Interrupt ID 1 (Pin 3, INPUT_PULLUP)
#define TIMER_INA 10 // D10 (Pin 16, OUTPUT)
#define TIMER_RESET 11 // D11 (Pin 17, OUTPUT)
#define ON 1 // 상수
#define OFF 0
//12
boolean state = false; //
boolean start_flag = false; //
boolean ch1_flag = false; //
boolean ch2_flag = false; //
const byte interruptPin1 = 2;
const byte interruptPin2 = 3;
void setup(){ // Assign INPUT/OUTPUT Port
//19
pinMode(SW_START, INPUT_PULLUP); // SW_START SW_START, 누르면 Low 입력
pinMode(SW_CH1_TEST, INPUT_PULLUP); // SW_CH1_TEST (RL_CH1_SOL), SW_CH1_TEST (RL_CH1_SOL), 누르면 Low 입력
pinMode(SW_CH2_TEST, INPUT_PULLUP); // SW_CH2_TEST (RL_CH2_SOL), SW_CH2_TEST (RL_CH2_SOL), 누르면 Low 입력
pinMode(interruptPin1, INPUT_PULLUP); // STOP_SW, STOP_SW, 누르면 Low 입력
//24
pinMode(interruptPin2, INPUT_PULLUP); // TIMER_OUT (Timer(CT4S) Time Out Signal), Time OUT 시 Low 입력
pinMode(TIMER_INA, OUTPUT); // Timer_INA (CT4S)
pinMode(TIMER_RESET, OUTPUT); // (CT4S)
//28
// attachInterrupt(0, intr_STOP_SW, FALLING); // STOP SW가 눌리면(High) 인터럽트 발생
// attachInterrupt(1, intr_TIMER_OUT, FALLING); // Time Out 되면(High) 인터럽트 발생
attachInterrupt(digitalPinToInterrupt(interruptPin1), intr_STOP_SW, FALLING);
attachInterrupt(digitalPinToInterrupt(interruptPin2), intr_TIMER_OUT, FALLING);
Serial.begin(9600);
}
//35
void intr_STOP_SW() { // ISR(Interrupt Service Routine), 입력시
Serial.println("1st Interrupt");
start_flag = false;
ch1_flag = false;
ch2_flag = false;
}
//43
void intr_TIMER_OUT() { // ISR(Interrupt Service Routine), TIMER_OUT 입력시
Serial.println("2nd Interrupt");
start_flag = false;
ch1_flag = false;
ch2_flag = false;
}
//51
void loop(){ //
int sw_start_val = digitalRead(SW_START);
int sw_ch1_test_val = digitalRead(SW_CH1_TEST);
int sw_ch2_test_val = digitalRead(SW_CH2_TEST);
int sw_stop_val = digitalRead(interruptPin1);
int timer_out_val = digitalRead(interruptPin2);
/*
if ((sw_start_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("1st Step");
start_flag = true;
} else if ((sw_ch1_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("2nd Step");
ch1_flag = true;
} else if ((sw_ch2_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
Serial.println("3rd Step");
ch2_flag = true;
} */
//68
Serial.print("start_flag=");
Serial.println(start_flag);
Serial.print("ch1_flag=");
Serial.println(ch1_flag);
Serial.print("ch2_flag=");
Serial.println(ch2_flag);
Serial.println("-------------------------------------------");
Serial.println("");
Serial.println("");
Serial.println("");
Serial.println("");
delay(500);
}
//85
관리자 답변
안녕하세요? 고객님,
저희 뉴티씨를 이용하여 주셔서 감사합니다.
죄송하지만, 저희가 고객님이 직접 짜신 코드까지 봐드리지는 않고 있습니다.
개발이 되기 때문인데요. 개발을 하게 될 경우에는 개발관련 비용이 발생하므로,
그렇게는 봐드리기 어렵습니다.
이런 경우는 직접 해결을 하셔야 합니다.
소스를 일일이 분석하고, 고객님이 조금이라도 붙인 하드웨어를 보고 해야 알 수 있는 부분인데,
이런 것까지 봐드리기는 어려움을 양해하여 주시기 바랍니다.
그리고, 2는 D2가 맞습니다.
감사합니다.
>
>
> 지난 주 토요일에 갔던 사람입니다.
> 토요일에도 급해서 찾아 갔었는데, 시간은 흐르고 너무 답답합니다.
>
> Board는 우노 DM-USTYLE-CT V1.0입니다.
> 프로그램은 당시 사용하던 Arduino cc입니다.
>
> Falling은 제가 나중에 바꾼 것이고요. High에서 Low로 떨어지는 순간에 인터럽트는 맞게 발생하고 있습니다.
> 그런데 D0/D1에서는 인터럽트가 안 걸리고, D2/D3에서 인터럽트가 걸리는 이유를 모르겠습니다.
> 혹시 여기 사용하신 CPU가 모든Pin에서 인터럽트가 가능한 아두이노 두에 보드인가요?.
> 설사 그렇다 해도 분명히 D0/D1에 인터럽트를 걸었는데, 이유를 모르겠습니다.
> 아래 소스는 인터럽트를 알려 주신 소스로 고쳤지만 마찬가지입니다.
> 바쁘시겠지만 소스를 복사하셔서 검토 좀 해 주시기 부탁 드립니다.
> 감사합니다.
> ------------------------------------------------------------------------------------------------
> 프로그램의 의도는
> SW_START를 한 번 누르면 Low가 되는 순간 start_flag가 true로 되고.
> SW_CH1_TEST를 한 번 누르면 Low가 되는 순간 SW_CH1_TEST_flag가 true로 되고.
> SW_CH2_TEST를 한 번 누르면 Low가 되는 순간 SW_CH2_TEST_flag가 true로 되고.
> 3중의 어느 하나가 먼저 true로 되면 다른 sw를 눌러도 변화가 없어야 합니다.
> true로 된 flag들은 SW_STOP나 TIMER_OUT 신호에 의해서 Interrupt가 걸려야만 false로 해제되도록 하면 되는 것입니다.
>
> 그리고 "#define SW_START 2"에서 2는 D2이지요?
> 토요일 저와 같이 확인 결과 Pin2가 아니라, D2였지요?
> ------------------------------------------------------------------------------------------------
> #define SW_START 2 // D2 (Pin 4, INPUT_PULLUP)
> #define SW_CH1_TEST 3 // D3 (RL_CH1_SOL) (Pin 5, INPUT_PULLUP)
> #define SW_CH2_TEST 4 // D4 (RL_CH2_SOL) (Pin 6, INPUT_PULLUP)
> //#define SW_STOP 0 // D0, Interrupt ID 0 (Pin 2, INPUT_PULLUP)
>
> // #define TIMER_OUT 1 // D1, Interrupt ID 1 (Pin 3, INPUT_PULLUP)
> #define TIMER_INA 10 // D10 (Pin 16, OUTPUT)
> #define TIMER_RESET 11 // D11 (Pin 17, OUTPUT)
>
> #define ON 1 // 상수
> #define OFF 0
> //12
> boolean state = false; //
> boolean start_flag = false; //
> boolean ch1_flag = false; //
> boolean ch2_flag = false; //
>
>
> const byte interruptPin1 = 2;
> const byte interruptPin2 = 3;
>
> void setup(){ // Assign INPUT/OUTPUT Port
> //19
> pinMode(SW_START, INPUT_PULLUP); // SW_START SW_START, 누르면 Low 입력
> pinMode(SW_CH1_TEST, INPUT_PULLUP); // SW_CH1_TEST (RL_CH1_SOL), SW_CH1_TEST (RL_CH1_SOL), 누르면 Low 입력
> pinMode(SW_CH2_TEST, INPUT_PULLUP); // SW_CH2_TEST (RL_CH2_SOL), SW_CH2_TEST (RL_CH2_SOL), 누르면 Low 입력
> pinMode(interruptPin1, INPUT_PULLUP); // STOP_SW, STOP_SW, 누르면 Low 입력
> //24
> pinMode(interruptPin2, INPUT_PULLUP); // TIMER_OUT (Timer(CT4S) Time Out Signal), Time OUT 시 Low 입력
> pinMode(TIMER_INA, OUTPUT); // Timer_INA (CT4S)
> pinMode(TIMER_RESET, OUTPUT); // (CT4S)
>
>
> //28
> // attachInterrupt(0, intr_STOP_SW, FALLING); // STOP SW가 눌리면(High) 인터럽트 발생
> // attachInterrupt(1, intr_TIMER_OUT, FALLING); // Time Out 되면(High) 인터럽트 발생
>
> attachInterrupt(digitalPinToInterrupt(interruptPin1), intr_STOP_SW, FALLING);
> attachInterrupt(digitalPinToInterrupt(interruptPin2), intr_TIMER_OUT, FALLING);
>
>
> Serial.begin(9600);
> }
> //35
> void intr_STOP_SW() { // ISR(Interrupt Service Routine), 입력시
> Serial.println("1st Interrupt");
>
> start_flag = false;
> ch1_flag = false;
> ch2_flag = false;
> }
> //43
> void intr_TIMER_OUT() { // ISR(Interrupt Service Routine), TIMER_OUT 입력시
> Serial.println("2nd Interrupt");
>
> start_flag = false;
> ch1_flag = false;
> ch2_flag = false;
> }
> //51
> void loop(){ //
>
> int sw_start_val = digitalRead(SW_START);
> int sw_ch1_test_val = digitalRead(SW_CH1_TEST);
> int sw_ch2_test_val = digitalRead(SW_CH2_TEST);
> int sw_stop_val = digitalRead(interruptPin1);
> int timer_out_val = digitalRead(interruptPin2);
> /*
> if ((sw_start_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("1st Step");
> start_flag = true;
> } else if ((sw_ch1_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("2nd Step");
> ch1_flag = true;
> } else if ((sw_ch2_test_val==OFF) && (start_flag==false) && (ch1_flag==false) && (ch2_flag == false)) {
> Serial.println("3rd Step");
> ch2_flag = true;
> } */
> //68
> Serial.print("start_flag=");
> Serial.println(start_flag);
>
> Serial.print("ch1_flag=");
> Serial.println(ch1_flag);
>
> Serial.print("ch2_flag=");
> Serial.println(ch2_flag);
>
> Serial.println("-------------------------------------------");
> Serial.println("");
> Serial.println("");
> Serial.println("");
> Serial.println("");
> delay(500);
> }
> //85
>
|
||||
| 9609 | 답변완료아두이노 자료실 관련 질문 | 고석현 | 2016-05-05 | 3,087 |
|
아두이노 12+텍스트+LCD
라는 파일에서 LCD와 아두이노 연결 회로도를 보면
여기서 가변저항이 존재하는데
가변저항의 값을 알아야 그 가변저항을 달 수 있을것 같은데
이게 몇옴짜리입니까?
관리자 답변
안녕 하세요? 고객님,
저희 뉴티씨 제품을 이용하여 주셔서 감사합니다.
5k옴 쓰시면됩니다.
감사합니다.
>
>
> 아두이노 12+텍스트+LCD
> 라는 파일에서 LCD와 아두이노 연결 회로도를 보면
> 여기서 가변저항이 존재하는데
> 가변저항의 값을 알아야 그 가변저항을 달 수 있을것 같은데
> 이게 몇옴짜리입니까?
>
|
||||
