百度竞价排名服务,软件网站关键词优化,网络营销自学网站,成都营销网站1.单片机裸机和带有操作系统OS的区别 \qquad裸机有三层#xff0c;从上至下依次为#xff1a;应用层、驱动层、硬件层#xff1b;而带有OS的单片机有四层#xff0c;从上至下依次为#xff1a;应用层、内核层、驱动层、硬件层。
2.系统移植学习内容 \qquad四大块#xf…1.单片机裸机和带有操作系统OS的区别
\qquad裸机有三层从上至下依次为应用层、驱动层、硬件层而带有OS的单片机有四层从上至下依次为应用层、内核层、驱动层、硬件层。
2.系统移植学习内容
\qquad四大块搭建交叉编译环境、bootloader的选择和移植、kernel的配置编译移植和调试、根文件系统的制作
3.系统移植的基本步骤
3.1 确定目标机单片机和主机PC电脑的连接方式
\qquad目前基本有四种连接方式 \qquadUART异步串行通信接口串口
通信方式特点UART异步串行通信接口串口速率低实用性强可以输入输出USB串行通信接口速度快驱动要移植修改TCP/IP网络通信接口速度快驱动要移植Debug Jtag调试接口方便快捷价格高
3.2安装交叉编译器
\qquadgcc是基于X86架构所以它编译出来的文件在ARM上运行不起来所以需要交叉编译器编译出可以在ARM上运行的文件。 \qquad交叉编译器的来源1.安装芯片厂商已经编译好的交叉工具链比如arm-none-linux-gnueabi-,arm-none-eabi-,arm-linux-arm-elf-…2.自己动手编译交叉工具链自己制作。 \qquad交叉编译器的名称arm:最终生成的体系结构目标none:厂商名linux交叉工具链编译出来的程序是针对linux系统运行的gnueabi:gnu表示开源eabi表示嵌入式的调用标准接口。 \qquad有时候会看到arm-linux-这是表示一个软连接输入arm-linux-相当于输入arm-none-linux-gnueabi- \qquadarm-none-eabi-不支持操作系统 \qquadarm-elf-:特别老的编译工具链很少见到。
3.3搭建主机和目标机传输通道
\qquad网络相关服务配置TFTP和NSH是最常用的
3.4 编译三大子系统
\qquadBootLoader子系统、内核核心子系统、文件系统子系统
3.5 烧写测试