도와주세요!!
글 수 15,339
2006.02.20 10:35:51 (*.141.91.201)
6668
안녕하세요..
가능합니다. 디바이스드라이버 소스인 dev_gpio.c 를 수정하셔야 합니다.
소스의 내용을 분석하셨어 직접수정을 하셔야 할것 같습니다.
저희가 소스 알고리즘까지 제공을 해 드릴 수는 없네요..
대략적으로 설명하자면 어플리케이션에서 ioctl( fd, IOCTL_GPIO_OUT_SET, 3 );
에서 넘긴함수는 디바이스드라이버 소스인 dev_gpio.c의 gpio_ioctl() 함수에서 사용합니다.
소스를 보시면 현재 GPIO PORT-C 2.3 번만 출력으로 설정하여 제어하게 되어 있습니다.
이것을 PORT-C 전부를 출력으로 설정하시고, 어플리케이션에서 넘겨오는 gpio_ioctl(.... ... ..., unsigned long arg)에서 arg 값에 따라 처리를 하시면 되지 않을까요...
물론 이 방법 말고 다른 방법도 있지만 어째든 소스 알고리즘은 개발자의 몫이 아닐까 생각됩니다.
그럼 수고하세요..
>ep9312 예제 led 소스를 보면
>
>ioctl( fd, IOCTL_GPIO_OUT_SET, 3 );
>
>이런식으로하면 3번을 킬수 있자나요...
>
>근데 포트 c를 한꺼번에 켜주고 꺼주는 방법없나요~~~~
>
>포트 c의 0,1,3번 켜주고 나머지 꺼주고 이런것을 한번에 하는 방법이요~~~~
>
>
가능합니다. 디바이스드라이버 소스인 dev_gpio.c 를 수정하셔야 합니다.
소스의 내용을 분석하셨어 직접수정을 하셔야 할것 같습니다.
저희가 소스 알고리즘까지 제공을 해 드릴 수는 없네요..
대략적으로 설명하자면 어플리케이션에서 ioctl( fd, IOCTL_GPIO_OUT_SET, 3 );
에서 넘긴함수는 디바이스드라이버 소스인 dev_gpio.c의 gpio_ioctl() 함수에서 사용합니다.
소스를 보시면 현재 GPIO PORT-C 2.3 번만 출력으로 설정하여 제어하게 되어 있습니다.
이것을 PORT-C 전부를 출력으로 설정하시고, 어플리케이션에서 넘겨오는 gpio_ioctl(.... ... ..., unsigned long arg)에서 arg 값에 따라 처리를 하시면 되지 않을까요...
물론 이 방법 말고 다른 방법도 있지만 어째든 소스 알고리즘은 개발자의 몫이 아닐까 생각됩니다.
그럼 수고하세요..
>ep9312 예제 led 소스를 보면
>
>ioctl( fd, IOCTL_GPIO_OUT_SET, 3 );
>
>이런식으로하면 3번을 킬수 있자나요...
>
>근데 포트 c를 한꺼번에 켜주고 꺼주는 방법없나요~~~~
>
>포트 c의 0,1,3번 켜주고 나머지 꺼주고 이런것을 한번에 하는 방법이요~~~~
>
>