发新帖我要提问
12
返回列表
打印
[应用方案]

NUC970BSP Linux 3.10.x配置相关

[复制链接]
楼主: 八层楼
手机看帖
扫描二维码
随时随地手机跟帖
21
八层楼|  楼主 | 2021-8-1 17:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
3.3.6 Touch Screen与tslib设置
当使用touch screen时,可以通过tslib 1.1来校正touch screen。

在applications.tar.gz解压缩后,进入tslib-1.1目录执行下列步骤:

1.编译tslib-1.1

#./configure –prefix=$(pwd)/install –enable-static –enable-shared –host= arm-linux

#make

#make install

2.将$(pwd)/install中所有文件复制到$(rootfs)目录下

3.修改$(rootfs)/etc/profile并增加下列几行。



4.修改$(rootfs)/etc/ts.conf


使用特权

评论回复
22
八层楼|  楼主 | 2021-8-1 17:42 | 只看该作者

5. 执行ts_calibrate校准程序,根据屏的指示点击屏幕,对触摸屏进行校准。完成校准后,执行ts_test测试程序,即可去测试触摸屏。如果测试触摸效果不好(无法点选特定的地方或画线有很大的偏差),建议再执行一次校正程序。


6. 执行ts_test,得到如下图显示:

# ts_test


使用特权

评论回复
23
八层楼|  楼主 | 2021-8-1 17:43 | 只看该作者
3.4 LINUX内核编译

内核设置完成后,在linux-3.10.x目录下执行“make”命令,即可编译内核。若编译通过,则产生内核镜像文件及使用zip压缩的内核镜像文件,它们会被放到源码的上一层的image目录中。


使用特权

评论回复
24
八层楼|  楼主 | 2021-8-1 17:43 | 只看该作者
4 Linux用户程序4.1 演示程序
NUC970 BSP在applications中提供了一些演示程序,下面介绍这些演示程序及其内容。

1.alsa-utils-1.0.23: ALSA命令工具

l 交叉编译命令如下:

$./configure –host=arm-linux –disable-nls –disable-nls –disable-xmlto CPPFLAGS= -I/usr/local/arm_linux_4.3/usr/include/ncurses LDFLAGS= -L/usr/local/arm_linux_4.3/usr/lib

l 播放混音设定

$./amixer set PCM 85%

$./amixer set Headphone 90%

l 录音混音设定

MIC录音设置

$./amixer set “Mic Bias” on

$./amixer set “Input PGA” 100%

$./amixer set ADC 90%

Line In录音

$./amixer set “Right Input Mixer R2” on

$./amixer set “Left Input Mixer L2” on

$./amixer set “L2/R2 Boost” 100%

$./amixer set ADC 90%

l 播放的命令

$./aplay

如要播放BSP内的音乐示例文件,命令如下:

$cd usr

$./aplay -c 2 -f S16_LE alsa/8k2ch.pcm

l 录音的命令:

$./arecord -d 10 -f S16_LE -c2 -r8000 -t wav -D plughw:0,0

l 同时录放的命令

$./arecord -f S16_LE -r 8000 -c 2 -D plughw:0,0 | ./aplay

2. Benchmark/netperf-2.6.0 网络性能测试工具

交叉编译命令:$./configure -host=arm-linux

3. Busybox-1.22.1/ busybox源码

交叉编译命令:

$ make menuconfig

Select applets to be build

$ make

4. demos程序

demos/alsa_audio 音乐示例程序

demos/cap 图像获取示例程序

demos/crypto 加密解密示例程序

demos/etimer 增强型定时器示例程序

demos/gpio GPIO示例程序

demos/irda 红外演示程序

demos/lcm/ lcd演示程序

demos/thread 线程演示程序

demos/rtc RTC演示程序

demos/uart uart演示程序

demos/wdt 看门狗演示程序

demos/wwdt 窗口看门狗演示程序

5. DPO_RT3070_LinuxSTA_V2.3.0.2_20100412

RT3070无线dongle开源驱动程序

6. 工具软件

l wireless_tools.29 WiFi设定工具包,包含了iwconfig,iwlist,iwpriv等工具

