最近跟随一篇BBB学习的博客熟悉beaglebone black的在eclipse下的C/C++开发流程,先搭建Ubuntu下eclipse的开发环境。通过对GPIO、ADC和UART等设备的操作对该板的开发有一个直观的印象,在linux下把这些设备生成相应的设备文件,通过命令行、shell脚本文件和C/C++程序均可对设备文件操作。
在eclipse下新建工程的流程:
新建工程File→New→C++Project;
在C++Project页面,输入工程名,Projecttype→Executable→Empty Project,Toolchains→CrossGCC;
在Cross GCC Command页面,Cross compile Prefix->arm-linux-gnueabihf-
按Finish即可。
注:交叉编译器前缀的确定过程,ssh远程登录beaglebone black,输入“arm-”后按TAB键自动补全出现arm-linux-gnueabihf-,即为本地的编译器前缀,继续按TAB键自动补全出现以“arm-linux-gnueabihf-”为前缀的命令:
root@beaglebone:~#arm-linux-gnueabihf-
arm-linux-gnueabihf-cpp arm-linux-gnueabihf-gcc
arm-linux-gnueabihf-cpp-4.6 arm-linux-gnueabihf-gcc-4.6
arm-linux-gnueabihf-g++ arm-linux-gnueabihf-run
arm-linux-gnueabihf-g++-4.6
1.GPIO44操作
echo 44 >/sys/class/gpio/export 使能GPIO44功能
echo out >/sys/class/gpio/gpio44/direction使能GPIO44功能后,在/sys/class/gpio/下生成目录GPIO44,该目录下的有相关属性和变量寄存器文件,如direction,value,对这些文件操作既是对GPIO44的操作。
2.ADC操作
echo BB-ADC >/sys/devices/bone_capemgr.x/slots使能ADC功能
/sys/bus/iio/devices/iio:device0/ 使能后,目录/sys/bus/iio/devices/生成ADC设备文件iio:device0,该目录下包括相关的属性和变量寄存器文件,8个ADC引脚的值,用cat查看
3.UART4操作
echo BB-UART4 >/sys/devices/bone_capemgr.x/slots使能串口4功能
使能后,/dev/下生成设备文件ttyO4,对应UART4,对该文件操作既是对串口4的操作