기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요^^

왕초보가 잘나가다가 또 막히네요;;;

Serial 통신 프로그램까지 다만들어놓고 장치를보니 FTDI USB장치라서
장치연결도 못하고 있습니다.

커널은 2.6.15입니다.
커널 컴파일전에 USB-FTDI관련 옵션으로 체크는 했습니다만,
아래와 같이 커널부팅시 드라이버가 등록 되었다고 나옵니다.

--boot log-----------------------------------------------------------
...
usbcore: registered new driver usbserial
drivers/usb/serial/usb-serial.c: USB Serial Driver core
drivers/usb/serial/usb-serial.c: USB Serial support registered for FTDI USB Sereftdi_sio 1-1:1.0: FTDI USB Serial Device converter detected
drivers/usb/serial/ftdi_sio.c: Detected FT232BM
usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0
usbcore: registered new driver ftdi_sio
drivers/usb/serial/ftdi_sio.c: v1.4.3:USB FTDI Serial Converters Driver
...
----device file-----------------------------------------------------

~ # ls /dev/tty*
/dev/tty    /dev/tty2   /dev/tty5   /dev/tty8   /dev/ttyS1
/dev/tty0   /dev/tty3   /dev/tty6   /dev/tty9
/dev/tty1   /dev/tty4   /dev/tty7   /dev/ttyS0
~ #

----module config--------------------------------------------------

~
/etc # cat modules.conf
alias eth0
alias char-major-3 off
alias char-major-4 off
/etc #

-------------------------------------------------------------------


insmod로 모듈등록도 안했는데
이런 메시지가 나오면 바로 사용하면 되는건지 궁금합니다.

그런데 /dev/ttyUSB0가 없네요
심볼릭 링크를 어디로 거는지도 모르겠네요 헐;;;

마지막으로 커널 옵션줄때 yes체크와 module체크의 차이가 있습니까?
module체크하고 컴파일하고나서 find로 찾으니까 모듈보이던데
yes체크하니까 모듈이 없었습니다.

긴글 읽어주셔서 감사드립니다^^

고현철

2006.10.24 20:33:35
*.117.46.252

1. 커널에서 built-in으로 하게 되면 module이 아닙니다. 그냥 커널 올라갈 때 initialize되게 됩니다.

2. module로 컴파일 했다면 당연히 module로 올려야겠지요.

3. tty로 잡히기는 할텐데, 2.6.15라면 udev에서 살려줘야 하지 않나 싶네요. 보통은 살려주지 않으면 나오지 않습니다. 물론 udev를 썼을때지만요. 아닐 경우는 어쩔 수 없이 직접 mknod로 살려줘야 하고요.

김창연

2006.10.24 21:17:01
*.250.35.153

그럼 모듈로 올리고 mknod로 /dev/ttyUSB0로 걸어주면 되는겁니까?
디바이스 잡는 방법의 문서를 찾고있는데 이해가 힘드네요;
대략 예상되는 방법을 좀 가르쳐 주세요^^

1. USB FTDI 모듈로 설정후 커널컴파일
2. insmod로 모듈등록
3. mknod로 /dev/ttyUSB0 생성


특히 3번 mknod 명령어 사용법을 잘모르겠습니다.
예) mknod /dev/ttyUSB0 c 80 2

장치 파일명 -> /dev/ttyUSB0
b -> 타입이 블록이아니라 c -> 시리얼 통신이므로 케릭터 형일것 같구요
major 넘버는 80이고 minor넘버는 2로 임의로 설정했습니다.
(insmod해서 연결하는건가요?;;)

이제현

2006.10.24 21:24:16
*.193.44.18

제가 데스크탑에서 FT232로 만들어진 USB-Serial 변환기를 사용중인데요..
참고로 제 데탑 리눅스는 2.6.16입니다.
udev가 설정 되어있지 않다면, 강제로 mknod /dev/ttyUSB0 c 188 0 이라고 node를 만들어 보세요.

이제현

2006.10.24 21:25:05
*.193.44.18

참, 먼저 노드를 만들고 올리시는게 좋습니다.

김창연

2006.10.24 21:48:30
*.250.35.153

먼저 모듈로 커널설정후 다시 커널컴파일 한 후 다음의 명령어를 입력했습니다.

/ # find / -name ftdi*
/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial/ftdi_sio.ko

