moxaUC8410学习笔记

上传人:公**** 文档编号:477257348 上传时间:2023-01-13 格式:DOC 页数:10 大小:451KB
返回 下载 相关 举报
moxaUC8410学习笔记_第1页
第1页 / 共10页
moxaUC8410学习笔记_第2页
第2页 / 共10页
moxaUC8410学习笔记_第3页
第3页 / 共10页
moxaUC8410学习笔记_第4页
第4页 / 共10页
moxaUC8410学习笔记_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《moxaUC8410学习笔记》由会员分享,可在线阅读,更多相关《moxaUC8410学习笔记(10页珍藏版)》请在金锄头文库上搜索。

1、wordMOXA UC8410学习笔记1. 交叉调试环境构建构建UC8410交叉调试环境中碰到很多波折,以此文为记录。整体步骤:1. 在windows上安装Ubuntu虚拟机。2. 安装vmware tools。3. Ubuntu下访问windows共享目录。4. Ubuntu可通过无线网络上网,一些必要的程序需要安装。5. 在Ubuntu上安装nfs服务器,并验证,然后可在uc8410上挂接Ubuntu下的目录。6. 在Ubuntu上安装工具链,并编译程序,然后下载到uc8410执行。7. 在uc8410上安装gdbserver。8. 交叉调试。IP地址约定:Windows主机:有线ip地址

2、:192.168.3.5,无线ip地址:192.168.0.102DNS方式获取Ubuntu主机:有线ip地址:192.168.3.8,无线ip地址:192.168.0.103DNS方式获取U1.1 安装Ubuntu虚拟机该步骤相比照拟简单,网上提供了很多图解教程,默认安装后磁盘结构如下:其中dev/shm,var/run都为存目录,Var/run目录中存放的是自系统启动以来描述系统信息的文件。1.2 安装vmware tools安装完Ubuntu后,需要安装vmware tools,可以方便在两个系统之间拷贝文件,共享目录等。在Ubuntu 10.10上安装vmware tools,我这里主

3、要遇到的问题都出现在以下这步中, What is the location of the directory of C header files that match your running kernel? /usr/src/linux/include 如果直接回车,会显示 The path /usr/src/linux/include is not an existing directory. 因此,首先要更改该路径。这里很简单,首先用uname -r命令找到当前的linux核版本,我这里的版本为2.6.35-25-generic,因此更改后的路径如下: “ 改后再回车,又出现如下问题:

4、The directory of kernel headers (version VMWARE UTS_RELEASE) does not match your running kernel (version 2.6 . 35 - 22 -generic). Even if the module were to pile successfully, it would not load into the running kernel. 这是不是不匹配,而是因为 Kernel 中有一个变量 UTS_RELEASE 位置改变了。以前这个定义放在 /usr/src/linux-headers-2.6.

5、35-25-generic/include/linux/version.h ,而现在已经移到了/usr/src/linux-headers-2.6.35-25-generic/include/generated/utsrelease.h。所以vmware tools找不到这个变量的定义,修改的方法有两种: 1. 在version.h中添加 #define UTS_RELEASE 2.6.35-25-generic 2. 直接将utsrelease.h拷贝回来,cp -p generated/utsrelease.h linux/utsrelease.h 修改后再回车,仍然存在问题: The p

6、ath /usr/src/linux-headers-2.6.35-22-generic/include is a kernel header file directory, but it does not contain the file linux/autoconf.h as expected. This can happen if the kernel has never been built, or if you have invoked the make mrproper mand in your kernel directory. In any case, you may want

7、 to rebuild your kernel. 根据提示可以知道,是因为找不到 linux/autoconf.h文件,这个文件在新的linux核中被挪到了 generated文件夹中,因此修改的方法也很简单,直接将这个文件拷贝过来即可 cp -p generated/ autoconf .h linux/ autoconf .h 这样修改完成后,应该就可以顺利安装了。但安装完毕后,文件拷贝等功能好用,但共享文件不好用,可能是vmware版本太低的原因造成,需要进一步验证。1.3 共享windows下目录第一步:设置有线网络第二步:设置ip地址:第三步:输入以重启网络服务;第四步:window