l Tslib-1.1 touch screen库,含校正及测试程序

l yaffs2utils.tar.gz yaffs2工具 $make

l lzo-2.09.tar.gz 压缩/解压缩工具

交叉编译命令如下:

$cd lizo-2.09

$./configure –host = arm-linux –prefix = $PWD/../install

$make

$make install

l libuuid-1.0.3.tar.gz 产生唯一序号工具

交叉编译命令如下:

$cd libuuid-1.0.3

$./configure –host=arm-linux –prefix=$PWD/../install

$make

$make install

l mtd-utils.tar.gz mtd-utils源码

交叉编译命令如下:

需要使用到lzo-2.09.tar.gz套件和libuuid-1.0.3.tar.gz套件

$cd mtd-utils

$export CROSS=arm-linux-

$export WITHOUT_XATTR=1

$export DESTDR=$PWD/../install

$export LZOCPPFLAGS= -I/home/install/include

$export LZOLDFLAGS= – L/home/install/lib

$make

$make install

7. QT编译

qt-everywhere-opensource-src-4.8.5: QT gui 源码

如果有使用tslib来支持触摸屏,请先修改如下文件

mkspecs/qws/linux-nuc970-g++/qmake.conf

指定QMAKE_INCDIR及QMAKE_LIBDIR,如下:

QMAKE_INCDIR = path to /tslib-1.1/install/include

QMAKE_LIBDIR = path to /tslib-1.1/install/lib

l 设定环境变量

$ export MY_CC_QT4_PREFIX=/usr/local/Trolltech/QtEmbedded-4.8.5

l 配置

$./configure

-prefix ${MY_CC_QT4_PREFIX}

-release -opensource -static

-qconfig dist

-no-exceptions -no-accessibility -no-stl -no-qt3support

-no-xmlpatterns -no-multimedia -no-audio-backend -no-phonon

-no-phonon-backend

-no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools

-no-declarative -no-declarative-debug -qt-zlib -qt-freetype

-no-gif -qt-libpng -no-libmng -no-libtiff -qt-libjpeg

-no-openssl

-nomake tools -nomake demos -nomake examples -nomake docs -nomake translations

-no-nis -no-cups -no-iconv -no-pch -no-dbus

-embedded arm -platform qws/linux-x86-g++ -xplatform qws/linux-nuc970-g++

-no-gtkstyle -no-nas-sound -no-opengl -no-openvg -no-sm -no-xshape

-no-xvideo -no-xsync -no-xinerama -no-xcursor -no-xfixes

-no-xrandr -no-xrender -no-mitshm -no-fontconfig

-no-xinput -no-xkb -no-glib -qt-gfx-linuxfb -qt-mouse-tslib

-qt-kbd-linuxinput

l 编译QT:

$make

l 编译QT程序

$ cd /path/to/qt-everywhere-opensource-src-4.8.5/examples/dialogs/trivialwizard

$ ../../../bin/qmake

$ make

l 运行QT程序

复制trivialwizard 到系统可以存取到的地方。

设定tslib环境参数

$ export QWS_MOUSE_PROTO=Tslib:/dev/input/event0

执行

$trivialwizard -qws


使用特权

评论回复
25
八层楼|  楼主 | 2021-8-1 17:44 | 只看该作者
4.2 交叉编译

有时在一些项目中需要移植软件到ARM平台,许多开源软件都已支持交叉编译,此时只要根据那些软件的说明文档进行交叉编译即可。
但有时遇到那些不支持交叉编译的软件时,就需要手动来更改Makefile。一般来说更改过后的Makefie与原始版本相近,只须做小幅更改就可支持交叉编译。下面列出了需要修改的部分。
l 编译工具的前缀字。如原本的Makefile设定gcc为编译工具,则在新的Makefile需要改成交叉编译工具arm-linux-gcc。其他如as、ld等工具也须更改为arm-linux-as及arm-linux-ld。
l 库文件及头文件所在的路径需作相应修改。交叉编译不使用x86系统下的glibc。而是使用工具链中所提供的占用系统资源比较少的uClibc。
下面列出了一个简单的交叉编译Makefile供参考:





使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则