![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
文章平均质量分 84
一只青木呀
life,just smile
展开
-
有线网络硬件接口简介
本篇文章的内容都是有线网络一、 嵌入式下的网络硬件接口嵌入式网络硬件分为两部分:MAC 和 PHY1、SOC 内部没有网络 MAC 外设SOC 与外部 MAC+PHY 芯片的连接如图:这种方案的优点就是让不支持网络的 SOC 能够另辟蹊径,实现网络功能,但是缺点就是网络效率不高,因为一般芯片内置的 MAC 会有网络加速引擎,比如网络专用 DMA,网络处理效率会很高。而且此类芯片网速都不快,基本就是 10/100M。另外,相比 PHY 芯片而言,此类芯片的成本也比较高,可选择比较少2、SO原创 2022-04-12 10:38:53 · 2614 阅读 · 0 评论 -
常见的AT指令错误码
常见的AT指令错误码CME ERROR’s (GSM Equipment related codes)CME ERROR: 0 Phone failure电话故障CME ERROR: 1 No connection to phone无法连接电话CME ERROR: 2 Phone adapter link reserved保留电话适配器链接CME ERROR: 3 Operation not allowed操作不允许CME ERROR: 4 Operat原创 2022-03-22 10:47:47 · 3146 阅读 · 2 评论 -
嵌入式软件工程师面试遇到的经典题目
嵌入式软件工程师面试遇到的经典题目1、找错误2、下面的代码输出是什么,为什么?3、C语言编译时动态链接和静态链接得区别是什么?4、C语言关键字static得作用是什么?5、分别说明一下三个变量声明得含义:6、简述TCP/IP镞包含哪些分段,每一层有哪些常用协议?7、从在浏览器地址栏中输入www.baidu.com到看到百度首页,这个过程中间经历了什么?都涉及到哪些网络协议?8、编写strcat函数9、使用C语言中的#define来定义一个常量来表示一年有多少秒?10、实现把字符串转化成整数11、写一个程序验原创 2020-11-04 23:43:16 · 18858 阅读 · 8 评论 -
U-Boot顶层目录链接脚本文件(u-boot.lds)介绍
这里写目录标题链接脚本 u-boot.lds 介绍1、u-boot.lds文件2、arch/arm/lib/vectors.S 文件3、u-boot.map(地址映射文件)4、链接文件分析链接脚本 u-boot.lds 介绍要分析 uboot 的启动流程,首先要找到“入口”,找到第一行程序在哪里。程序的链接是由链接脚本来决定的,所以通过链接脚本可以找到程序的入口。如果没有编译过 uboot 的话链接脚本为 arch/arm/cpu/u-boot.lds。但是这个不是最终使用的链接脚本,最终的链接脚原创 2020-10-23 13:52:23 · 1828 阅读 · 2 评论 -
U-Boot顶层Makefile介绍
U-Boot顶层Makefile介绍1、准备好uboot源码2、分析顶层Makefile2.1、版本号2.2、MAKEFLAGS 变量2.3、命令输出2.4、静默输出2.5、设置编译结果输出目录2.6、代码检查2.7、模块编译2.8、获取主机架构和系统2.9 、设置目标架构、交叉编译器和配置文件2.10、调用 scripts/Kbuild.include2.11、交叉编译工具变量设置3.12、导出其他变量1、准备好uboot源码这里分析的是2016.版本的uboot。uboot源码下载:https:/原创 2020-10-22 16:22:17 · 1004 阅读 · 1 评论 -
U-Boot工程目录介绍
U-Boot工程目录介绍1、准备工作2、重要文件2.1、arch文件2.2、 board 文件夹2.3、 configs 文件夹2.4、 .u-boot.xxx_cmd 文件2.5、 Makefile 文件2.6、 u-boot.xxx 文件2.7、 .config 文件2.8、 README1、准备工作首先得下载好uboot文件,并进行编译。uboot下载:https://blog.csdn.net/weixin_45309916/article/details/109176510进行编译后在进行原创 2020-10-21 14:47:30 · 2184 阅读 · 2 评论 -
U-Boot命令之常用命令
常用命令常用命令1、 reset 命令2、 go 命令3、 run 命令4、 mtest 命令常用命令uboot 中还有其他一些常用的命令,比如 reset、 go、 run 和 mtest 等。命令描述reset输入“reset”即可复位重启go用于跳到指定的地址处执行应用run用于运行环境变量中定义的命令mtest内存读写测试命令常用信息查询命令:https://blog.csdn.net/weixin_45309916/article/deta原创 2020-10-20 22:16:23 · 843 阅读 · 0 评论 -
U-Boot命令之BOOT操作命令
BOOT操作命令BOOT操作命令1、 bootz 命令2、 bootm 命令3、 boot 命令BOOT操作命令uboot 的本质工作是引导 Linux,所以 uboot 肯定有相关的 boot(引导)命令来启动 Linux。常用的跟 boot 有关的命令有: bootz、 bootm 和 boot。命令描述bootz用于启动 zImage 镜像文件bootm用于启动 uImage 镜像文件boot用来启动 Linux 系统的1、 bootz 命令要启动原创 2020-10-20 21:26:57 · 4304 阅读 · 0 评论 -
U-Boot命令之EXT 格式文件系统操作命令
EXT 格式文件系统操作命令EXT 格式文件系统操作命令EXT 格式文件系统操作命令uboot 有 ext2 和 ext4 这两种格式的文件系统的操作命令,常用的就四个命令,分别为:ext2load、 ext2ls、 ext4load、 ext4ls 和 ext4write。这些命令的含义和使用与 fatload、 fatls 和 fatwrit一样,只是 ext2 和 ext4 都是针对 ext 文件系统的。命令描述ext2ls用于查询 ext2 格式设备的目录和文件信息原创 2020-10-20 17:49:42 · 1240 阅读 · 0 评论 -
U-Boot命令之FAT 格式文件系统操作命令
FAT 格式文件系统操作命令FAT 格式文件系统操作命令1、 fatinfo 命令2、 fatls 命令3、 fstype 命令4、 fatload 命令5、 fatwrite 命令FAT 格式文件系统操作命令有时候需要在 uboot 中对 SD 卡或者 EMMC 中存储的文件进行操作,这时候就要用到文件操作命令,跟文件操作相关的命令有: fatinfo、 fatls、 fstype、 fatload 和 fatwrite,但是这些文件操作命令只支持 FAT 格式的文件系统!!命令描述原创 2020-10-20 17:42:33 · 3065 阅读 · 0 评论 -
U-Boot命令之EMMC和SD卡操作命令
EMMC和SD卡操作命令EMMC和SD卡操作命令1、 mmc info 命令2、 mmc rescan 命令3、 mmc list 命令4、 mmc dev 命令5、 mmc part 命令6、 mmc read 命令7、 mmc write 命令8、 mmc erase 命令EMMC和SD卡操作命令uboot 支持 EMMC 和 SD 卡,因此也要提供 EMMC 和 SD 卡的操作命令。一般认为 EMMC和 SD 卡是同一个东西,所以没有特殊说明,统一使用 MMC 来代指 EMMC 和 SD 卡。u原创 2020-10-20 15:02:16 · 14877 阅读 · 1 评论 -
U-Boot命令之网络操作命令
网络操作命令网络操作命令1、 ping 命令2、 dhcp 命令3、 nfs 命令4、 tftp 命令网络操作命令uboot 是支持网络的,我们在移植 uboot 的时候一般都要调通网络功能,因为在移植 linuxkernel 的时候需要使用到 uboot 的网络功能做调试。uboot 支持大量的网络相关命令,比如 dhcp、ping、 nfs 和 tftpboot在使用 uboot 的网络功能之前先用网线将开发板的 ENET 接口和电脑或者路由器连接起来建议开发板和主机 PC 都连接到同一个路由原创 2020-10-20 12:57:59 · 4119 阅读 · 0 评论 -
U-Boot命令之内存操作命令
内存操作命令内存操作命令1、 md 命令2、 nm 命令3、 mm 命令4、 mw 命令5、 cp 命令6、 cmp 命令内存操作命令内存操作命令就是用于直接对 DRAM 进行读写操作的,常用的内存操作命令有 md、 nm、mm、 mw、 cp 和 cmp。命令描述md用于显示内存值nm用于修改指定地址的内存值mm用于修改指定地址的内存值mw用于使用一个指定的数据填充一段内存cp用于将 DRAM 中的数据从一段内存拷贝到另一段内存中,或者把 Nor原创 2020-10-20 12:20:19 · 2971 阅读 · 2 评论 -
U-Boot命令之环境变量操作命令
环境变量操作命令1、修改环境变量2、新建环境变量3、删除环境变量1、修改环境变量环境变量的操作涉及到两个命令: setenv 和 saveenv命令描述setenv用于设置或者修改环境变量的值saveenv用于保存修改后的环境变量一般环境变量是存放在外部 flash 中的,uboot 启动的时候会将环境变量从 flash 读取到 DRAM 中。所以使用命令 setenv 修改的是 DRAM中的环境变量值,修改以后要使用 saveenv 命令将修改后的环境变量保存到原创 2020-10-20 11:55:00 · 3558 阅读 · 4 评论 -
U-Boot命令之信息查询命令
U-Boot命令U-Boot信息查询命令bdinfo 命令printenv命令version命令U-Boot信息查询命令命令描述bdinfo用于查看板子信息printenv用于输出环境变量信息version用于查看 uboot 的版本号bdinfo 命令此命令用于查看板子信息,直接输入“bdinfo”即可,结果如下图所示:从上图中可以得出 DRAM 的起始地址和大小、启动参数保存起始地址、波特率、sp(堆栈指针)起始地址等信息。printenv命令命原创 2020-10-20 11:21:16 · 2318 阅读 · 0 评论 -
什么是U-Boot以及如何下载U-Boot源码?
系统的启动过程:Linux 系统要启动就必须需要一个 bootloader 程序,也就说芯片上电以后先运行一段bootloader程序。这段bootloader程序会先初始化DDR等外设,然后将Linux内核从flash(NAND,NOR FLASH, SD, MMC 等)拷贝到 DDR 中,最后启动 Linux 内核。当然了, bootloader 的实际工作要复杂的多,但是它最主要的工作就是启动 Linux 内核, bootloader 和 Linux 内核的关系就跟 PC 上的 BIOS 和 Win原创 2020-10-20 11:05:59 · 2088 阅读 · 0 评论 -
PWM 简介
PWM 简介1、概念2、PWM信号图3、频率4、占空比1、概念PWM 全称是 Pulse WidthModulation,也就是脉冲宽度调制2、PWM信号图3、频率频率就是开关速度,把一次开关算作一个周期,那么频率就是 1 秒内进行了多少次开关4、占空比占空比就是一个周期内高电平时间和低电平时间的比例,一个周期内高电平时间越长占空比就越大,反之占空比就越小。占空比用百分之表示,如果一个周期内全是低电平那么占空比就是 0%,如果一个周期内全是高电平那么占空比就是100%。...原创 2020-10-10 17:23:19 · 8117 阅读 · 0 评论 -
内存,RAM,ROM,Cache的区别与联系
这里写目录标题1、内存2、RAM3、ROM4、Cache5、RAM和ROM的区别6、硬盘与内存的区别与联系1、内存内存在电脑中起着举足轻重的作用。内存一般采用半导体存储单元,包括随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)。2、RAMRAM:随机存取存储器(random access memory),又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。当电源关闭时R原创 2020-09-26 09:55:40 · 20489 阅读 · 6 评论 -
SPI 协议详解
SPI 协议详解1、SPI 简介2、SPI四线3、SPI四种工作模式4、SPI时序图1、SPI 简介SPI 全称是 Serial Perripheral Interface,也就是串行外围设备接口。 SPI 是 Motorola 公司推出的一种同步串行接口技术,是一种高速、全双工的同步通信总线, SPI 时钟频率相比 I2C 要高很多,最高可以工作在上百 MHz。 SPI 以主从方式工作,通常是有一个主设备和一个或多个从设备,一般 SPI 需要4 根线,但是也可以使用三根线(单向传输)2、SPI四线原创 2020-09-21 17:20:07 · 17403 阅读 · 9 评论 -
I2C 总线协议详解
I2C 总线协议1、I2C 简介2、I2C 协议3、I2C协议有关术语3.1、起始位3.2、停止位3.3、数据传输3.4、应答信号3.5、I2C 写时序3.6、I2C 读时序3.7、I2C 多字节读写时序1、I2C 简介I2C 是很常见的一种总线协议, I2C 是 NXP 公司设计的, I2C 使用两条线在主控制器和从机之间进行数据通信。一条是 SCL(串行时钟线),另外一条是 SDA(串行数据线),这两条数据线需要接上拉电阻,总线空闲的时候 SCL 和 SDA 处于高电平。 I2C 总线标准模式下速度原创 2020-09-21 11:41:25 · 8440 阅读 · 7 评论 -
Linux NXP (I.MX6uLL) UART串口通信原理
UART串口通信1、UART简介1.1、UART串口通讯格式1.2、UART 的通信格式:1.3、UART 电平标准2、I.MX6U UART 简介2.1、UART的时钟源选择3、UART 几个重要的寄存器3.1、UART 的控制寄存器 1,即UARTx_UCR1(x=1~8)3.2、UART 的控制寄存器 2,即: UARTx_UCR23.3、UARTx_UCR3 寄存器3.4、寄存器 UARTx_USR23.5、寄 存 器 UARTx_UFCR 、 UARTx_UBIR 和 UARTx_UBMR3.5.原创 2020-09-20 16:48:33 · 1852 阅读 · 0 评论 -
Linux NXP (I.MX6ULL) GPT高精度延时定时器
高精度延时GPT 定时器简介1、GPT 定时器特性如下:2、GPT 定时器的可选时钟源如下图所示:3、GPT 定时器结构如下图所示:3.1、GPT 定时器结构中各部分意义如下:4、GPT 定时器有两种工作模式5、 GPT 定时器几个重要的寄存器5.1、GPT 的配置寄存器 GPTx_CR5.2、GPT 定时器的分频寄存器 GPTx_PR5.3、GPT 定时器的状态寄存器 GPTx_SR6、定时器实现高精度延时原理GPT 定时器简介GPT 定时器全称为 General Purpose Timer,GPT原创 2020-09-20 11:50:14 · 904 阅读 · 0 评论 -
Linux驱动中按键消抖原理
为什么要用定时器来做按键消抖?用到按键就要处理因为机械结构带来的按键抖动问题,也就是按键消抖。前面的实验中都是直接使用了延时函数来实现消抖,因为简单,但是直接用延时函数来实现消抖会浪费 CPU 性能,因为在延时函数里面 CPU 什么都做不了。如果按键使用中断的话更不能在中断里面使用延时函数,因为中断服务函数要快进快出!本次我们学习如何使用定时器来实现按键消抖,使用定时器既可以实现按键消抖,而且也不会浪费CPU 性能,这个也是 Linux 驱动里面按键消抖的做法。定时器按键消抖原理按键消抖的原理其实就是原创 2020-09-20 10:15:32 · 972 阅读 · 2 评论 -
Linux之ARM (I.MX6ULL) EPIT定时器详解
EPIT定时器详解1、EPIT定时器简介1.1、总结定时器是最常用的外设,常常需要使用定时器来完成精准的定时功能, I.MX6U 提供了多种硬件定时器,有些定时器功能非常强大。我们从最基本的 EPIT 定时器开始,学习如何配置 EPIT 定时器,使其按照给定的时间,周期性的产生定时器中断,在定时器中断里面我们可以做其它的处理,比如翻转 LED 灯。1、EPIT定时器简介EPIT 的全称是: Enhanced Periodic Interrupt Timer,直译过来就是增强的周期中断定时器,它主要是完原创 2020-09-20 10:03:37 · 824 阅读 · 0 评论 -
Linux之ARM Cortex-A7 中断系统详解
GPIO中断1、中断是什么?2、STM32中断系统和 Cortex-M(STM32)中断系统的异同2.1、中断向量表2.2、NVIC(内嵌向量中断控制器)2.3、中断使能2.4、中断服务函数3、Cortex-A7 中断系统详解3.1、Cortex-A7 中断系统简介1、中断是什么?中断系统是一个处理器重要的组成部分,中断系统极大的提高了 CPU 的执行效率2、STM32中断系统和 Cortex-M(STM32)中断系统的异同STM32 的中断系统主要有以下几个关键点:①、 中断向量表。②、 NV原创 2020-09-16 16:07:22 · 3908 阅读 · 7 评论 -
Linux之ARM(IMX6U)裸机主频和时钟配置
Linux之ARM(MX6U)裸机主频和时钟配置1、I.MX6U 时钟系统详解1.1、系统时钟来源I.MX6U 系列标准的工作频率为 528MHz,有些型号甚至可以工作到 696MHz,但是默认的工作频率为396MHz,这就造成了浪费了,本次我们来配置主频时钟使其工作在528MHz,以及其他的外设时钟源都工作在NXP推荐的工作频率。1、I.MX6U 时钟系统详解I.MX6U 的系统主频为 528MHz,有些型号可以跑到 696MHz,但是默认情况下内部 boot rom 会将 I.MX6U 的主频设置原创 2020-08-28 10:39:17 · 1964 阅读 · 0 评论 -
Linux之ARM(IMX6U)裸机C语言蜂鸣器驱动实验--驱动编写,编译
Linux之ARM(MX6U)裸机C语言蜂鸣器驱动实验--驱动编写,编译1、有源蜂鸣器简介2、硬件原理分析3、实验程序的编写3.1、在写驱动之前要找到对应的寄存器设置好属性3.11、复用为GPIO3.12、找到其设置电器属性并配置电器属性3.2、beep.h3.3、beep.c3.4、把头文件包含进main.h中3.4.1、修改.vscode文件把beep文件夹路径加入到.vscode3.4.2、修改main.h3.5、调用驱动和蜂鸣器执行函数4、编译下载和验证4.1、修改Makefile文件4.2、编译下原创 2020-08-16 14:47:23 · 1635 阅读 · 0 评论 -
Linux之ARM(IMX6U)BSP工程管理实验
Linux之ARM(MX6U)BSP工程管理实验1、工程管理简介1.1、创建bsp、imx6ul、obj和project这四个文件夹1.2、文件分类2、实验程序编写2.1、创建 imx6ul.h 文件2.2、创建个.vscode文件修改includePath2.2.1、修改includePath2.3、编写led驱动文件2.2.1、 bsp_led.h2.2.1、 bsp_led.c2.4、编写时钟驱动代码2.4.1、bsp_clk.h2.4.2、bsp_clk.c2.5、编写延时驱动代码2.5.1、bsp原创 2020-08-15 23:41:37 · 967 阅读 · 0 评论 -
Linux之ARM(IMX6U)裸机官方SDK移植
Linux之ARM(MX6U)裸机官方SDK移植1、I.MX6ULL 官方 SDK 包简介2、实验程序的编写2.1、SDK文件的移植2.2、创建cc.h文件2.3、编写实验代码2.3.1、main.c2.3.2、start.s2.3.3、编写链接脚本2.3.4、编写Makefile3.编译下载1、I.MX6ULL 官方 SDK 包简介NXP 针对 I.MX6ULL 编写了一个 SDK 包,这个 SDK 包就类似于 STM32 的 STD 库或者HAL 库,这个 SDK 包提供了 Windows 和 Li原创 2020-08-15 16:08:12 · 1962 阅读 · 0 评论 -
Linux之ARM(IMX6U)裸机模仿STM32驱动开发格式
Linux之ARM(MX6U)裸机模仿STM32驱动开发格式模仿 STM32 驱动开发格式实验1.模仿STM32寄存器的定义1.1、STM32寄存器定义简介1.2、I.MX6U寄存器定义1.编写外设结构体2.定义 IO 复用寄存器组的基地址3.定义访问指针2.硬件原理分析,和之前的硬件资源一样3.实验程序编写1. imx6ul.h2.main.c3.start.s4.编译下载验证1.编写连接脚本2.编写Makefile脚本3.编译下载模仿 STM32 驱动开发格式实验C 语言编写 LED 灯驱动的时候,原创 2020-08-15 12:11:56 · 745 阅读 · 2 评论 -
如何用树莓派连接语音模块,红外模块来控制红外设备详解
如何用树莓派连接语音模块,红外模块来控制红外设备详解1.硬件设备2.软件准备3.解码1.红外解码流程1.连接红外设备(与TTL串口相连)2.获取开关红外电器的码4.我们使用树莓派如何和Wemos通信呢这里我们以红外遥控灯为例1.硬件设备1.USB转TTL串口2.语音模块3.WomosD1开发板4 .树莓派开发板5 .红外模块当然本例子中还有红外灯啦2.软件准备1 . arduino开发环境2 .树莓派系统3 .串口调试小助手3.解码我们想通过红外控制原创 2020-08-12 17:14:10 · 3526 阅读 · 12 评论 -
链接脚本的简介以及简单编写
链接脚本的简介以及简单编写在驱动的编译过程中的Makefile 中 我们链接代码的时候使用如下语句:arm-linux-gnueabihf-ld -Ttext 0X87800000 -o ledc.elf $^上面语句中我们是通过“-Ttext”来指定链接地址是 0X87800000 的,这样的话所有的文件都会链接到以 0X87800000 为起始地址的区域。但是有时候我们很多文件需要链接到指定的区域,或者叫做段里面,比如在 Linux 里面初始化函数就会放到 init 段里面。因此我们需原创 2020-08-11 11:28:07 · 1971 阅读 · 0 评论 -
Ubuntu如何查看是否开启了FTP服务
查看进程:ps -ef | grep ftp如果起起来了说明开启成功原创 2020-08-07 09:42:41 · 5860 阅读 · 0 评论 -
Ubuntu如何开启FTP服务
1 、开启 Ubuntu 下的 FTP 服务打开Ubuntu 的终端窗口,然后执行如下命令来安装 FTP 服务:sudo apt-get install vsftpd等待软件自动安装,安装完成以后使用如下 VI 命令打开/etc/vsftpd.conf,命令如下:sudo vi /etc/vsftpd.conf打开以后 vsftpd.conf 文件以后找到如下两行:local_enable=YESwrite_enable=YES确保上面两行前面没有“#”,有的话就取消掉,完成以后如图原创 2020-08-07 09:31:03 · 13893 阅读 · 6 评论 -
ARM汇编基础详解
ARM汇编基础详解1.GNU 汇编语法2.Cortex-A7 常用汇编指令2.1 处理器内部数据传输指令2.2 存储器访问指令2.3 压栈和出栈指令2.4 跳转指令2.5 算术运算指令2.6 逻辑运算指令我们在进行嵌入式 Linux 开发的时候是绝对要掌握基本的 ARM 汇编,因为 Cortex-A 芯片一上电 SP 指针还没初始化,C 环境还没准备好,所以肯定不能运行 C 代码,必须先用汇编语言设置好 C 环境,比如初始化 DDR、设置 SP指针等等,当汇编把 C 环境设置好了以后才可以运行 C 代码原创 2020-08-06 14:47:42 · 20245 阅读 · 7 评论 -
Cortex-A7 MPCore 架构详细介绍
Cortex-A7 MPCore 架构1.Cortex-A7 MPCore 简介2.Cortex-A 处理器运行模型3.Cortex-A 寄存器组3.1通用寄存器3.1.1未备份寄存器3.1.2备份寄存器3.1.3程序计数器 R153.2程序状态寄存器参考了《Cortex-A7 Technical ReferenceManua.pdf》和《ARM Cortex-A(armV7)编程手册 V4.0.pdf》这俩份文档,这两份文档都是 ARM 官方的文档,详细的介绍了 Cortex-A7 架构和ARMv7原创 2020-08-06 10:33:18 · 4222 阅读 · 6 评论 -
Windows,嵌入式产品,安卓的启动相关流程
C51,STM32(裸机)>>>>>>>>C直接操控底层寄存器实现相关业务。 业务流程型的裸机代码遥控灯: while(1)垃圾桶:WemosD1 LOOP恩智浦智能车: stm32X86,Intel windows:启动过程:电源 ->> BIOS ->>windows内核->>C,D盘->> 程序启动(比如QQ等)嵌入式产品:(树莓派,mini2440, mini6410,nanopi,海思原创 2020-07-22 18:58:15 · 212 阅读 · 0 评论 -
嵌入式 交叉编译链的安装
嵌入式 交叉编译链的安装什么是交叉编译器?交叉编译器的下载交叉编译器的安装1.把下载的文件放到Ubuntu中2.解压3.在 Ubuntu 中创建目录:4.将解压后的文件拷贝到 /usr/local/arm 中5.把交叉编译工具添加进环境变量6.安装相关库7.检验是否安装成功什么是交叉编译器?ARM 裸机、Uboot 移植、Linux 移植这些都需要在 Ubuntu 下进行编译,编译就需要编译器,我们在第三章“Linux C 编程入门”里面已经讲解了如何在 Liux 进行 C 语言开发,里面使用原创 2020-08-04 18:13:13 · 1502 阅读 · 1 评论 -
keil4软件的下载与安装
1.keil4的下载网盘:https://pan.baidu.com/s/1pDEt3SF_B_feD1220AHx0A提取码:uyj82.解压3.打开安装包 next4.agree next5.选择安装位置 next6.随便填写内容 next7.finish8.以管理员身份运行9.点击file -->License Mangent10.打开keyGen11.复制CID 并把复制的CID填写带keyGen上12.点击Cenerate生成密钥13原创 2020-07-22 20:56:53 · 98174 阅读 · 69 评论 -
总线地址,物理地址,虚拟地址
总线地址:地址总线 (Address Bus;又称:位址总线) 属于一种电脑总线 (一部份),是由CPU 或有DMA 能力的单元,用来沟通这些单元想要存取(读取/写入)电脑内存元件/地方的实体位址。通俗点来讲就是CPU能够访问内存的范围。表现得现象有:. 装了32位的win7的系统,明明内存条8G,可是系统只识别了3.8G ,装了64位系统才能识别8G因为 32位操作系统只能表示/访问:4294967296 bitbit 4,294,967,296Kb 4,192,304Mb原创 2020-07-23 16:46:06 · 1686 阅读 · 0 评论