'Serial.read()'로 읽어서 쓸 때는 이런 현상이 없습니다. 그런데 'Serial.readBytesUntil()'를 사용하여 데이터를 읽었더니 1초 정도 반응이 느린 듯한 느낌을 받았습니다. 아래 스크린샷을 보면 연속으로 명령을 보냈는데 묘하게 다음 요청의 응답이 오는데 1초가량의 텀이 있는 것 처럼 보입니다. 문제없는 스크린샷을 보면 좀 더 명확해집니다. 이건 각 명령어의 텀이 없습니다. 1. 원인 문서를 확인해 보았습니다. arduino reference - Serial.readBytesUntil() 문서에 보니 1) 결정된 길이를 읽거나(지정된 버퍼를 채울 때까지) 2) 지정된 시간이 초과하거거나( Serial.setTimeout() ) 3) 지정된 종결 문자가 올 때(함수별로 차이 있음)..
VS Code에 아두이노를 연결하여 개발하고 있는데..... 시리얼 모니터(Serial Monitor)에 입력이 안 됩니다??? 1. 아두이노 확장에서 입력하기 아두이노(Arduino) 확장에서 입력하는 정석인 방법은 1) 명령 팔레트(command palette)를 열고 2) 아래 명령어를 입력합니다. Arduino:Send Message To Serial Port 3) 전달할 명령을 입력합니다. ... 힘드네요 ㅋㅋㅋㅋㅋ 참고로 명령어 입력할 때마다 해야 합니다 ..... 마이크로소프트(Microsoft)에 분노하다. 그래서 그런지 시리얼 모니터에 입력 인터페이스 좀 만들어달라고 많은 개발자가 요청했습니다. 참고 : github - microsoft/vscode-arduino Issues : Feat..
비주얼 스튜디오(Visual Studio)에 훌륭한 아두이노 확장이 있긴한데.... 유료입니다. 그래서 그냥 'Arduino IDE'를 쓰고 있었습니다. 그런데 이번에 좀 덩치 큰 코드를 짜야 하는데 'Arduino IDE'는 너무 불편해서 'VS Code'에 세팅해서 써야 한다고 마음먹고 정리합니다. 이 포스팅에서는 가능하면 명령어가 아닌 UI로 작업합니다. 1. 확장 설치 VS Code의 확장에서 'Arduino'로 검색합니다. 'Microsoft'에서 만든 'Arduino'확장을 설치합니다. 설정(사용자) 확장 > Arduino > 확장 설정 을 선택하면 '사용자' 영역 설정이 나옵니다. '사용자'는 글로벌(전체) 설정을 말하는 것이고 '작업 영역'은 이 프로젝트의 영역의 설정을 말합니다. 같은 설..
별생각 없이 블록을 인증하고 쓰다가 보니 특정 블록에서 인증이 안되는 현상을 겪었습니다. 1. 원인 NFC 카드는 사용할 수 있는 블록의 번호가 정해져 있습니다. 제가 가지고 있는 카드는 미파레 1K(Mifare 1K) 호환 카드이니 인터넷에 뒤져보면.... 0x00 ~ 0x3E까지 사용 가능하다고 나옵니다. (참고 : ACR122U 공식 문서 페이지, ACR122U API 문서 다운로드 ) 2. 사용할 수 없는 블록 여기서 'Trailer Block'은 사용할 수 없는 블록입니다. 그러니 미레파 1K는 세 블록마다 한 블록씩 사용할 수 없다는 것입니다. Data(3) + Trailer(1) = 4 block = 1 Sector 이렇게 4블럭을 섹터라고 하고 이 트레일러 블록에는 이 섹터에 관한 인증정보..
이번에 테스트한다고 들어온 NFC 리더기(NFC Reader)는 ACR122U 시리즈(제가 사용하는 건 ACR1252U) 입니다. 그런데 아무리 해도 인증키가 불러와 지질 않는 겁니다. 1. 수많은 샘플과 프로그램들 인터넷에 돌아다는 각종 소스와 NFC(or RFID or Smart card)프로그램을 들도 같은 증상인 데다 오류 코드라고 내뱉는거라고는 "Error cord : 1F(31)" 뿐입니다. "Error cord : 1F(31)"이 에러 코드는 사실상 알 수 없는 에러를 의미합니다. (다른 의미가 있긴 하지만.... 실제거의 알 수 없는 에러 용도입니다 ㅎㅎㅎ) 웃긴 건 알고봤더니 이 에러는 내 실수 였..... "Error cord : 1F(31)"이게 나오면 일단 명령 자체를 제대로 구성해..
볼트와 암페어는 빈번하게 체크해야 되는데 매번 테스터기를 꺼내는 게 불편해서... 하나 만들어야겠다 해서 알리에서 다른 거 구매할 때 같이 구매한 부품입니다. LED 디지털 볼트/암페어 테스트터 모니터 패널 ( 0.56'' 0-100V 10A 50A 100A LED Digital Voltmeter Ammeter Car Motocycle Voltage Current Meter Volt Detector Tester Monitor Panel ) 알리 익스프레스 - 0.56 "0-100V 10A 50A 100A LED 디지털 전압계 전류계 자동차 오토바이 전압 전류계 볼트 감지기 테스터 모니터 패널 많은 판매자가 팔고 있는 부품이고 보통 1000원 내외입니다. 1. 배선 배선은 2가지 방식이 있습니다. 전원을 ..
핸드폰 무선 충전기를 만들려면 무선 송신, 무선 수신, 정류 이렇게 3단계가 필요합니다. 이 시리즈가 핸드폰 무선 충전기까지 만들 수 있을지 모르겠습니다만.... 하는 데까지 해보겠습니다 ㅎㅎㅎ 이글에서는 무선 송신, 무선 수신을 하겠습니다. 1. 준비 요즘 사용하는 핸드폰 무선 충전기의 원리는 '자기유도 방식'입니다. 자세한 원리는 검색하시면 많이 나옵니다. 필요한 부품은 아래와 같습니다. 2N2222 트랜지스터 NPN 타입 1개 - 2N2222 패밀리나, 2N3904를 사용해도 됩니다. 1K 저항 1개 - 필요에 따라 다른 저항을 사용해도 됩니다. 100 저항 1개 - 2N2222 트랜지스터의 과열방지용입니다. - 더 낮은 저항을 연결해도 됩니다. 에나멜 동선 AWG24 필요한 만큼 - 직경 0.5m..
피코를 큐라에서 사용하려면 수동으로 설정해야 합니다.큐라에 피코설정을 해봅시다. 1. 프린터 추가일단 사용할 프린터 모델을 추가해야 합니다. 설정 > 프린터 > 프린터 추가 비 네트워크 프린터 추가 > Custom > Custom FFF printer를 선택하고 프린터 이름을 'Pico'로 넣고 추가해줍니다. 프린터 설정은X(너비) : 100mmY(깊이) : 100mmZ(높이) : 100mm "Extruder 1" 탭에 호환되는 재료의 직경 : 1.75mm 2. 피코에 맞는 큐라 프로파일 불러오기프로파일은 설정된 걸 불러 사용합니다. 설정 > 설정 보기 프로파일 > 가져오기첨부된 파일을 다운받아 선택해 줍니다. 추가된 프로파일을 선택하고 '활성화' 버튼을 눌러줍니다. 3. 테스트 출력하기이제 테스트로 작..
3D 프린터를 사고 싶었지만.....쓸만한 건 저렴해도 수십만원이고아주 싼 건 너무 조립하다 성격 다 버릴 거 같고 ㅎㅎㅎㅎ 이 와중에 10만원???????? (참고 : 손도리 닷컴 - 교육용 DIY 3D프린터 손도리 피코 PICO) 1. 구성품과 조립본체가 들어 있는 박스와 교육용 책이 한 권 들어 있습니다. 박스가 이렇게 되어 있는데.... 3층으로 쌓여 있습니다. 필라멘트, 거치대, usb, 드라이버, usb 케이블 등등이 들어 있습니다. 다음 칸에는 Z축과 헤더가 들어있습니다. 다음 칸에는 본체와 베드가 있습니다.베드는 그냥 자석 베드입니다. 조립은 Z축만 끼워주면 됩니다. 2. 세팅조립한 다음 레벨링을 해야 합니다.홈버튼을 눌러주면 위치를 잡습니다. 본체에 전원을 끄고 수동으로 헤더를 움직여 줍..
저가 아두이노 호환 보드인 "Elegoo Nano"를 샀습니다. 스케치를 업로드했더니..... avrdude: stk500_recv(): programmer is not respondingavrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x30avrdude: stk500_recv(): programmer is not respondingavrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x30 1. 오류의 원인'Elegoo Nano V3.0'의 부트로더(Bootloader)가 예전 버전이라 기본 프로세서의 보드레이트(Baudrate)와 다르다고 합니다.그래서 프로세서를 예전 버전으로 설정..