2013-10-30 2 views
1

저는 프로젝트에서 Android에서 실행되는 Beaglebone black을 사용합니다. UART1을 사용해야합니다. UART1의 MODE를 설정해야한다는 것을 이해합니다. MODE0이어야합니다.Beaglebone에서 UART1을 구성 할 수있는 루트 권한

20>/SYS/커널/디버그/omap_mux/uart1_rxd

에코 0>/SYS/커널/디버그/omap_mux/uart1_txd

모든 작품을 에코 : 나는이 명령 ADB를 통해 그것을 할 수 있습니다 그렇게 좋아. 하지만 진짜 문제는 응용 프로그램 내부에서이 구성을 수행해야한다는 것입니다. 하지만 나는이 셸 명령을 실행할 수있는 권한이 없습니다. 왜냐하면 내가 뿌리가 맞지 않았기 때문입니다. 그래서 :

1)이 셸 명령을 실행하기 위해 beaglebone을 뿌리려면 어떻게해야합니까?

2) 또는이 파일을 쓸 수있는 권한이 있습니까? adb를 통해 chmod 777/sys/kernel/debug/omap_mux/uart1_rxd를 실행할 수 있으며 내 응용 프로그램 내에 쓰기 권한이 있습니다. 그러나 비글 본 재시작시 사용 권한이 손실되므로 솔루션이 아닙니다.

단순히 직렬 통신을 위해 UART1 (또는 다른 UART)을 사용하고 싶습니다. 그러나 모든 셸 명령은 내 응용 프로그램 내에서 실행되어야합니다. 어떻게해야합니까?

답변

0

해결책을 찾았습니다. 나는 그것을 필요로하는 누군가를 위해 그것을 게시하고있다. 당신의 PC

2) 열기 콘솔, 안드로이드 이미지를 가지고 rootfs에게 나노 명령으로 파티션

3) 개방 init.rc를 탑재

1) 마운트 SD 카드,

nano init.rc 

4) 부트 섹션에서 실행되는 쉘 명령이 있습니다. 다음 쉘 명령을 원하는 위치에 추가하십시오.

chmod 0666 /sys/kernel/debug/omap_mux/uart1_rxd 
write 20 /sys/kernel/debug/omap_mux/uart1_rxd 20 
chmod 0666 /sys/kernel/debug/omap_mux/uart1_txd 
write 0 /sys/kernel/debug/omap_mux/uart1_txd 0 

5) 파일을 저장하고 SD 카드로 Beaglebone을 부팅하십시오.

이제/sys/kernel/debug/omap_mux/uart1_txd 및/sys/kernel/debug/omap_mux/uart1_rxd에 읽기/쓰기 권한을 부여했습니다. 모드는 MODE0으로 설정됩니다.