8、s下文件共享第五步:在Ubuntu下查看windows下目录:第六步:ubuntu挂接windows共享目录:用户名,password=密码其中cifs为类型,192.168.3.5为windows主机ip地址,用户名和密码必须,双引号引起来。注意:使用有线网络时,需要将网口插在交换机或其他设备上,同时关闭无线网络,否如此ping失败。同时使用无线网络时,也需要关闭有线网络。1.4 Ubuntu无线上网第一步:需要设置无线网络第二步:设置桥接模式第三步: 设置ip地址,注意一定要在interfaces中设置,gui界面可以忽略了.第四步:输入以重启网络服务;1.5 Ubuntu上安装nfs服务

9、器1、安装Ubuntu nfsUbuntu上默认是没有安装Ubuntu nfs服务器的,因此我们首先安装Ubuntu nfs服务器端:$sudo apt-get install nfs-kernel-server在一些文档中,提出还需要使用apt-get来手动安装nfs的客户端nfs-mon,以与端口映射器portmap,但其实这是没有必要的,因为在安装nfs-kernel-server时,apt会自动为我们把它们安装好。2、配置/etc/exportsUbuntu nfs允许挂载的目录与权限在文件/etc/exports中进展了定义。例如,我们要将根目录下的rootfs目录共享出来,那么我们

10、需要在/etc/exports文件末尾添加如下一行:/rootfs *(rw,sync,no_root_squash)其中:/rootfs是要共享的目录,*代表允许所有的网络段访问,rw是可读写权限,sync是资料同步写入存和硬盘,no_root_squash是Ubuntu nfs客户端分享目录使用者的权限,如果客户端使用的是root用户,那么对于该共享目录而言,该客户端就具有root权限。其它Ubuntu nfs常用的参数有:ro 只读访问rw 读写访问sync 所有数据在请求时写入共享async nfs在写入数据前可以响应请求secure nfs通过1024以下的安全TCP/IP端口发送i

11、nsecure nfs通过1024以上的端口发送wdelay 如果多个用户要写入nfs目录,如此归组写入默认no_wdelay 如果多个用户要写入nfs目录,如此立即写入,当使用async时,无需此设置。hide 在nfs共享目录中不共享其子目录no_hide 共享nfs目录的子目录subtree_check 如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限默认no_subtree_check 和上面相对,不检查父目录权限all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。no_all_squash 保存共享文件的UID和GID默认ro

12、ot_squash root用户的所有请求映射成如anonymous用户一样的权限默认no_root_squas root用户具有根目录的完全管理访问权限anonuid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的UIDanongid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的GID3、Ubuntu nfs重启服务4、测试Ubuntu nfs此时可以运行以下命令来显示一下共享出来的目录:$ showmount -e localhost或者可以使用以下命令把它挂载在本地磁盘上,例如将/rootfs挂载到/mnt下:$ sudo mount -t nfs lo

13、calhost:/rootfs /mnt可以运行df命令查看是否挂载成功。查看后可以使用以下命令卸载:$ sudo umount /mnt注意:有时在nfs挂接的时候,会提示access denied by server错误,/etc/exports中的ip地址修改为*即可,原因不明。Moxa的uc8410已支持了nfs客户端,可以支持将Ubuntu下的目录挂接到uc8410上,挂接示例如下:Mount t nfs 192.168.3.8:/home/zhangmalong/moxa8410 /home/nfs/public1.6 Ubuntu上安装moxa工具链第一步:光盘拷贝并在ubunt

14、u上安装工具链:工具链安装的工具包括:第二步:路径设置第三步:编译文件:第五步:将文件拷贝到uc84101.7 Uc8410上安装gdbserver,交叉调试第一步:将gdbserver拷贝到uc8410上Gdbserver位于光盘UC8410utility_toolsUC-8400-LXgdbserver目录下,可通过ftp或nfs拷贝到uc8410目录下。第二步:安装rootMoxa:/dev/shm# mount -o remount,rw /Installing gdbserver (6.8) to root.Configuring gdbserverSuccessfully term

15、inated.rootMoxa:/dev/shm# umount /注意mount -o remount,rw /是必须的,重新以可读写方式挂接根目录,否如此提示安装失败。第三步:gdb调试1.带调试信息编译程序。2.目标板上进入编译后程序目录,执行如下命令# gdbserver 192.168.3.8:2000 hello-debug其中,192.168.3.8为Ubuntu的IP地址,2000是等待端口号,提示如下:Process hello-debug created; pid=1703.在Ubuntu主机上,进入编译后程序目录不进入调试时会找不到符号表,执行如下命令$ arm-linux-gdb hello-debug4.At the GDB mand prompt in D

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号