2013/03
-
Cygwin에서 gcc3을 기본 컴파일러로 설정하기TIP&TECH/윈도우즈 2013. 3. 21. 10:40
옛날 라이브러리 등을 컴파일하기 위해서는 gcc4가 아니라 gcc3로 컴파일해야 할 때가 있습니다. configuration 스크립트 등이 잘 구성되어 있다면 옵션으로 gcc3를 사용하도록 지정할 수도 있겠지만, 그렇지 않은 경우라면 직접 많은 스크립트나 Makefile을 수정해야 할지도 모릅니다. 이럴 때는 다음과 같이 gcc3를 기본 컴파일러로 설정하면 됩니다. $ /usr/bin/set-gcc-default-3.sh 물론, 다시 gcc4로 되돌릴 수도 있습니다. $ /usr/bin/set-gcc-default-4.sh
-
Cygwin에서 sudo 사용하기TIP&TECH/윈도우즈 2013. 3. 21. 10:35
우분투 등에서 사용하던 쉘 스크립트를 Cygwin에서 그대로 실행하다 보면 sudo 명령어가 없어서 다음과 같은 에러가 출력되면서, 더 이상 작업을 진행을 하지 못하게 될 때가 있습니다. sudo: command not found 계속 작업을 진행하기 위해서는 쉘 스크립트에서 sudo를 제거해줘야 합니다. 왜냐하면 Cygwin에서는 시스템 관리자 권한을 따로 얻기 위해 sudo와 같은 명령어가 없기 때문입니다. 하지만, dummy 역활을 수행하는 sudo 파일을 만들면 쉘 스크립트의 수정 없이 작업을 진행할 수 있습니다. $ cat > /usr/bin/sudo
-
Cygwin 삭제하기TIP&TECH/윈도우즈 2013. 3. 21. 10:28
Cygwin은 "프로그램 추가/삭제"를 통해 삭제할 수 없므로, 관련 파일과 레지스터 키를 직접 삭제를 해줘야합니다. 먼저, Cygwin에서 실행하고 있는 데몬이 있다면 모두 중지합니다. 더보기 예를 들어, 다음과 같이 Cygwin에 있는 ssh 데몬을 윈도우 서비스에 등록해서 사용하고 있었다면 중지하고 삭제해야 합니다. Cygwin에서 윈도우 서비스에 등록한 데몬을 찾고자 한다면 다음과 같은 명령어를 사용하시면 됩니다. $ cygrunsrv -L cygsshd 그리고, 목록에 있는 서비스를 중지하고 삭제합니다. $ cygrunsrv -S cygsshd $ cygrunsrv -R cygsshd 이외에도 해줘야 할 점이 있는지는 https://cygwin.com/faq/faq.html#faq.setup.u..
-
리눅스에 PPPoE 서버 구축하기TIP&TECH/리눅스 2013. 3. 14. 12:27
※ 이 포스팅에 사용된 리눅스는 페도라를 사용하였습니다. PPPoE 서버를 구축하고 테스트하기 위해 다음과 같이 환경을 구축 하였습니다. 리눅스에 PPP 데몬 및 PPPoE 플러그인을 설치합니다(yum을 이용하였습니다). # yum -y install ppp rp-pppoe 쉘 프롬프트 앞이 #로 시작되는 것은 root에서 실행하는 것을 가르킨다. PPPoE 관련 설정을 합니다. # cat > /etc/ppp/pppoe-server-options &1 "test" * "test" 192.168.1.1 EOF # echo "192.168.1.1-20" > /etc/ppp/allip PPPoE 서버를 시작하기 위한 스크립트를 작성합니다. # cat > /etc/ppp/pppoe-start /proc/sys/..
-
IR 신호 구성 (NEC 방식)하드웨어 2013. 3. 13. 14:50
IR 리모컨의 신호 구성 방식은 여러가지가 있지만, 시중에서 가장 값 싸게 구할 수 있는 리모컨은 대부분 NEC 방식의 신호 구성을 가집니다. 그 신호 구성은 다음과 같습니다. 키 프레임 Data와 /Data는 1의 보수 관계입니다. 예를 들면 Data가 55h이면 /Data는 AAh 입니다. Custom 코드는 16비트, Data와 /Data는 각각 8비트 입니다(Custom 코드도 Data와 마찬가지로 1의 보수 값이 포함되어 있습니다). 프레임 간의 간격은 108ms 입니다. 비트 구조 반복 프레임 키를 길게 누르면 키 프레임 뒤에 반복 프레임이 들어옵니다. 참고 사이트 http://wiki.altium.com/display/ADOH/NEC+Infrared+Transmission+Protocol
-
Windows에서 USB 시리얼 포트 자동 인식하기프로그래밍/윈도우즈 2013. 3. 13. 14:42
요즘은 MCU에도 USB 기능이 원칩화 되면서 점점 UART to RS232C로 사용하지 않고 UART to USB로 사용할 수 있습니다. 그러다보니 별도의 추가 비용없이 USB Serial 기능을 사용할 수 있게 되어 이제 많이들 USB로 디버깅 메시지들을 보고 계시지요. 그런데, Windows 어플리케이션에서 USB 시리얼을 연결하여 사용하다가 Windows 어플리케이션에서 연결을 끊지 않은 상태에서 USB 시리얼 케이블을 뽑았다가 다시 연결하거나 또는 타깃 보드가 리셋되면서 USB 연결이 끊어져 Windows 어플리케이션에서 연결을 끊고 다시 연결하려면 연결이 않되는 버그가 있습니다. 예를 들어 Windows에서 타깃 보드와 시리얼 통신을 하고 있다가 보드에 F/W 다운로드하고 리셋하면 다시 연결하..
-
리눅스 어플리케이션에서 GPIO 사용하기프로그래밍/리눅스 2013. 3. 13. 14:21
※ 이 글에 사용된 마이크로프로세서는 TI사의 Sitara AM1808을 사용하였습니다. 리눅스 개발을 처음 접했을 때 주변 기기를 제어할 줄 몰라 난감했던 기억이 있습니다. 그나마 SPI나 I2C 등을 이용하는 것은 /dev 디렉터리에 있는 노드들을 사용해서 제어하는 방법은 여기 저기 잘 정리되어 별문제 없었지만, GPIO는 따로 노드가 존재하지 않아서 간단한 조작조차 리눅스 디바이스 드라이버로 만들어서 제어했던 기억이 있습니다... 그래서 간단히(?) 리눅스 어플리케이션에서 GPIO를 사용하는 방법을 정리해 볼까 합니다. 먼저, 리눅스 커널 빌드 옵션을 설정합니다. Device Drivers ---> -*- GPIO Support [*] /sys/class/gpio/... (sysfs interfac..
-
리눅스 쉘 프롬프트를 LCD에 표시하기TIP&TECH/리눅스 2013. 3. 12. 19:51
※ 이 글에 사용된 마이크로프로세서는 TI사의 Sitara AM1808을 사용하였습니다. menuconfig를 실행하여 다음 항목들을 사용하도록 설정합니다. Device Drivers ---> Graphics support ---> Console display driver support ---> Framebuffer Console support /etc/inittab 파일에서 쉘 프롬프트를 출력할 디바이스를 설정합니다. 설정 방법은 각 시스템마다 틀리니 다음 예시는 참고만하시기 바랍니다. con:2345:respawn:/sbin/getty 115200 /dev/tty0 vt100 또는 1:2345:respawn:/sbin/getty 38400 tty1