/ # cd /lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial/
/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial # ls
ftdi_sio.ko usbserial.ko
/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial # insmod ftdi_sio.
ko
Using ftdi_sio.ko
insmod: cannot insert `ftdi_sio.ko': Invalid module format (-1): Exec format err
or
/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial # insmod usbserial
.ko
Using usbserial.ko
insmod: cannot insert `usbserial.ko': Invalid module format (-1): Exec format er
ror

/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial # mknod /dev/ttyUS
B0 c 188 0

이제현님께서 말씀하신 mknod /dev/ttyUSB0 c 188 0는 실행되었는데요

insmod로 모듈올리니깐 맨위와 같이 오류가 나오네요;

mknod로 노드 생성후 다른작업은 필요없는건가요?
modules.conf 파일 수정해줘야 하지않을까요?

김창연

2006.10.24 21:53:58
*.250.35.153

그런다음 시리얼 프로그램을 실행했는데 아래처럼 에러가 발생합니다.

/tmp # ./tserial24
/dev/ttyUSB0: No such device or address
/tmp #

고현철

2006.10.24 22:12:14
*.117.46.252

insmod: cannot insert `ftdi_sio.ko': Invalid module format (-1): Exec format err
or
/lib/modules/2.6.15.2-QplusFCE-v0.3/kernel/drivers/usb/serial # insmod usbserial
.ko
Using usbserial.ko
insmod: cannot insert `usbserial.ko': Invalid module format (-1): Exec format error


이 메세지를 보시면 아시겠지만, module로 안올라 간겁니다. 장비에서 insmod 한 것은 맞겠지요?

커널 로그를 확인해 보시던지 아니면 driver에 printk를 넣어서 에러를 확인하시기 바랍니다.
mknod는 그 다음이지요.

김창연

2006.10.24 23:06:19
*.250.35.153

됩니다^^

정말 감사합니다~
/tmp # ./tserial4 /dev/ttyUSB0 38400
setting speed 38400
C-a exit, C-x modem lines status
[STATUS]: RTS DSR DCD DTR
? 쉈J? BB濕f?BBB#G擎】BB죞?O? BB?JBB!bs?? Z背 綴폟J?BBBr>? B"B?}뒹?
BBv?O0?B♀?!BBbs?_jZ두

그런데 글씨가 왜깨질까요? 아마 소스의 인코딩 문제같은데요^^;
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6348 binder에서 BnInterface나 BpXXX이렇게 붙는데요 Bn과 Bp는 어... [1] BellFive 2010-07-28 10800
6347 LCD 디스플레이 관련 질문입니다. file [2] 조현호 2011-08-31 10458
6346 가상머신(virtualbox, vmware) 드라이버 설정 환경 문의 입니다. [2] pedor11 2014-01-03 9804
6345 [질문/완료] 무선랜 붙여서 핑 날렸는데,, 문제 발생.. [5] 장병남 2008-09-23 9650
6344 Q&A 게시판 사용시 주의사항. 고현철 2006-04-05 9516
6343 [완료] Crosstool 0.43으로 toolchain 제작 시도중에. [2] 김성재 2008-12-03 9379
6342 Arndale + MT-6620 [2] nsys 2012-12-08 9355
6341 MCU / AP [6] 김민욱 2018-08-27 9036
6340 NAK bailout생기면서 I2C 통신 fail이 나네요. 훌러덩 2012-04-10 8975
6339 [질문] x86(AMD geode LX800) 보드는 구입이 가능한가요?[완료] [12] 김성주 2007-03-15 8958
6338 kernel source중 gpio와 관련된 질문입니다. [1] 소노공 2010-12-10 8086
6337 USB storage 마운트 어떻게들 하시나요. <== [완료] [11] 박영학 2006-09-23 8044
» [s3c2440] FTDI USB Serial converter사용하고 싶은데요??[완료... [8] 김창연 2006-10-24 7849
6335 Android 포팅 방법에 대한 질문 [11] 전병환 2009-04-09 7746
6334 안드로이드폰에서 통화중 녹음 [3] 최강산 2010-07-30 7421
6333 안드로이드 커널 소스 다운 받는 방법.. [3] 이성호 2009-03-12 7309
6332 6410을 이용해서 영상 Encoder/Decoder를 구현하려고 합니다. [9] 이종우 2009-03-04 7281
6331 NDK로 native C application 컴파일하기 [2] [春] 2010-01-15 7151
6330 임베디드 보드의 top 명려에 대한 질문입니다.(우분투top 비교, 프로... [9] pedor11 2014-03-05 7024
6329 안드로이드에서 SD카드 인식이 않되네요. [4] 유태경 2009-12-06 7004

사용자 로그인