로그인 | 회원가입 | 주문 조회
총 10,748개의 질문이 있습니다.
번호 제목 작성자 등록일 조회
9773 답변완료5%할인 쿠폰입력 문재준 2016-12-27 2,956
안녕하세요. 문재준이라고 합니다. 회사에서 주문하느라 쿠폰번호를 입력을 못했습니다. 할인쿠폰번호 입력합니다. 오늘 발송 꼭 부탁드리겠습니다. 주문번호 : ************ 쿠폰번호 : ***** 감사합니다...^^
관리자 답변 관리자 · 2016-12-28
네 감사합니다. 발송하였습니다. 감사합니다 > > > 안녕하세요. 문재준이라고 합니다. > > 회사에서 주문하느라 쿠폰번호를 입력을 못했습니다. > > 할인쿠폰번호 입력합니다. 오늘 발송 꼭 부탁드리겠습니다. > > 주문번호 : ********* > > 쿠폰번호 : *** > > 감사합니다...^^ >
9772 답변완료SM243 모터의 내부 구조 민병관 2016-12-26 2,726
SM243 모터의 내부 구조의 사진이나 그림이 있으면 동작을 이해하는데 도움되겠습니다..~ 부탁드립니다~~ 메일로 보내주셔도 좋고요~~ 감사합니다.....~ [email protected]
관리자 답변 관리자 · 2016-12-27
안녕하세요? 민병관선생님, 메일로 보내드리겠습니다. 감사합니다. > > > SM243 모터의 내부 구조의 사진이나 그림이 있으면 동작을 이해하는데 도움되겠습니다..~ > 부탁드립니다~~ > 메일로 보내주셔도 좋고요~~ > 감사합니다.....~ > [email protected] >
9771 답변완료스텝모터 발열 민병관 2016-12-22 2,861
SE-SM243을 구입하여 동작시켜 보니 발열이 심하고 진동도 있어 원활한 동작이 안됩니다 동작 전압은 24볼트이고요 흐르는 전류는 1.5A정도 입니다 회로를 첨부합니다~~ 회로 내에 저항 R23(510옴)을 2K옴으로 바꾸면 발열도 없어지고 잘 돌아갑니다~~ 모터와 특성이 맞지 않아서 그런지요? 구입한 모터는 10개인데 모두 그렇습니다 이유가 뭘까요? 참고로 다른 회사의 스텝모터는 이상 없이 잘 돕니다 ---------------- 회로 첨부합니다~~ ---------------- 프로그램 #include <mega128.h> #include <delay.h> void main() { DDRB = 0xff; while(1){ PORTB = 0x01; /* ① 구간 펄스 신호 */ delay_ms(10); PORTB = 0x04; /* ② 구간 펄스 신호 */ delay_ms(10); PORTB = 0x02; /* ③ 구간 펄스 신호 */ delay_ms(10); PORTB = 0x08; /* ④ 구간 펄스 신호 */ delay_ms(10); } }
관리자 답변 관리자 · 2016-12-22
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용해 주셔서 감사합니다. 말씀하신데로 모터마자 특성이 다르므로 바이어스를 잘 지정해야 합니다. 그렇게하면 발열을 줄일 수 있습니다. 자주하는 질문에서 다음 링크를 참조하세요. http://www.newtc.co.kr/dpshop/bbs/board.php?bo_table=m53&wr_id=24 감사합니다 > > > SE-SM243을 구입하여 동작시켜 보니 발열이 심하고 진동도 있어 원활한 동작이 안됩니다 > 동작 전압은 24볼트이고요 흐르는 전류는 1.5A정도 입니다 > 회로를 첨부합니다~~ > 회로 내에 저항 R23(510옴)을 2K옴으로 바꾸면 발열도 없어지고 잘 돌아갑니다~~ > 모터와 특성이 맞지 않아서 그런지요? > 구입한 모터는 10개인데 모두 그렇습니다 > 이유가 뭘까요? > 참고로 다른 회사의 스텝모터는 이상 없이 잘 돕니다 > ---------------- > 회로 첨부합니다~~ > ---------------- > 프로그램 > #include <mega128.h> > #include <delay.h> > void main() > { > DDRB = 0xff; > while(1){ > PORTB = 0x01; /* ① 구간 펄스 신호 */ > delay_ms(10); > PORTB = 0x04; /* ② 구간 펄스 신호 */ > delay_ms(10); > PORTB = 0x02; /* ③ 구간 펄스 신호 */ > delay_ms(10); > PORTB = 0x08; /* ④ 구간 펄스 신호 */ > delay_ms(10); > } > } >
9770 답변완료PM-LCD-G (Graphic) 소스 관련 임윤택 2016-12-20 2,972
PM-LCD-G의 동작(예제) 소스를 얻을 수 있나요 ?
관리자 답변 관리자 · 2016-12-21
안녕하세요? 고객님, 저희 뉴티씨를 이용해 주셔서 감사합니다. AM-GLCD-P와 소스는 100% 동일합니다. 해당 mcu(마이콘)의 자료실에서 glcd로 쳐서 찾아보세요. 찾고나서 사용하시는 컴파일러용인지도 확인하세요. 감사합니다. > > > PM-LCD-G의 동작(예제) 소스를 얻을 수 있나요 ? >
9769 답변완료보강 재질문 (DM-MSTYLE-EXT 디지털, 아나로그 포트 사용) 심수정 2016-12-15 3,021
초보라서 모든 것이 어리둥절합니다. 질문은 첨부 그림과 같습니다. 응답 해주시면 감사하겠습니다.
관리자 답변 관리자 · 2016-12-17
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 질문에 답변 드립니다. 질문1. 디지털 I/O 연결한 보드 전원부에 물리는 전원은 어떤 것인지요? 답변1. 전원은 여러곳에서 들어올 수 있도록 설계되어 있습니다만, 기본적으로는 아답타 쪽에서 6.5V ~12V 들어오면, 7805 레귤레이터로 5V로 변환하고, 다시 3.3V로 변환하여 메인보드에 공급됩니다. 그리고, 그 출력 전원값은 아래쪽의 Power 쪽에 연결되어 있습니다. 질문2. 이파워를 아나로그인풋과 연결한 보드 전원부에 물리면 되는지요? 답변2. 이미 아나로그 입력의 전원부는 이 Power 부분입니다. 따로 물리지 않아도, 이미 그렇게 되어 있습니다. 질문3. MEGA2560을 결합한 상태에서 디지털 I/O 사용하고자 합니다. 여기 표시를 보면 D0~D13까지 되어 있습니다. PORTD를 제어하면 되는지요? 답변3. DM-MSTYLE-EXT 보드는 내부에 UNO에 해당하는 USTYLE 부분과 MEGA2560에 해당하는 AM-2560USB 부분으로 되어 있고, 각각에 여러가지의 I/O들이 연결되어 있습니다. 즉, 두 개의 마이크로컨트롤러로 되어 있고, 각각 연결된 I/O 가 다르고, 일부 통신 부분에서 서로 연결되어 있기도 합니다. 그림에 도식하신 J29, J26, J12, J27 커넥터는 아두이노의 UNO에 해당하는 USTYLE 부분으로 ATMEGA328P-PU를 사용하는 부분이라서, MEGA2560과는 관련이 없습니다. 아두이노에서 char key1 = digitalRead(14); 이런식으로 읽으면 됩니다. 질문4. MEGA2560을 결합한 상태에서 아나로그 인풋을 사용하려 합니다. PORTA를 읽어들이면 되는지요? 답변4. 그림에 도식하신 J29, J26, J12, J27 커넥터는 아두이노의 UNO에 해당하는 USTYLE 부분으로 ATMEGA328P-PU를 사용하는 부분이라서, MEGA2560과는 관련이 없습니다. 아두이노에서 int Adata_IN =analogRead(A0) 이런식으로 읽으면 됩니다. 감사합니다. > > > 초보라서 모든 것이 어리둥절합니다. > > 질문은 > > 첨부 그림과 같습니다. > > 응답 해주시면 감사하겠습니다. >
9768 답변완료DM-MSTYLE-EXT에 릴레이 보드 연결 심수정 2016-12-14 3,255
SRD-05VDC, SRD-12VDC 두종류의 릴레이 보드를 연결해 사용하고자 합니다. DM-MSTYLE-EXT의 MEGA328에 연결된 디지털 I/O와 Power를 쓰는 것 같습니다. mega2560으로 프로그래밍해서 제어하려 합니다. 연결 포트를 알려주세요. 감사합니다.
관리자 답변 관리자 · 2016-12-15
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 질문이 정확히 이해가 가지 않습니다. 저희 DM-MSTYLE-EXT를 사용하시는 것 같은데, 메인보드에는 UNO도 있고, 모듈타입으로 꽂는 것으로 MEGA2560도 있습니다. 어떤 쪽을 쓰시겠다는 건가요? 모듈만 따로 빼서, 외부에 회로를 구성해서 쓰시겠다는 거라면, MEGA2560 모듈은 AM-2560USB를 사용하시겠다는 것으로 보입니다만, 그런 경우, 별도로 어떤 핀을 써야 한다 이런 것은 없구요. 어떤 I/O핀이든 아두이노의 Digital 핀이면 릴레이 제어용으로 사용이 가능합니다. 혹시 답변이 부족하거나 하다면, 좀 더 정확하게 질문을 설명해 주세요. 감사합니다. > > > SRD-05VDC, SRD-12VDC 두종류의 > > 릴레이 보드를 연결해 사용하고자 합니다. > > DM-MSTYLE-EXT의 MEGA328에 연결된 디지털 I/O와 Power를 쓰는 것 같습니다. > > mega2560으로 프로그래밍해서 제어하려 합니다. > > 연결 포트를 알려주세요. > > 감사합니다. >
9767 답변완료Atmega8A ISP 다운로드 질문입니다. 박정우 2016-12-14 3,283
안녕하세요 atmega8a PDIP 타입에 뉴티씨 USB-ISP 프로그래머로 다운로드를 하려고 하는데요 (뉴티씨 ISP : http://newtc.co.kr/dpshop/shop/item.php?it_id=1314600027 ) ISP와 atmega8a 를 직결하면 다운로드가 잘 되는데(+외장 8Mhz 크리스탈 + 20pF 캐패시터 2개 장착) 3.3v 레귤레이터 LP2950L을 넣어서, ISP의 5V 전원을 LP2950L의 INPUT에, LP2950L의 3.3V OUTPUT을 atmega8a의 vcc에 연결해서 다운로드를 시도하면 stk500 error entering program mode 라는 에러가 나타납니다. 물론 전원 부분만 변경했고, 나머지 구성(Reset, MISO, MOSI, SCK, GND)등은 똑같이 했습니다. 8Mhz 크리스탈에 20pF 캐패시터 2개도 달아놨구요 재밌는건... 뉴티씨 사의 atmega8 실습모듈(http://newtc.co.kr/dpshop/shop/item.php?it_id=1406174560)을 LP2950L의 3.3V로 구성하면 다운로드가 잘 됩니다. 이거 왜 이러는건지 알 수 있을까요? ㅠㅠ 회로도 첨부 하였습니다 (ISP작동가능.bmp // 작동불가.bmp)
관리자 답변 관리자 · 2016-12-15
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 저희 USBISP로 저희 모듈인 AM-8PL을 이용하고, AM-8PL에 공급되는 VCC만 외부에서 3.3V로 변경해서 공급했을 때에 잘 되는 데, 직접 만드신 회로로는 같은 환경으로 하면 안된다는 거잖아요? 특별히 저희 회로에 뭔가 있는 것은 아니고, 아마도, 구성하신 회로의 PCB에 문제가 있거나 한 것이 아닌가 싶습니다. 확인해 보세요. 감사합니다. > > > 안녕하세요 > > > > > > atmega8a PDIP 타입에 뉴티씨 USB-ISP 프로그래머로 다운로드를 하려고 하는데요 > > (뉴티씨 ISP : http://newtc.co.kr/dpshop/shop/item.php?it_id=1314600027 ) > > > > > ISP와 atmega8a 를 직결하면 다운로드가 잘 되는데(+외장 8Mhz 크리스탈 + 20pF 캐패시터 2개 장착) > > > > > 3.3v 레귤레이터 LP2950L을 넣어서, ISP의 5V 전원을 LP2950L의 INPUT에, > > > > > LP2950L의 3.3V OUTPUT을 atmega8a의 vcc에 연결해서 다운로드를 시도하면 > > > > > stk500 error entering program mode 라는 에러가 나타납니다. > > > > > 물론 전원 부분만 변경했고, 나머지 구성(Reset, MISO, MOSI, SCK, GND)등은 똑같이 했습니다. 8Mhz 크리스탈에 20pF 캐패시터 2개도 달아놨구요 > > > > > 재밌는건... 뉴티씨 사의 atmega8 실습모듈(http://newtc.co.kr/dpshop/shop/item.php?it_id=1406174560)을 LP2950L의 3.3V로 구성하면 다운로드가 잘 됩니다. > > > > > 이거 왜 이러는건지 알 수 있을까요? ㅠㅠ > > > > > 회로도 첨부 하였습니다 (ISP작동가능.bmp // 작동불가.bmp) >
9766 답변완료cortex-m3 관련 유한철 2016-12-14 3,171
74page 이후 Perspective진행....IDE가 변하지 않고 첨부파일처럼 변하네요..
관리자 답변 관리자 · 2016-12-14
안녕하십니까? 고객님. 항상 저희 뉴티씨 제품을 사용하여 주셔서 감사합니다. 제가 보기에는 소스 코드를 저장을 안해서 발생한 문제 같습니다. 보내주신 그림과 같은 창은 소스 코드를 저장 할 것인지 묻는 창이므로 OK를 눌러 진행하시면 됩니다. 저장은 왼쪽위에 플로피디스크 모양 아이콘을 클릭하시거나, 키보드의 CTRL+S를 눌러주시면 됩니다. 감사합니다. > > > 74page 이후 Perspective진행....IDE가 변하지 않고 첨부파일처럼 변하네요.. >
9765 답변완료에러 원인을 알고 싶읍니다. 유한철 2016-12-12 3,863
#include "stm32f10x_conf.h" void delay_ms(int ms) { for(volatile int i=0;i<ms/2;i++) { for(volatile int j=0;j<12000;j++); } } int main(int argc, char* argv[]) { GPIO_InitTypeDef PC; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); PC.GPIO_Mode = GPIO_Mode_Out_PP; PC.GPIO_Pin = GPIO_Pin_All; PC.GPIO_Speed = GPIO_Speed_50MHZ; GPIO_Init(GPIOC,&PC); while (1) { delay_ms(1000); GPIO_Write(GPIOC,0xFFFF); delay_ms(1000); GPIO_Write(GPIOC,0x0000); } } 20:17:10 **** Incremental Build of configuration Debug for project ARM_Hellow **** make all 'Building file: ../src/main.c' 'Invoking: Cross ARM C Compiler' arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -Og -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -fno-move-loop-invariants -Wall -Wextra -g3 -DDEBUG -DUSE_FULL_ASSERT -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f1-stdperiph" -std=gnu11 -MMD -MP -MF"src/main.d" -MT"src/main.o" -c -o "src/main.o" "../src/main.c" ../src/main.c: In function 'main': ../src/main.c:50:16: error: 'GPIO_Speed_50MHZ' undeclared (first use in this function) PC.GPIO_Speed=GPIO_Speed_50MHZ; ^ ../src/main.c:50:16: note: each undeclared identifier is reported only once for each function it appears in make: *** [src/main.o] Error 1 20:17:12 Build Finished (took 2s.156ms)
관리자 답변 관리자 · 2016-12-13
안녕하세요? 고객님, 저희 뉴티씨를 이용하여 주셔서 감사합니다. 교재 61~63에서 Build Tools Paths를 지정해줘야 하는 데, 최신 버전에서는 하지 않아도 되게 되어 있지만, 구 버전에서는 일일이 해줘야 툴체인 설정이 완료됩니다. 위에서처럼 해 보세요. 첨부 파일은 이후의 trace 하는 부분도 좀 추가된 소스인데, 참고 바랍니다. 감사합니다. > > > #include "stm32f10x_conf.h" > void delay_ms(int ms) > { > for(volatile int i=0;i<ms/2;i++) > { > for(volatile int j=0;j<12000;j++); > } > > } > > int main(int argc, char* argv[]) > { > GPIO_InitTypeDef PC; > > RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); > > PC.GPIO_Mode = GPIO_Mode_Out_PP; > PC.GPIO_Pin = GPIO_Pin_All; > PC.GPIO_Speed = GPIO_Speed_50MHZ; > GPIO_Init(GPIOC,&PC); > > while (1) > { > delay_ms(1000); > GPIO_Write(GPIOC,0xFFFF); > delay_ms(1000); > GPIO_Write(GPIOC,0x0000); > } > } > > > > > > 20:17:10 **** Incremental Build of configuration Debug for project ARM_Hellow **** > make all > 'Building file: ../src/main.c' > 'Invoking: Cross ARM C Compiler' > arm-none-eabi-gcc -mcpu=cortex-m3 -mthumb -Og -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -ffreestanding -fno-move-loop-invariants -Wall -Wextra -g3 -DDEBUG -DUSE_FULL_ASSERT -DSTM32F10X_HD -DUSE_STDPERIPH_DRIVER -DHSE_VALUE=8000000 -I"../include" -I"../system/include" -I"../system/include/cmsis" -I"../system/include/stm32f1-stdperiph" -std=gnu11 -MMD -MP -MF"src/main.d" -MT"src/main.o" -c -o "src/main.o" "../src/main.c" > ../src/main.c: In function 'main': > ../src/main.c:50:16: error: 'GPIO_Speed_50MHZ' undeclared (first use in this function) > PC.GPIO_Speed=GPIO_Speed_50MHZ; > ^ > ../src/main.c:50:16: note: each undeclared identifier is reported only once for each function it appears in > make: *** [src/main.o] Error 1 > > 20:17:12 Build Finished (took 2s.156ms) >
9764 답변완료다시 질문 드립니다. 오창현 2016-12-09 3,225
먼저 늦은 시간에도 답변 주셔서 감사합니다. AM-DC2-2D 모듈을 3개 가지고 있습니다. (1개는 최근에 구입했습니다. 색이 다르네요.) 이번에 새로 하나 더 구입하면서 테스트를 해봤습니다. TEST 환경1: pwm 주파수 : 20kHz, dir: high, duty rate : 100%, 모터 구동전압 :: 전원 공급기 12.12V) a채널이 11.8V b채널이 12V 나옵니다. 3개 모두 0.2V 차이가 납니다. TEST 환경2: pwm 주파수 : 20kHz, dir: low, duty rate : 100%, 모터 구동전압 : 전원 공급기 12.12V) a채널이 -12V b채널이 -11.8V 나옵니다. 3개 모두 0.2V 차이가 납니다. 테스트는 모두 모터 연결 없이 진행 하였습니다. 똑같은 입력을 줬을 때 A채널과 B채널이 항상 0.2V 차이가 나는 이유가 무엇일까요? 테스트 결과 : A채널 출력 범위 -12V ~ 11.8V B채널 출력 범위 -11.8V ~ 12V 제가 메일로 질문 드렸을 때는 출력이 18.8V 나온다고 잘 못 적었었네요... 혹시 이유가 답변 메일에 알려주신대로 "주요 칩인 L298의 칩내부에 있는 다이오드로 인하여 방향에 따라서, 약간의 내부적인 전압강하가 있을 수 있습니다." 이런 이유 때문인가요? 칩의 내부 회로 때문에 그런거라면 어떤식으로 되 있길래 방향에 따라 출력 offset이 달라지는 알 수 있을까요? 그렇다면 외부 회로와는 무관하게 칩의 특성으로 이해해도 되나요? 이해가 안되는게 풀브릿지 회로만 보면 대칭적인데,, 방향에 따라 출력 전압이 달라질 수 있다는게 이해가 안되네요.. 마지막으로이러한 상황에서 4A출력을 위해 채널을 묶어서 하나로 출력 했을 때 문제가 없을까요?
관리자 답변 관리자 · 2016-12-10
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 본사내부에 5A용 제품이 준비중에 있습니다. 일단, 2A까지는 DC2-2D와 같은 해당 제품으로 테스트 하시고, 제품 적용시에는 신규로 적용되는 제품으로 쓰시는 것이 좋지 않을까 싶습니다. 아니면, 1-3D를 사용하셔서 테스트 하시는 것이 더 좋겠습니다. 반응속도도 더 빠르고, 그렇게 채널마다 전압 강하가 다를 문제도 없으니까요. 칩의 특성으로 보시면 됩니다만, 내부에 다이오드 등도 들어 있을 것이고, 현재의 AM-DC2-2D의 모듈의 특성도 조금 있을 수도 있습니다. L298의 1번과 15번핀이 SENSE 저항을 각각 0.2옴 연결하고 GND와 연결해 주는 것이 추천됩니다만, 본 모듈은 GND로 직결되어 있어서, 그럴 수도 있다고 생각됩니다. 칩의 1번핀과 GND 사이에 0.2옴 저항을 15번핀과 GND 사이에 0.2옴 저항을 각각 달아주면, 그런 증상이 없어질 수도 있을 것 같기도 합니다. 교육용이라 그런 부분은 고려대상에 들어가 있지 않은데, 양산 제품이 필요하다면, 본사에 의뢰하시면 보다 정밀하게 제품 제작 용역도 가능합니다. 감사합니다. > > > 먼저 늦은 시간에도 답변 주셔서 감사합니다. > > AM-DC2-2D 모듈을 3개 가지고 있습니다. (1개는 최근에 구입했습니다. 색이 다르네요.) > 이번에 새로 하나 더 구입하면서 테스트를 해봤습니다. > > TEST 환경1: pwm 주파수 : 20kHz, dir: high, duty rate : 100%, 모터 구동전압 :: 전원 공급기 12.12V) > a채널이 11.8V b채널이 12V 나옵니다. 3개 모두 0.2V 차이가 납니다. > > TEST 환경2: pwm 주파수 : 20kHz, dir: low, duty rate : 100%, 모터 구동전압 : 전원 공급기 12.12V) > a채널이 -12V b채널이 -11.8V 나옵니다. 3개 모두 0.2V 차이가 납니다. > > 테스트는 모두 모터 연결 없이 진행 하였습니다. > 똑같은 입력을 줬을 때 A채널과 B채널이 항상 0.2V 차이가 나는 이유가 무엇일까요? > 테스트 결과 : > A채널 출력 범위 -12V ~ 11.8V > B채널 출력 범위 -11.8V ~ 12V > > 제가 메일로 질문 드렸을 때는 출력이 18.8V 나온다고 잘 못 적었었네요... > 혹시 이유가 답변 메일에 알려주신대로 "주요 칩인 L298의 칩내부에 있는 다이오드로 인하여 방향에 따라서, 약간의 내부적인 전압강하가 있을 수 있습니다." 이런 이유 때문인가요? > 칩의 내부 회로 때문에 그런거라면 어떤식으로 되 있길래 방향에 따라 출력 offset이 달라지는 알 수 있을까요? > 그렇다면 외부 회로와는 무관하게 칩의 특성으로 이해해도 되나요? > 이해가 안되는게 풀브릿지 회로만 보면 대칭적인데,, 방향에 따라 출력 전압이 달라질 수 있다는게 이해가 안되네요.. > > 마지막으로이러한 상황에서 4A출력을 위해 채널을 묶어서 하나로 출력 했을 때 문제가 없을까요? >
9763 답변완료DM-MSTYLE-EXT 질문 심수정 2016-12-08 2,821
DM-MSTYLE-EXT V1.0를 구입하였습니다. 정확히 DM-MSTYLE-L 키트 구성물과 AD-USBISP V6.0 그리고 AD-USBSERIAL V02를 구입하였습니다. 저는 초보자이구요. 홈페이지 메뉴상 AVR 장비로 되어 있고. 홈페이지에 제시된 보드 매뉴얼과 허경영 교수님의 책에 따라 AVR 연습이 가능한 것으로 알았습니다. 아두이노 프로그램은 실행해 보니 잘 되는 것 같습니다. C로 해보려 하니 리소스가 부족해 연습을 하기가 어렵습니다. 2560보드를 떼고 328P-AU로 하는 경우와 붙이고하는 경우가 다를 것 같고.. 328P-AU 핀도 다를겉 같습니다. 포트와 가동 방식도 다를것 같은데... 현재 매뉴얼로는 보드도 알기 어려운 상태입니다. 어제 하루종일 LED 포트 A~G까지 찾았는데요. 보드에 있는 핀들, 핀커넥터 용도와 사용하는 방법... 등에 대해 알려 주시면 감사하겠습니다. (2560보드를 제거했을 때, 연결 했을때, 점퍼 연결 시 기능 등...) 아두이노 헤더, 드라이버, 프로그램 소스를 추적해 가보며 하지만 초보자로서는 너무 힘든 일입니다 그래서... AVR 예제를 올려 주시면.... 감사하겠습니다. 한가지 더 질문드리면 328보드만 쓸 경우 방법도 알려 주시면 감사하겠습니다.
관리자 답변 관리자 · 2016-12-09
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 이메일로 답변을 드리겠습니다. 감사합니다. > > > DM-MSTYLE-EXT V1.0를 구입하였습니다. > 정확히 DM-MSTYLE-L 키트 구성물과 AD-USBISP V6.0 그리고 AD-USBSERIAL V02를 구입하였습니다. > > 저는 초보자이구요. > 홈페이지 메뉴상 AVR 장비로 되어 있고. > 홈페이지에 제시된 보드 매뉴얼과 > 허경영 교수님의 책에 따라 AVR 연습이 가능한 것으로 알았습니다. > > 아두이노 프로그램은 실행해 보니 잘 되는 것 같습니다. > C로 해보려 하니 리소스가 부족해 연습을 하기가 어렵습니다. > > 2560보드를 떼고 328P-AU로 하는 경우와 붙이고하는 경우가 다를 것 같고.. > 328P-AU 핀도 다를겉 같습니다. 포트와 가동 방식도 다를것 같은데... > > 현재 매뉴얼로는 보드도 알기 어려운 상태입니다. > > 어제 하루종일 LED 포트 A~G까지 찾았는데요. > 보드에 있는 핀들, 핀커넥터 용도와 사용하는 방법... 등에 대해 알려 주시면 감사하겠습니다. > (2560보드를 제거했을 때, 연결 했을때, 점퍼 연결 시 기능 등...) > > 아두이노 헤더, 드라이버, 프로그램 소스를 추적해 가보며 하지만 > 초보자로서는 너무 힘든 일입니다 > > 그래서... AVR 예제를 올려 주시면.... 감사하겠습니다. > > 한가지 더 질문드리면 > 328보드만 쓸 경우 방법도 알려 주시면 감사하겠습니다. >
9762 답변완료질문드립니다. 최승호 2016-12-08 3,073
모터는 작동이 되는데 한쪽이 정상적으로 작동하면 다른 한쪽이 덜덜덜 거리는 현상이 발생됩니다. AM-cs2p에 se-243 사용하고 있습니다. 모터에서 선을 바꾸서 끼면 바꿔낀 곳이 떨떨거리는 현상이 발생합니다. 현재 사용한 코드는 // S/W Environment : AVR Studio + WINAVR Compiler // Target : M128 // Crystal: 16MHz // // Made by NEWTC Co., Ltd. in Korea. // DAEWOO RYU // Email : [email protected] // +82-2-704-4774(TEL), +82-2-704-4733(FAX) // http://www.newtc.co.kr // example : CS2P unipolar stepping motor controller test --통신헤더--- #define BYTE unsigned char #define WORD unsigned int #define OFF 1 #define ON 0 void Delay_us(BYTE time_us) /* time delay for us */ { BYTE i; for(i = 0; i < time_us; i++) // 4 cycle + { asm(" PUSH R0 "); // 2 cycle + asm(" POP R0 "); // 2 cycle + asm(" PUSH R0 "); // 2 cycle + asm(" POP R0 "); // 2 cycle + asm(" PUSH R0 "); // 2 cycle + asm(" POP R0 "); // 2 cycle = 16 cycle = 1 us for 16MHz } } void delay(int n) { volatile int i,j; for(i=1;i<n;i++) { for(j=1;j<1000;j++); } } void Delay_ms(WORD time_ms) /* time delay for ms */ { WORD i; for(i = 0; i < time_ms; i++) { Delay_us(250); Delay_us(250); Delay_us(250); Delay_us(250); } } void UART1_initialize(void) { DDRE = 0xFE; UCSR1A = 0x00; // Asynchronous Normal Mode UCSR1B = 0x18; // Receive enable, Transmitte enable UCSR1C = 0x06; // 비동기 방식, No parity bit, 1 stop bit UBRR1H = 0x00; UBRR1L = 8; // 16MHz에서 115,200 bps //UBRR1L=0x67; } void putch(BYTE data) { loop_until_bit_is_set(UCSR1A,5); UDR1 = data; UCSR1A |= 0x20; //Clear UDRE1 } ----MCU 헤더 void MCU_initialize(void) /* initialize ATmege128 MCU */ { MCUCR = 0x00; // enable external memory and I/O XMCRA = 0x00; // 0x1100-0xFFFF=1 wait //check XMCRB = 0x80; // enable bus keeper, use PC0-PC7 as address SFIOR = 0x00; //입출력 bit 내부 풀업저항 안사용 //DDRD = 0xFF; //PORTD = 0xFF; //motor port DDRC = 0xff; PORTC = 0x00; //DDRA = 0x00; //PORTA = 0x00; DDRA |= _BV(2); // Run Led DDRF &= ~(_BV(0)); // VRE (AD0) DDRF &= ~(_BV(1)); // LM35DZ (AD1) DDRF &= ~(_BV(2)); // CdS (AD2) DDRF &= ~(_BV(3)); // External Input (AD3) //DDRG |= _BV(3); // Buzzer } --- #include <avr/io.h> #include <avr/interrupt.h> #include <stdio.h> #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include "UART1_initialize.h" #include "MCU_initialize.h" #define _BV(bit) (1<<(bit)) #define ADC_VREF 0x00 #define MOTOR_PORT PORTC #define MOTOR_PORT_DDR DDRC static FILE mystdout = FDEV_SETUP_STREAM(putch, NULL,_FDEV_SETUP_WRITE); volatile unsigned int ADC_v1,ADC_v2,ADC_v3,ADC_v4; void MPUinit(void) { ADMUX = ADC_VREF; //MUX bits를 이용 analog input channel 설정 ADCSRA = 0x86; //ADC Enable ADC prescaler select bits } unsigned int read_adc(unsigned char adc_input)//single conversion { static int tmp; ADMUX = adc_input|ADC_VREF; //ADMUX select part ADMUX |= _BV(5); ADCSRA |= 0x40; while ((ADCSRA & 0x10) == 0); ADCSRA|= 0x10; tmp = (ADCL >> 6) | (ADCH << 2); //ADLAR 0 인상태에서 상위비트 6오른 쪽 시프트 하위 2비트 return tmp; } void LineDatainput() { PORTF |= 0x01;//PORTF0사용 Delay_us(30); ADC_v1 = read_adc(0); //PORTF0 사용 PORTF &= 0x00; Delay_us(1000); PORTF |= 0x02;//PORTF1사용 Delay_us(30); ADC_v2 = read_adc(1); //PORTF1 사용 PORTF &= 0x00; Delay_us(1000); PORTF |= 0x04;//PORTF2사용 Delay_us(30); ADC_v3 = read_adc(2); //PORTF2 사용 PORTF &= 0x00; Delay_us(1000); PORTF |= 0x08;//PORTF3사용 Delay_us(30); ADC_v4 = read_adc(3); //PORTF3 사용 //ADC_v4 = read_adc(3); PORTF &= 0x00; Delay_us(1000); } //call this routine to initialize all peripherals void init_devices(void) { //stop errant interrupts until set up //cli(); //disable all interrupts //XMCRA = 0x00; //external memory //XMCRB = 0x00; //external memory //port_init(); // MCU_initialize(); 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 } /* Stepping Motor derive---------------------------*/ unsigned char LEFTmotorOneClock(unsigned char step, char dir) { step = step & 0x0f; if(dir){ switch(step){ case 0x09: step=0x01; break; case 0x01: step=0x03; break; case 0x03: step=0x02; break; case 0x02: step=0x06; break; case 0x06: step=0x04; break; case 0x04: step=0x0c; break; case 0x0c: step=0x08; break; case 0x08: step=0x09; break; default: step=0x0c; break; } }else{ switch(step){ case 0x09: step=0x08; break; case 0x01: step=0x09; break; case 0x03: step=0x01; break; case 0x02: step=0x03; break; case 0x06: step=0x02; break; case 0x04: step=0x06; break; case 0x0c: step=0x04; break; case 0x08: step=0x0c; break; default: step=0x0c; break; } } return step; } /* Stepping Motor derive---------------------------*/ unsigned char RIGHTmotorOneClock(unsigned char step, char dir) { step = step & 0xf0; if(dir){ switch(step){ case 0x90: step=0x10; break; case 0x10: step=0x30; break; case 0x30: step=0x20; break; case 0x20: step=0x60; break; case 0x60: step=0x40; break; case 0x40: step=0xc0; break; case 0xc0: step=0x80; break; case 0x80: step=0x90; break; default: step=0xc0; break; } }else{ switch(step){ case 0x90: step=0x80; break; case 0x10: step=0x90; break; case 0x30: step=0x10; break; case 0x20: step=0x30; break; case 0x60: step=0x20; break; case 0x40: step=0x60; break; case 0xc0: step=0x40; break; case 0x80: step=0xc0; break; default: step=0xc0; break; } } return step; } // int main(void) { volatile unsigned char stepleft=0, stepright=0; MCU_initialize(); UART1_initialize(); stdout = &mystdout; Delay_ms(2000); init_devices(); MPUinit(); Delay_us(10); //insert your functional code here... MOTOR_PORT_DDR = 0xff; while(1){ LineDatainput(); printf("%03d\t | %03d\t | %03d\t | %03d\t\n\r",ADC_v1,ADC_v2,ADC_v3,ADC_v4); //forward moving stepright = RIGHTmotorOneClock(stepright, 1); stepleft = LEFTmotorOneClock(stepleft, 0); delay(3); MOTOR_PORT = stepleft|stepright; //printf("%d",stepright); //printf("%d",stepleft); } return 0; }
관리자 답변 관리자 · 2016-12-09
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. 이 현상은 전류 부족입니다. 충분한 전원을 공급해줘야 합니다. 전압은 최소 12V 이상 전류는 사용하는 토크에 따라 다르기 때문에, 뭐라 말씀드리긴 어렵지만, 아무것도 모터에 연결하지 않았을 경우에 1A 12V면 잘 돌아갑니다. 경우에 따라서는 100Watt 12V나 24V의 SMPS를 사용하여야 하는 경우도 있습니다. 감사합니다. > > > 모터는 작동이 되는데 한쪽이 정상적으로 작동하면 다른 한쪽이 덜덜덜 거리는 현상이 발생됩니다. > AM-cs2p에 se-243 사용하고 있습니다. 모터에서 선을 바꾸서 끼면 바꿔낀 곳이 떨떨거리는 현상이 발생합니다. 현재 사용한 코드는 > // S/W Environment : AVR Studio + WINAVR Compiler > // Target : M128 > // Crystal: 16MHz > // > // Made by NEWTC Co., Ltd. in Korea. > // DAEWOO RYU > // Email : [email protected] > // +82-2-704-4774(TEL), +82-2-704-4733(FAX) > // http://www.newtc.co.kr > // example : CS2P unipolar stepping motor controller test > --통신헤더--- > #define BYTE unsigned char > #define WORD unsigned int > #define OFF 1 > #define ON 0 > > void Delay_us(BYTE time_us) /* time delay for us */ > { > BYTE i; > > for(i = 0; i < time_us; i++) // 4 cycle + > { > asm(" PUSH R0 "); // 2 cycle + > asm(" POP R0 "); // 2 cycle + > asm(" PUSH R0 "); // 2 cycle + > asm(" POP R0 "); // 2 cycle + > asm(" PUSH R0 "); // 2 cycle + > asm(" POP R0 "); // 2 cycle = 16 cycle = 1 us for 16MHz > } > } > > void delay(int n) > { > volatile int i,j; > for(i=1;i<n;i++) > { > for(j=1;j<1000;j++); > } > } > > void Delay_ms(WORD time_ms) /* time delay for ms */ > { > WORD i; > > for(i = 0; i < time_ms; i++) > { > Delay_us(250); > Delay_us(250); > Delay_us(250); > Delay_us(250); > } > } > > void UART1_initialize(void) > { > DDRE = 0xFE; > UCSR1A = 0x00; // Asynchronous Normal Mode > UCSR1B = 0x18; // Receive enable, Transmitte enable > UCSR1C = 0x06; // 비동기 방식, No parity bit, 1 stop bit > UBRR1H = 0x00; > UBRR1L = 8; // 16MHz에서 115,200 bps > //UBRR1L=0x67; > } > > void putch(BYTE data) > { > loop_until_bit_is_set(UCSR1A,5); > UDR1 = data; > UCSR1A |= 0x20; //Clear UDRE1 > } > > ----MCU 헤더 > void MCU_initialize(void) /* initialize ATmege128 MCU */ > { > MCUCR = 0x00; // enable external memory and I/O > XMCRA = 0x00; // 0x1100-0xFFFF=1 wait > //check > XMCRB = 0x80; // enable bus keeper, use PC0-PC7 as address > SFIOR = 0x00; //입출력 bit 내부 풀업저항 안사용 > > //DDRD = 0xFF; > //PORTD = 0xFF; > //motor port > DDRC = 0xff; > PORTC = 0x00; > //DDRA = 0x00; > //PORTA = 0x00; > > DDRA |= _BV(2); // Run Led > > DDRF &= ~(_BV(0)); // VRE (AD0) > DDRF &= ~(_BV(1)); // LM35DZ (AD1) > DDRF &= ~(_BV(2)); // CdS (AD2) > DDRF &= ~(_BV(3)); // External Input (AD3) > //DDRG |= _BV(3); // Buzzer > } > --- > #include <avr/io.h> > #include <avr/interrupt.h> > #include <stdio.h> > #include <avr/io.h> > #include <util/delay.h> > #include <avr/interrupt.h> > #include "UART1_initialize.h" > #include "MCU_initialize.h" > #define _BV(bit) (1<<(bit)) > > #define ADC_VREF 0x00 > #define MOTOR_PORT PORTC > #define MOTOR_PORT_DDR DDRC > > static FILE mystdout = FDEV_SETUP_STREAM(putch, NULL,_FDEV_SETUP_WRITE); > volatile unsigned int ADC_v1,ADC_v2,ADC_v3,ADC_v4; > > void MPUinit(void) > { > ADMUX = ADC_VREF; //MUX bits를 이용 analog input channel 설정 > ADCSRA = 0x86; //ADC Enable ADC prescaler select bits > } > unsigned int read_adc(unsigned char adc_input)//single conversion > { > static int tmp; > > ADMUX = adc_input|ADC_VREF; //ADMUX select part > ADMUX |= _BV(5); > ADCSRA |= 0x40; > while ((ADCSRA & 0x10) == 0); > ADCSRA|= 0x10; > tmp = (ADCL >> 6) | (ADCH << 2); //ADLAR 0 인상태에서 상위비트 6오른 쪽 시프트 하위 2비트 > return tmp; > } > void LineDatainput() > { > PORTF |= 0x01;//PORTF0사용 > Delay_us(30); > ADC_v1 = read_adc(0); //PORTF0 사용 > PORTF &= 0x00; > Delay_us(1000); > > PORTF |= 0x02;//PORTF1사용 > Delay_us(30); > ADC_v2 = read_adc(1); //PORTF1 사용 > PORTF &= 0x00; > Delay_us(1000); > > PORTF |= 0x04;//PORTF2사용 > Delay_us(30); > ADC_v3 = read_adc(2); //PORTF2 사용 > PORTF &= 0x00; > Delay_us(1000); > > PORTF |= 0x08;//PORTF3사용 > Delay_us(30); > ADC_v4 = read_adc(3); //PORTF3 사용 > //ADC_v4 = read_adc(3); > PORTF &= 0x00; > Delay_us(1000); > > } > //call this routine to initialize all peripherals > void init_devices(void) > { > //stop errant interrupts until set up > //cli(); //disable all interrupts > //XMCRA = 0x00; //external memory > //XMCRB = 0x00; //external memory > //port_init(); > // MCU_initialize(); > 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 > } > > > /* Stepping Motor derive---------------------------*/ > unsigned char LEFTmotorOneClock(unsigned char step, char dir) > { > step = step & 0x0f; > if(dir){ > switch(step){ > case 0x09: step=0x01; break; > case 0x01: step=0x03; break; > case 0x03: step=0x02; break; > case 0x02: step=0x06; break; > case 0x06: step=0x04; break; > case 0x04: step=0x0c; break; > case 0x0c: step=0x08; break; > case 0x08: step=0x09; break; > default: step=0x0c; break; > } > }else{ > switch(step){ > case 0x09: step=0x08; break; > case 0x01: step=0x09; break; > case 0x03: step=0x01; break; > case 0x02: step=0x03; break; > case 0x06: step=0x02; break; > case 0x04: step=0x06; break; > case 0x0c: step=0x04; break; > case 0x08: step=0x0c; break; > default: step=0x0c; break; > } > } > return step; > > } > > /* Stepping Motor derive---------------------------*/ > unsigned char RIGHTmotorOneClock(unsigned char step, char dir) > { > step = step & 0xf0; > if(dir){ > switch(step){ > case 0x90: step=0x10; break; > case 0x10: step=0x30; break; > case 0x30: step=0x20; break; > case 0x20: step=0x60; break; > case 0x60: step=0x40; break; > case 0x40: step=0xc0; break; > case 0xc0: step=0x80; break; > case 0x80: step=0x90; break; > default: step=0xc0; break; > } > }else{ > switch(step){ > case 0x90: step=0x80; break; > case 0x10: step=0x90; break; > case 0x30: step=0x10; break; > case 0x20: step=0x30; break; > case 0x60: step=0x20; break; > case 0x40: step=0x60; break; > case 0xc0: step=0x40; break; > case 0x80: step=0xc0; break; > default: step=0xc0; break; > } > } > return step; > } > > > > // > int main(void) > { > volatile unsigned char stepleft=0, stepright=0; > MCU_initialize(); > UART1_initialize(); > stdout = &mystdout; > Delay_ms(2000); > init_devices(); > MPUinit(); > Delay_us(10); > //insert your functional code here... > MOTOR_PORT_DDR = 0xff; > while(1){ > LineDatainput(); > printf("%03d\t | %03d\t | %03d\t | %03d\t\n\r",ADC_v1,ADC_v2,ADC_v3,ADC_v4); > //forward moving > stepright = RIGHTmotorOneClock(stepright, 1); > stepleft = LEFTmotorOneClock(stepleft, 0); > delay(3); > MOTOR_PORT = stepleft|stepright; > //printf("%d",stepright); > //printf("%d",stepleft); > } > return 0; > } >
9761 답변완료SE-SM243 스텝모터 스텝당 각도 문의 노성훈 2016-12-06 3,077
안녕하세요 SE-SM243 스텝모터를 구매하여 사용하고 있습니다. 구동할 때 스텝당 각도를 알고 싶습니다. 1상여자 방식으로 구동시 1펄스당 각도가 얼마인가요? 또 1-2상여자 방식일 때는 1상여자 방식일때 스텝당 각도의 절반으로 계산하면 될까요? 감사합니다.
관리자 답변 관리자 · 2016-12-06
안녕하세요? 고객님, 1상여자에서 한 펄스당 1.8도 돌아갑니다. 1-2상 여자는 0.9도입니다. 자료실의 매뉴얼도 참조하실 수 있습니다. 감사합니다 > > > 안녕하세요 > > SE-SM243 스텝모터를 구매하여 사용하고 있습니다. > > 구동할 때 스텝당 각도를 알고 싶습니다. > > 1상여자 방식으로 구동시 1펄스당 각도가 얼마인가요? > > 또 1-2상여자 방식일 때는 1상여자 방식일때 스텝당 각도의 절반으로 계산하면 될까요? > > 감사합니다. >
9760 답변완료스태핑 모터 2개 제어하기 질문입니다. 김정현 2016-12-05 2,869
#include <avr/io.h> #include <avr/interrupt.h> #define F_CPU 16000000UL // 16 MHz #include <util/delay.h> // #define MOTOR_ENABLE (PORTC=PORTC|0x80) #define MOTOR_DISABLE (PORTC=PORTC&0x7f) #define MOTOR_STEP_M0 (PORTC=(PORTC&0xcf)|0x00) #define MOTOR_STEP_M1 (PORTC=(PORTC&0xcf)|0x10) #define MOTOR_STEP_M2 (PORTC=(PORTC&0xcf)|0x20) #define MOTOR_STEP_M3 (PORTC=(PORTC&0xcf)|0x30) #define MOTOR_LEFT_CLK (PORTC=PORTC^0x01) #define MOTOR_RIGHT_CLK (PORTC=PORTC^0x04) #define MOTOR_LEFT_CW (PORTC=PORTC&0xfd) #define MOTOR_LEFT_CCW (PORTC=PORTC|0x02) #define MOTOR_RIGHT_CW (PORTC=PORTC&0xf7) #define MOTOR_RIGHT_CCW (PORTC=PORTC|0x08) // int main(void){ int i; DDRC=0xff;//motor DDRG=0x00; MOTOR_ENABLE; MOTOR_STEP_M3; MOTOR_LEFT_CW; MOTOR_RIGHT_CW; while(1){ if(PING&0x04){for(i=0;i<400;i++){ MOTOR_LEFT_CLK; _delay_ms(7); } //마이크로 스탭 180도(1스탭=0.45도) _delay_ms(3000);} if(PING&0x08){for(i=0;i<200;i++){ MOTOR_RIGHT_CLK; _delay_ms(7); } //마이크로 스탭 90도(1스탭=0.45도) _delay_ms(3000);} } } ------------------------------------- 여기서 양쪽에 모터 두개를 달면 동작이 안되는데 한쪽씩만 연결하면 작동이 됩니다.. 왜 그런 걸까요?? 모듈은 am-ms2고 모터는 sm243 보드는 AB-M128-B 사용 중입니다.
관리자 답변 관리자 · 2016-12-05
안녕하세요? 고객님, 같은 소스에 한쪽씩만 달면 되는 데, 두 쪽 다달면 안돌아가는 경우라면, 전류부족이라고 보입니다. 충분한 아답타를 사용해 주세요. 감사합니다. > > > #include <avr/io.h> > #include <avr/interrupt.h> > #define F_CPU 16000000UL // 16 MHz > #include <util/delay.h> > // > #define MOTOR_ENABLE (PORTC=PORTC|0x80) > #define MOTOR_DISABLE (PORTC=PORTC&0x7f) > #define MOTOR_STEP_M0 (PORTC=(PORTC&0xcf)|0x00) > #define MOTOR_STEP_M1 (PORTC=(PORTC&0xcf)|0x10) > #define MOTOR_STEP_M2 (PORTC=(PORTC&0xcf)|0x20) > #define MOTOR_STEP_M3 (PORTC=(PORTC&0xcf)|0x30) > #define MOTOR_LEFT_CLK (PORTC=PORTC^0x01) > #define MOTOR_RIGHT_CLK (PORTC=PORTC^0x04) > #define MOTOR_LEFT_CW (PORTC=PORTC&0xfd) > #define MOTOR_LEFT_CCW (PORTC=PORTC|0x02) > #define MOTOR_RIGHT_CW (PORTC=PORTC&0xf7) > #define MOTOR_RIGHT_CCW (PORTC=PORTC|0x08) > > > > // > int main(void){ > int i; > DDRC=0xff;//motor > DDRG=0x00; > MOTOR_ENABLE; MOTOR_STEP_M3; MOTOR_LEFT_CW; MOTOR_RIGHT_CW; > while(1){ > if(PING&0x04){for(i=0;i<400;i++){ MOTOR_LEFT_CLK; _delay_ms(7); } //마이크로 스탭 180도(1스탭=0.45도) > _delay_ms(3000);} > > if(PING&0x08){for(i=0;i<200;i++){ MOTOR_RIGHT_CLK; _delay_ms(7); } //마이크로 스탭 90도(1스탭=0.45도) > _delay_ms(3000);} > > } > } > ------------------------------------- > 여기서 양쪽에 모터 두개를 달면 동작이 안되는데 한쪽씩만 연결하면 작동이 됩니다.. > 왜 그런 걸까요?? 모듈은 am-ms2고 모터는 sm243 보드는 AB-M128-B 사용 중입니다. >
9759 답변완료pm-lcd-t-420g 예제소스 좀 주세요ㅠ! 이차영 2016-12-02 2,448
디바이스마트에서 구매했는데 라인 별 출력이 잘 안되서요ㅠ 소스 짜는게 아직 미숙해서 그러는데 예제소스 좀 받을 수 있을까요?
관리자 답변 관리자 · 2016-12-03
안녕하세요? 고객님, 저희 뉴티씨 제품을 이용하여 주셔서 감사합니다. AVR Studio V4.19 + GCC Tool Chain으로 된 20* 4라인 예제소스를 올려 드립니다. 참조하세요. > > > 디바이스마트에서 구매했는데 라인 별 출력이 잘 안되서요ㅠ > 소스 짜는게 아직 미숙해서 그러는데 예제소스 좀 받을 수 있을까요? >