《经典嵌入式-硬件软件开发软件及常用命令综合》由会员分享,可在线阅读,更多相关《经典嵌入式-硬件软件开发软件及常用命令综合(25页珍藏版)》请在金锄头文库上搜索。
1、1第-章 嵌入式硬件开发环境1.1 嵌入式系统的概念以应用为中心,以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。开发机称为宿主机,应用机称为目标机。1.2 熟悉 OURSPXA270RP 实验箱的硬件环境1、认识核心板和扩展板2、认识 nor flash、nand flash、sdram 、ARM 处理器3、熟悉电源接口、并口、JTAG 接口、串口、网口、USB 接口4、熟练掌握将 PC 机与开发实验箱的连接第二章 Linux 常用命令Shell 与用户间的关系如图 2.1 所示。用户在提示符下输入的命令都由 Shell 先解释然后传给
2、 Linux 内核。图 2.1 内核、Shell 和用户的关系小知识:命令的使用可以通过 man 命令名或命令名 -help 的方式获得帮助。1、ls: 列出目录的内容,常用参数有 -l(长文件名显示格式)和 -a(显示所有文件), 显示格式为:文件类型与权限 链接数 文件属主 文件属组 文件大小 修改的时间 名字2、find: 在指定目录中搜索文件,常用参数为-name,如 find /usr/qpe/pic/ -name *.png3、cd: 改变工作目录。可使用“cd ”回到前次工作目录。 “./”代表当前目录, “./”代表上级目录。4、mkdir: 创建一个目录,可以一次建立多个目录
3、,常用参数有-p(自动创建指定路径2中不存在的目录),如 mkdir /home/lny/myfile5、rm: 删除一个目录中的一个或多个文件或目录,常用参数-f( 删除已存在的目标文件而不提示),-i(在覆盖目标文件前要求用户确认),-r(递归地删除该目录及其子目录下的所有内容)6、cp: 将给出的文件或目录复制到另一文件或目录中, 常用参数有-a(保留链接、文件属性、并复制其子目录),-f(同 rm),-i(同 rm)7、mv: 为文件或目录改名或将文件由一个目录移入另一个目录中,常用参数-f(同 rm),-i(同 rm)8、ln: 为某一个文件在另外一个位置建立一个符号链接,常用参数-
4、s(建立符号链接),如在当前目录下创建/usr/qpe/lib/fonts 的软链接可以用命令ln -s /usr/qpe/lib/fonts/ ./fonts9、fdisk: 可以查看硬盘分区情况,并可对硬盘进行分区管理,如 fdisk -l10、mount:磁盘挂载命令。如挂载根目录 mount o soft,timeo=100,rsize=1024 192.168.0.100:/ /mnt;挂载 U 盘 mount t vfat /dev/sdb1 /mnt/usb挂载 windows 目录为 mount -o username=administrator,password=pldy12
5、3,iocharset=utf8 /172.21.28.71/c /mnt/c若想设置在开机时自动挂载,可在文件“/etc/fstab”中加入相应的设置行即可。11、echo: 显示字符串12、export: 设置新的环境变量,如 export QTDIR=/usr/local/Trolltech/Qt-4.4.3export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH13、chmod: 改变文件的访问权限. 文件的访问权限可表示成: - rwx rwx rwx。在此设有三种不同的访问权限:读(r) 、写(w )和运行(x) ;三个不同的用户级别:文
6、件拥有者(u) 、所属的用户组(g)和系统里的其他用户(o) 。可增加一个用户级别 a(all)来表示所有这三个不同的用户级别。 对于第一种符号连接方式的 chmod 命令中,用加号“+” 代表增加权限,用减号“”删除权限,等于号“=”设置权限,如 chmod a+rx,u+w /home/lny/myfile 对于第二种八进制数指定的方式,将文件权限字符代表的有效位设为“1” ,即“rw-”、 “rw-”和“r-”的八进制表示为“110”、 “110”、 “100”,把这个 2 进制串转换成对应的 8 进制数就是 6、6、4,也就是说该文件的权限为 664(三位八进制数) ,如 chmod
7、765 /home/lny/myfile14、tar: 对文件目录进行打包或解包,常用参数有-c(建立新的打包文件),-f(对普通文件操作),-x (从打包文件中解出文件),-v(处理过程中输出相关信息),-z(调用 gzip 来压缩打包文件,与-x 联用时调用 gzip 完成解压缩),-j(调用 bzip2 来压缩打包文件,与-x 联用时调用 bzip2 完成解压缩) 。如 tar -zcvf lny.tar.gz /home/lny; tar -jxvf linux-2.6.11.tar.bz23第三章 搭建嵌入式 Linux 开发环境3.1 vwaretools 的安装与共享设置1、安装
8、 VMware tools,以方便鼠标内外移动(确保 “虚拟化”不选) ,步骤如下:VM 菜单VMware tools install“是”将光驱(linux 中的光驱)的 VMware tools 中的 Vmwaretools-6.0.2-59824.tar.gz复制到目录 root 下在终端对 Vmwaretools-6.0.2-59824.tar.gz 进行解压 tar zxvf Vmwaretools-6.0.2-59824.tar.gzcd vmware-tools-distrib./vmware-install.pl(全部选 yes,注意有一个默认为no的选项改为 yes)2、设置
9、 windows 与 linux 相互共享:Windows 下访问 linux 的内容:确保网线正确连接;确保网络端口激活(系统管理网络设置静态 IP 并激活) ;确保 samba 服务安装并启动(系统管理服务器设置services 中勾选 smb选项) ;添加 samba 用户(必须是存在的用户,如果冲突,则注释/etc/samba/smbusers中对应的用户名) (“首选项”samba 用户添加用户) ;添加共享(选择共享目录和设置共享对象权限等) 。通过192.168.11.7 即“虚拟机 ip”的形式访问。3、Linux 下访问 windows 的内容:确保安装时没有选择“虚拟化”选
10、项;菜单 VMsettingsoptionsshared foldsadd。在 linux 系统下通过/mnt/hgfs 目录访问 windows 中共享文件夹。3.2 tslib-1.4 的编译安装假设源码解压目录为: /home/tslib-1.41、cd /home/tslib-1.4./autogen.sh /生成 congigure2、./configure -host=arm-linux -cache-file=arm-linux.cache/加上参数-prefix=/home/tslib-1.4可以看到头文件3、make出现错误:undefined reference rpl_m
11、alloc4解决:将 config.h.in 中的#undef malloc 行注释掉重新执行 make,OK!4、make install生成的库文件分别在目录./src、./plugins 的.lib 目录中,其中./lib 为隐藏目录,src/.lib 中包含 libts-0.0.so.0.1.1,libts-0.0.so.0、libts.la、libts.lai、libts.so,plugins/.lib 中包含ucb1x00.so、pthres.so、linear.so、input.so、variance.so、dejitter.so 等,库文件版本为 libts-0.0.so.0.
12、1.15、拷贝mkdir tslib-1.4cd tslib-1.4mkdir lib etc plugins include tests目录 lib:将 src/.lib/中的 libts-0.0.so.0,libts-0.0.so.0.1.1,libts.so 拷到其中。目录 etc: 将 etc/中的 ts.conf 拷到其中。/结合自己的触摸屏型号进行相应的修改目录 plugins: 将 plugins/.libs/中的*.so 拷到其中。/结合自己的触摸屏型号,删除部分库文件目录 tests: 将 tests/中的 ts_*拷到其中。 /只需要保留 ts_calibrate 和 ts
13、_test目录 include:将 src/tslib.h 拷到其中。6、测试执行测试程序 ts_calibrate 时一直出现错误:ts_open:no such device通过查找 ts_calibrate.c 发现,编译时如果没有加参数-enable-inputapi=no,则应将环境变量定义如下:export TSLIB_TSDEVICE=/dev/input/event0(出错时为TSLIB_TSDEVICE=/dev/touchscreen/ucb1x00,因为我的触摸屏型号为 ucb1x00)export TSLIBDIR=/home/tslib-1.4export TSLIB
14、_CONFFILE=$TSLIBDIR/etc/ts.confexport TSLIB_PLUGINDIR=$TSLIBDIR/pluginsexport TSLIB_FBDEVICE=/dev/fb0export TSLIB_CONSOLEDEVICE=noneexport POINTERCAL_FILE=/etc/pointercal /生成校准文件export LD_LIBRARY_PATH=$TSLIBDIR/libexport QWS_MOUSE_PROTO=TPanel:/dev/touchscreen/ucb1x00export TSLIB_CALIBFILE=/etc/poin
15、tercal /应用校准文件 -f /etc/pointercal | /home/tslib-1.4/tests/ts_calibrate /检查是否存在校准文件另外,还要注意的是,ts.conf 内容如下:module_raw input#module_raw ucb1x00 /如果注释前一句而保留该句,则会出现意想不到的问题。module pthres pmin=1module variance delta=30module dejitter delta=100module linear执行 ts_calibrate 顺利通过。53.3 qtX11 和 qtE4 的编译安装一、QT-X1
16、1 环境的配置1、解压 qt-x11-4.4.3.tar.gz2、cd 解压了的目录 QT-X113、 #./configure /生成 Makefile#make /要好几个小时(约 3 个半小时)#make install /安装完后会生成目录/usr/local/Trolltech/QT-4.4.3 ,这时刚才解压完得到的 QT-X11 可以不要了。 4、设置环境变量(实际上是设置编译环境):在/etc/profile 加入: #for QT-X11-4.4.3export QTDIR=/usr/local/Trolltech/Qt-4.4.3export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATHexport PATH=$QTDIR/bin:$PATHexport QMAKESPEC=$QTDI