




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题 目:智能小车设计 打开命令行终端的快捷方式:ctr+al+t:默认的路径在家目录ctr+shift+n:默认的路径为上一次终端所处在的路径.linuxubuntu:$ linux:当前登录用户名.ubuntu:主机名:和$之间:当前用户所处在的工作路径.windows下的工作路径如C:IntelLogslinux下的工作路径是:/././:代表的是/home/linux这个路径.(家目录).ls(list):列出当前路径下的文件名和目录名.ls -a(all):列出当前路径下的所有文件和目录名,包括了隐藏文件.:当前路径.:上一级路径ls -l:以横排的方式列出文件的详细信息total 269464(当前这个路径总计所占空间的大小,单位是K)drwxr-xr-x 3 linux linux 4096 Dec 4 19:16 Desktop第一个位置:代表的是文件的类型.linux系统下的文件类型有以下几种.b:块设备文件c:字符设备文件d:directory,目录-:普通文件.l:连接文件.s:套接字文件.p:管道文件.rwxr-xr-x:权限r:读权限 -:没有相对应的权限w:写权限x:可执行权限修改权限:chmod u-或者+r/w/x 文件名chmod g-或者+r/w/x 文件名 chmod o-或者+r/w/x 文件名第一组:用户权限第二组:用户组的权限第三组:其他用户的权限.chmod 三个数(权限) 文件名首先根据你想要的权限生成二进制数,再根据二进制数转换成十进制的三位数rwxr-x-wx111101011 7 5 3chmod 753 文件名rwx-xr-x第二个位置上的数字:对应目录下的子文件个数,如果是非目录,则数字是1第三个位置:用户名(文件创造者).第四个位置:用户组的名字(前边的用户所处在的用户组的名字).第五个位置:对应文件所占的空间大小(单位为b)第六八个位置:Dec 4 19:16时间戳(最后一次修改文件的时间)最后一个位置:文件名操作文件:1.创建一个普通文件:touch 文件名2.删除一个文件:rm(remove) 文件名3.新建一个目录:mkdir(make directory) 目录名 递归创建目录:mkdir -p 目录1/目录2/目录34.删除一个目录:rmdir 目录名./仅删除一个空目录 rm -rf 目录名/删除一个非空目录5.切换目录(change directory):cd 路径linux下的路径分两种相对路径:以.(当前路径)为起点.绝对路径:以/(根目录)为起点,用相对路径的方式进入Music:cd ./Music用绝对路径的方式进入Desktop:cd /home/linux/Desktop返回上一级:cd .返回加家目录的三种方式(1).cd(2).cd (3).cd /home/linux进入到1目录里并创建一个2普通文件,再退回上一级,并且删除1目录6.拷贝文件.cp(copy) 路径1/源文件 路径2:把路径1下的文件拷贝到路径2下cp 路径1/源文件 路径2/目标文件:把路径1下的文件拷贝到路径2下并且重命名位目标文件.cp(copy) -r 路径1/目录名 路径2:把路径1下的目录拷贝到路径2下7.剪切文件mv(move) 路径1/源文件 路径2:把路径1下的文件剪切到路径2下mv 路径1/源文件 路径2/目标文件:把路径1下的文件剪切到路径2下并且重命名位目标文件mv 源文件 目标文件:重命名文件mv 路径1/目录名 路径2:把路径1下的目录剪切到路径2下8.clear:清屏9.exit 退出终端vi编辑器.vi 文件名:如果文件不存在则创建并打开如果文件已存在,则直接打开VI编辑器的三种模式1.命令行模式:刚进入编辑器的时候,默认处在这种模式下2.编辑模式(插入模式):输入a/i/o即可进入,按下esc键退回命令行模式,再输入冒号,即可进入底行模式.3.底行模式下:w(保存),q(退出),wq(保存并退出),q!(强制退出不保存) 按下退格键,删除冒号,即可进入命令行模式. 终极保存法;w! sudo tee %d回车再回车即可命令行模式下的快捷操作:1.整行复制:光标移动想要复制的那一行,输入yy即可,再把光标移动到你想要粘贴位置的上一行,输入p即可2.多行复制:光标移动想要复制的那几行的第一行,输入数字yy即可,再把光标移动到想要粘贴的那几行的第一行,输入p即可,3.整行删除:光标移动想要删除的那一行,输入dd即可,4.多行删除:光标移动想要删除的那几行的第一行,输入数字dd即可,5.整行剪切:光标移动想要剪切的那一行,输入cc即可,这个时候进入到了编辑模式,按下esc键退回到命令行模式,再把光标移动到想要粘贴位置的上一行,输入p即可,6.多行剪切:光标移动想要剪切的那几行的第一行,输入数字cc即可,这个时候进入到了编辑模式,按下esc键退回到命令行模式,再把光标移动到想要粘贴位置的上一行,输入p即可.7.撤销上一步:u底行模式下的快捷操作1,对第a行到第b行进行复制:航标a,行标by,enter回车,再把光标移动到你想要粘贴位置的上一行,输入p即可2,对第a行到第b行进行删除:航标a,行标bd,enter回车3.对第a行到第b行进行剪切:航标a,行标bd,enter回车,再把光标移动到你想要粘贴位置的上一行,输入p即可编辑一个最简单的hello world程序,保存并退出gcc编译器.gcc 文件名:编译成功的话,会在当前目录生成一个a.out可执行程序执行程序: ./a.out当然也可以指定可执行程序的名字,命令如下:gcc 文件名 -o 可执行程序名编译步骤:1.预处理:gcc -i test.c -o test.i(宏定义的替换,头文件包含)2.汇编:gcc -s test.i -o test.s(c代码转换成汇编代码)3.编译:gcc -c test.s -o test.o(把汇编转换成二进制的目标程序)5.连接:gcc test.o -o test(连接库函数)linux系统的库文件:静态库:.a结尾动态库:.so结尾自己制作一个动态库.首先写一个简单的c功能函数编译成动态库:gcc -fPIC -shared 文件名 -o lib库文件名.so在linux系统下.程序运行时默认搜素库的路径是/lib把库拷贝到/lib下:cp lib库文件名.so /lib 错误提示:permission denied(权限不足)方法:sudo cp lib库文件名.so /lib 提示让你输入密码1:sudo暂时将普通用户 的权限提高到root用户权限 再编译一个c应用程序,在程序中来调用库里实现的函数gcc 应用程序名 -l库名(注意是去掉lib和.so的库名)文件IOlinux系统下一切设备皆文件操作文件:open():打开一个文件read():/从文件里边读出数据write()/向文件里写入数据close()/关闭文件man手册:man 2 函数名open:头文件 #include #include #include 1.int open(const char *pathname, int flags);/仅限于打开一个已存在文件参数1:文件的路径参数2:打开方式的标志O_RDONLY,/只读方式打开O_WRONLY,/只写方式打开O_RDWR./可读可写方式打开返回值:打开成功:返回一个正数(文件描述符)打开失败:-12.int open(const char *pathname, int flags, mode_t mode);/可以打开一个不存在的文件参数1:文件的路径参数2:打开方式的标志O_RDONLY,/只读方式打开O_WRONLY,/只写方式打开O_RDWR./可读可写方式打开 如果文件不存在必须|O_CRAET,创建该文件参数3:权限 数 比如:0666返回值:打开成功:返回一个正数(文件描述符)打开失败:-1write:头文件: #include typedef int ssize_tssize_t write(int fd, const void *buf, size_t count);参数1:就是open函数的返回值,文件描述符参数2:你想要写入的数据参数3:你想要写入的数据的字节大小返回值:写入成功:返回的是写入的字节大小写入失败:-1strlen:实际长度sizeof:数组的大小arduinoviod setup()端口的配置;void loop()任务的执行;arduino之呼吸灯实验:int led=13;void setup() pinMode(led,OUTPUT);void loop() digitalWrite(led,HIGH); delay(1000); digitalWrite(led,LOW); delay(1000);渐变灯:暗-亮-暗PWM波:可调脉冲宽度波.3,5,6,9,10,11这几个端口可以输出pwm波analogWrite(pin, value)/输出pwm波pin:管脚号:3,5,6,9,10,11中的任意一个value:0255中的任何一个数:0:占空比为0%255:占空比位100%远程视频监控步骤:1.将jpegsrc.v8b.tar.gz(图片库) 和mjpg-streamer-code-182.tar.gz(视频查看软件) 拷贝到ubuntu的家目录 2.解压缩 tar xvf jpegsrc.v8b.tar.gz3. cd jpeg-8b 4. ./configure /创建Makefile文件5. make 6. sudo make install /安装程序运行时,默认寻找的头文件的路径在/usr/include,库文件的路径/lib cd /usr/local/include sudo cp * /usr/include cd /usr/local/lib sudo cp libjpeg* /lib 7.切换到家目录:cd 移植查看视频的软件: tar xvf mjpg-streamer-code-182.tar.gz cd mjpg-streamer-code-182cd mjpg-streamermake clean /清除已经编译过的程序make 运行查看视频的软件:sudo ./start.sh 打开火狐浏览器在地址栏输入:8080若发现视频绿屏 先强制结束程序运行:ctl+c.解决方法: 修改start.sh 将第30行的 -y 删除看看是否虚拟机识别到摄像头:ls /dev/video0地址栏输入::8080/?action=stream 查看视频信息 :8080/?action=snapshot 截屏图片,点击save image as可以保存图片A8开发板:cpu:三星s5pc100内存:256Mflash:256Mwindows运行之前会有一个系统的引导代码叫BIOS与windows类似,linux启动之前也有这样的一段代码叫做bootloaderbootloader有很多种,我们选用其中的一种叫做uboot.linux系统的启动步骤1.运行uboot(初始化硬件,引导系统内核的加载)2.内核的运行(zImage,linux的内核).3.识别文件系统(类似于C盘,D盘,E盘).是rootfs.tgz系统=内核+文件系统.挂载系统.要对uboot环境信息进行设置首先把拨码开关拨到0000位置.选择uboot的启动方式.uboot从外存启动.1.找到自己的COM端口号;打开putty2.选中Serial,把波特率改为115200,端口号改为自己的端口号,Flow contrlo选择none3.开启电源,会出现一个倒计时,在倒计时完成之前,随便敲一个键盘.4.输入命令print可以显示uboot的打印信息确保:ipaddr=00/代表开发板的ip地址serverip=00/代表ubuntu的IP地址bootargs=root=nfs nfsroot=00:/source/rootfs ip=00 init=/linuxrc console=ttySAC0,115200/打开虚拟机:1.进入到/tftpboot目录下.把zImage拖到虚拟机,前加cp ,后加 ./使用ls查看一下是否出现zImage2.cd /source把rootfs这个压缩包拖到虚拟机,前加cp ,后加 ./使用ls查看一下是否出现rootfs.tgz3.解压命令:sudo tar -xvf rootfs.tgz要让你输入密码;输入1回车即可,密码是不可见的.再用ls查看是否多了一个蓝色的文件rootfs.4.修改ubuntu的ip地址.找到wiffi图标,点击选中edit connection-IPV4 seting-manual-addip netmask gateway00 点击保存.关闭窗口.再打开图标选中wired connection1 再看ip是否改回来了.5.网线连接开发板和电脑在putty界面输入:ping 00如果host 00 is alive,这是挂载系统很好的征兆.not alive的话需要关闭电脑的无线网输入boot或者重启开发板不要再按下任何键了,如果出现#很快就要挂载成功了如果出现TTTTTTTTTTTTTT在ubuntu输入命令:sudo service tftpd-hpa restart其中sudo的作用是暂时将用户的权限提升到超级用户(root)的权限.如果出现Please press Enter to activate this console.代表系统挂载成功.通过gcc编译生成的程序不能在开发板上运行.通过命令file a.out看到文件的格式为intel 30386,说明这是X86格式的程序,只能PC上运行而不能在arm板上运行,解决措施,使用交叉编译器来编译.交叉编译器的配置:将arm-cortex_a8-linux-gnueabi.tar.bz2拖到ubuntu的家目录解压命令tar -xvf arm-cor+tab键自动补齐,用ls查看是否生成arm-cortex_a8个目录.配置交叉编译器:sudo vi /etc/bash.bashrc文件在最后一行添加export PATH=$PATH:/home/linux/arm-cortex_a8/bin保存并退出文件保存完成后重启文件:source /etc/bash.bashrc重启成功后输入arm-cor+tab键会自动补齐成arm-cortex_a8-linux-gnueabi-代表交叉编译器配置成功.利用交叉编译器编译程序:arm-cortex_a8-linux-gnueabi-gcc 文件名,并将生成的可执行程序拷贝到/source/rootfs下然后再到putty上执行./a.out就可以在开发板上运行程序了.相关代码Che.c#include cgic.h#include #include #include #include #include void zigbee_serial_init(int fd) struct termios options;tcgetattr(fd, &options);options.c_cflag |= (CLOCAL | CREAD);options.c_cflag &= CSIZE;options.c_cflag &= CRTSCTS;options.c_cflag |= CS8;options.c_cflag &= CSTOPB;options.c_iflag |= IGNPAR;options.c_iflag &= (BRKINT | INPCK | ISTRIP | ICRNL | IXON); /options.c_ccVTIME = 2; options.c_ccVMIN = 12;options.c_oflag = 0;options.c_lflag = 0;cfsetispeed(&options, B115200);cfsetospeed(&options, B115200);tcsetattr(fd,TCSANOW,&options);int cgiMain()int fd;char a=1;cgiHeaderContentType(text/htmlnn);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,SMART CARn);fprintf(cgiOut,n);fprintf(cgiOut,);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut, n);fprintf(cgiOut,);fprintf(cgiOut, n);fprintf(cgiOut,n);fprintf(cgiOut,n);fprintf(cgiOut,n);fd=open(/dev/ttyUSB0,O_RDWR);if(-1=fd)fprintf(cgiOut,open usart failedn);zigbee_serial_init(fd);if(cgiFormSuccess=cgiFormSubmitClicked(up) a=2;write(fd,&a,1);if(cgiFormSuccess=cgiFormSubmitClicked(down) a=1;write(fd,&a,1);if(cgiFormSuccess=cgiFormSubmitClicked(right) a=4;write(fd,&a,1);if(cgiFormSuccess=cgiFormSubmitClicked(left) a=3;write(fd,&a,1);if(cgiFormSuccess=cgiFormSubmitClicked(stop) a=0;write(fd,&a,1);fprintf(cgiOut,n);fprintf(cgiOut,n);close(fd);return 0;Test.c#include #include #include #include #include int main(int argc, const ch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2031年中国氯气瓶阀行业投资前景及策略咨询研究报告
- 山西体育职业学院《数字信号处理实验》2023-2024学年第二学期期末试卷
- 《探索营养奥秘》课件
- 2025至2031年中国旋转窑垃圾焚烧炉行业投资前景及策略咨询研究报告
- 2025至2031年中国挂墙/窗夹式浴室换气扇行业投资前景及策略咨询研究报告
- 2025至2031年中国壁挂式杀菌空气净化器行业投资前景及策略咨询研究报告
- 2025至2031年中国喷干乌龙茶行业投资前景及策略咨询研究报告
- 《化学工程项目建设流程》课件
- 2025至2030年中国餐饮用调味包数据监测研究报告
- 2025至2030年中国配花材料数据监测研究报告
- 二年级下册语文集备6写话《我想养一只小动物》课件
- 2023-2024学年下学期高一思想政治课《心理健康与职业生涯》期中模拟考试卷答案
- 【高中语文】《再别康桥》课件+统编版高中语文选择性必修下册
- 【可行性报告】2023年电气火灾监控系统行业项目可行性分析报告
- 安徽省合肥市五十中天鹅湖校区2023-2024学年七年级下学期期中数学试题(无答案)
- 《客舱安全与应急处置》-课件:灭火设备:机载灭火瓶
- 上海中考英语语法专项练习题集和参考答案
- 贷款利率浮动协议书
- (高清版)TDT 1055-2019 第三次全国国土调查技术规程
- 老年患者髋部骨折围手术期麻醉管理
- 肿瘤科中医护理
评论
0/150
提交评论