전체 글
영문 윈도에 설치된 프로그램의 한글이 깨져보일 때
최근 노트북 OS를 영문 윈도 11로 업그레이드하면서 회사에서 개발하는 프로그램에 문제가 생기는 일이 있습니다. 프로그램 실행은 되는데 상단 메뉴를 누르는 순간 프로그램이 그냥 꺼져버리는 문제였죠. 처음에는 윈도10과 윈도11의 호환성 문제일 거라고 생각했습니다. 하지만 자세히 보니 프로그램 대화창의 한글이 깨져있는 것을 발견하였습니다. 그래서 언어 문제라는 생각이 들었습니다. 하지만 저는 개인적으로 영문 OS를 사용하는 것이 익숙해서 운영체제의 표시 언어는 영어로 유지하면서 이 문제를 해결하고 싶었습니다. 그래서 열심히 인터넷을 뒤져본 결과 아래와 같은 방법으로 문제를 해결하였습니다. 문제 프로그램을 실행했는데, 한글 표기가 안 된다. 메뉴에 한글이 포함된 경우, 메뉴 버튼을 누르는 순간 프로그램이 종..
STM32 최소 회로를 구성하기 위한 문서
스텝모터 제어 보드에 사용할 MCU로 STM32G030F6P6를 선정했다. 이제 최소 회로를 구성해야 한다. 그런데 데이터 시트를 찾아봐도 최소 회로에 대한 내용이 없다. ST 홈페이지에서 문서 자료를 뒤져보니 적절한 Application note를 찾았다. 문서 제목은 "Getting started with STM32G0 Series hardware development"이고 문서 번호는 AN5096이다. 문서 구하는 방법 ST 공식 홈페이지(https://www.st.com)에%EC%97%90) 접속한다. 상단 검색창에 AN5096을 입력한다. 검색 결과에 나타난 링크를 클릭하면 곧바로 PDF 파일을 다운받을 수 있다. 요약 이 문서에는 STM32G0 시리즈의 전원 공급, 클록 관리, 리셋 제어, 부..
MCU를 선정하다.
MCU는 ST사의 STM32G030F6P6로 선택하기로 했다. 아래와 같은 이유로 적당한 제품이라는 생각을 했다. 현재 기준으로 재고가 충분함 (digi-key) 값이 저렴함: $1.68 2개의 UART: 하나는 UUB와 통신용, 다른 하나는 모터 드라이버와 통신용 1개의 Advanced Timer, 4개의 General purpose Timer: PWM 생성할 때 필요함 17개의 GPIO: 여유롭지는 않지만 부족하지 않을 듯함 64MHz CPU: UART 파싱과 PWM 출력을 하기에는 충분하지 않을까 생각한다. ST 홈페이지를 뒤져보면 스텝 모터 제어에 추천되는 제품군을 소개한 것을 찾을 수 있다. 그중 가장 기본이 되는 라인이 64MHz의 CPU를 가지고 있다. 그렇다면, 괜찮지 않을까? 다음은 MC..
Motor Driver를 선정하다.
Allegro사의 A4988과 비슷한 수준의 드라이버를 사용하기로 한다. 참고로 Allegro사는 일본의 Sanken사가 미국에서 세운 자회사이다. Sanken사의 모터 드라이버 정보를 알아보다가 알게 되었다. 모터 드라이버 IC는 독일의 Trinamic사의 TMC2226으로 선택했다. Allegro의 A4988과 유사한 스펙을 가졌다. 값도 저렴한데 재밌어 보이는 기능이 많이 포함되어 있다. 모터 동작 소음을 최소화하는 기능 (StelthChop2) 고속동작에서 정밀하게 전류 제어 가능 (SpreadCycle) 1/256 스텝의 마이크로 스텝 제어 가능 (MicroPlyer) 소모 전류 효율을 높이고 발열도 줄이는 기능 (CoolStep) 센서 없이 Homing하고 부하를 감지하는 기능 (StallGu..
[책] 손에 잡히는 Vim
처음 Vim을 접하게 된 것은 2013년도 즈음이다. 아마 라즈베리파이와 함께 리눅스를 처음 접하게 되면서였던 걸로 기억한다. 그 당시 나에게 Vim은 무슨 키를 쳐야 글이 써지는지도 모르겠고 종료시키는 방법도 알 수 없는 투박하고 불친절한 편집기였다. 그래서 그때는 '이것은 못 써먹을 도구다'라고 생각했다. 그러다 Vim에 매료되기 시작한 계기는, 2016년도에 이름을 대면 알만한(?) 개발자가 진행하는 파이썬 강연을 듣게 되면서이다. 처음 접한 파이썬이 신기하고 재밌기도 했지만, 그 자리가 즐거웠던 요소 중의 하나는 그 강연자가 Vim을 다루는 모습을 지켜보는 것이었다. 어떻게 하면 저렇게 빠르고 우아하게 코드를 칠 수 있을까 생각하며 시간을 보냈었다. 지금 나는 Vim을 무척 좋아한다..
재고 부족
디바이스마트로부터 재고 부족 전화, 결국 Mouser 선택 디바이스마트에 주문한 다음날 재고가 없다는 전화를 받았다. 아무래도 RS측에서 재고량 업데이트가 안되어서 그런듯하다. 그래서 결국 가장 빠르게 받을 수 있는 Mouser에 주문했다. 부품값은 USD 25.09에 배송비는 USD 16로 합이 USD 41.09이다. 한화로 대략 47,000원 정도. 이번에는 취소되지 않길!
USB to UART Board 부품 구입기
재고가 없다!? 부품 주문하려니까 FT230XS 재고가 없다. 부품 변경하기로 했던 당시에는 충분했던 것 같은데 말이다. 아이러니하게 CP2102N은 여유가 있다. 지금에 와서 또 설계를 바꿀 수 없고, 재고가 들어올 때까지 기다릴 수밖에 없을 것 같다. 부품 쇼핑 사이트별로 입고 날짜가 다른데 조사해봤더니 아래와 같았다. Digi-Key: 21년 9월 16일 Mouser: 21년 8월 26일 element14: 22년 2월 7일 RS: 21년 7월 22일 일정상 RS에서 구매하는 게 좋아 보인다. RS는 좀 비싸네? 그런데 함께 구매하려는 2012 규격의 LED 칩이 RS에서는 단가도 높고 최소 주문 수량도 많아서 고민이 좀 필요했다. 그냥 국내에서 값싼 중국산을 사서 써도 되겠지만 그러고 싶지 않았다..
USB to UART 변환 보드 제작 주문 맡겼다.
FT230XS을 사용하기로 하다 별것 아닌 단순한 보드임에도 작업하는 데 정말 오래 걸렸다. 회사 일도 바쁘고 육아도 하느라 작업 시간 내기가 힘들었는데, 그래도 포기하지 않고 끝낸 결과물이다. 처음에는 Silicon Labs의 CP2102N으로 만들 계획이었는데, 부품 수급이 불안정하기도 하고 패키지가 QFN타입이라 수삽 하기 어려울 것 같아 다른 칩으로 바꾸기로 하였다. 그래서 선택한 게 FTDI의 FT230XS이다. CP210X시리즈가 사용하기 편하다고 하는데, FT230XS도 기능이 단순해서 회로 그리기도 아주 쉬웠다. 선배의 조언 아트웍 작업할 때 고민을 많이 했다. 처음에는 보기 좋게 부품들을 가지런히 줄 세우고 싶었다. 그런데 회사 선배가 몇 가지 조언을 해주었는데 그에 따라서 전면 수정 했..