前言
嵌入式物联网开发工程师,是一个蓝海新风口,高薪不内卷的行业。需要掌握熟悉c/c++、单片机、数据结构,linux系统,ARM单片机,嵌入式。可以从事工作项目loT、视频监控领域的产品,跨平台系统,智能硬件等开发。
一、指南
1、C语言基础
2、数据结构
3、shell&makfile工程管理
二、开发环境搭建
1、VMware虚拟机下载
允许用户在Windows或Linux桌面上运行多个操作系统,如Windows、Linux和BSD虚拟机。可进行开发、测试、部署新的应用程序的最佳解决方案。Vmware WorkStation可在一部实体机器上模拟完整的网络环境,以及可便于携带的虚拟机器。对于企业的IT开发人员和系统管理员而言,Vmware在虚拟网络,实时快照,拖拽共享文件夹等方面的特点使它成为必不可少的工具。建议下15.5版本
- 软件下载官网链接:https://vmware.vmecum.com/
2、ubuntu系统安装
Ubuntu系统是一款功能强大、易于使用和高度可定制的开源Linux操作系统,以简洁、直观和易用为设计原则,适合各类用户使用。它提供了友好的图形界面,支持多种语言和自定义设置,用户可以根据自己的喜好和需求进行个性化设置。同时,Ubuntu系统也注重安全性和稳定性,定期发布更新和修补程序,保护用户的系统安全。推荐下载安装18.04版本
-
软件下载官网链接:https://cn.ubuntu.com/
-
linux登录密码为1
3、共享文件夹
如在windows建立的share文件夹,直接复制粘贴至ubtunu系统会出错的情况,故需要使用共享文件夹来,
使用方法,虚拟机上方设置->选项->共享文件夹->总是启用
然后添加新建的共享分件夹然后完成,在ubtunu系统的mnt-hgfs-share里就有所创建的文件
三、计算机基础知识
1、计算机工作原理
二进制进行计算和存储,并且将计算机结构分成运算器,控制器、存储器、输入设备、输出设备等5个部分。用这几个部分组成了计算机的硬件。
存储程序的思想︰系统的运行过程就是按照一定的顺序不断执行存储器中的程序指令的过程
2、ubuntu
- etc方账户密码信息
- home用户信息
- bin 可执行的二进制信息
- usr用户基本信息
3、ubuntu常用快捷键
ctrl alt t
开启新的中端ctrl alt 回⻋
虚拟机全屏clear
清屏ctrl l
清屏ctrl shift +
中端字体变大ctrl -
中端字体变小ctrl alt
鼠标退出虚拟机控制
四、linux 基础命令
1、pwd
显示当前目录
2、kill
杀死进程
3、cd
切换目录,
绝对路径以/为起点
相对路径,以当前目录为起点
cd ./ 当前目录
cd ../ 上一层目录
cd - 上一次操作所在路径
cd ~ 相当于/home/用户名的路径
cd /usr usr比较特殊
4、ls
列出当前目录的内容
5、mkdir
当前目录下创建新的文件夹
当前目录下创建新的文件夹,
mkdir dist
6、clear
或者ctrl l
清屏
7、rm
rm -r
删除文件夹
rm -rf
强制执行删除文件夹
rm
删除文件
8、cp
- cd 源文件 指定目录路径
将文件拷贝一份放入指定目录中
- cd 源文件 目标文件
将文件拷贝一份副本
- cd 源文件夹 指定目标文件 -a
将文件夹拷贝一份放入指定目录文件夹
9、mv
- mv 源文件 指定目录路径
将文件移动一份放入指定目录中
- mv 源文件 目标文件
将文件重命名
- mv 源文件夹 指定目标文件 -a
将文件夹移动到指定目录文件夹中
五、vim编辑器、gcc编辑器
1、vim编辑器介绍和使用
书写代码的工具,编写 C 语⾔代码,可以使⽤ linux 系统提供的⼯具才能进⾏代码的编写。代码编写完成之
后,我们还需要验证书写的代码是否正确。这就需要编译器来进程验证。linux 系统为我们提供了⽐较
好的开发⼯具。
2、gcc编辑器介绍和使用
是 Linux 下提供⼀般⽤户使⽤的标准编译器。是由 GNU 开发的编程语⾔编译器。它是 GNU Compiler Collection 的缩写。可以⽤来编译C,C++,Object-C 等多种语⾔。
安装gcc
sudo apt-get install gcc
当完成hello.c文件时,由
gcc hello.c
编译代码, 系统默认会在当前⽬录下,⽣成⼀个叫做 a.out 的⽂件,然后执行./a.out
执⾏ a.out ⽂件,输出对应的结果.gcc hello.c -o exec
编译代码, ⽤户⾃定义⽣成的可执⾏⽂件名字,./exec
执⾏./exec ⽂件,。
1)、编译⽅法:
- 预处理 ----> ⽣成我预处理过得 C 代码 xx.i
- 编译 ----> 把我们预处理过的代码⽣成我们的汇编代码 xx.s
- 汇编 ----> 把汇编代码⽣成我们的⽬标⽂件 xx.o
- 链接 ----> 把我们的⽬标⽂件⽣成我们的可执⾏⽂件
2)、参数说明:
- -E 使编译器在预处理结束的时候停⽌
- -S 使编译器在编译结束的时候停⽌
- -c 使编译器在汇编结束的时候停⽌
- -o 输出 gcc 编译的结果
六、常用命令快捷键、命令积累
1、创建文件
touch demo1.c
2、创建文件夹
mkdir dist
3、拷贝1到2
cp demo1.c dmeo2.c
4、gcc编译32位命令
gcc -m32 demo1.c
5、执行可执行文件
./a.out
6、打开vim编辑
vim demo1.c
7、从windows里粘贴到ubtunu里
ctrl+shift+v粘贴
8、关闭光标的回显,如输入密码时看不到输入的密码
cat
上下左右识别(按键获取)
ctrl c结束进程
9、限只在ubtunu里复制粘贴
右键选中 y(复制)然后esc +p(粘贴)
10、打开多个窗口(多文件编程)
:vsp
:vsp demo2.c
11、删除文件、文件夹
rm -rf 文件夹
rm 文件
12、查看本地项目
ls
13、在vim编辑中直接跳转到111行
:111
14、快捷编程int main(int argc,const char *arga[])
mian+tab
15、编译当前所有.c文件
gcc *.c
16、查看使用函数需要的头部文件,signal为函数
Man signal
17、关闭查看
:qi
18、结束进程命令
kill -l
19、将所有项目移入dist文件夹里
mv *.c ./dist/
mv demo1.c demo2.c
对于 mv demo1.c demo2.c 这条命令:
如果 demo2.c 不存在,demo1.c 将被重命名为 demo2.c。
如果 demo2.c 已经存在,demo1.c 的内容将会覆盖 demo2.c 的内容(除非使用了 -i 选项)。
20、以图形文件形式打开
gedit user_print.c
21、查看操作系统信息
cd /usr/include/