芯片到底是怎么访问外设

微型计算机的组成:CPU+RAM+硬盘等

什么是FLASH?

FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码或者直接当硬盘使用(U盘)。

目前Flash主要有两种NOR Flash和NADN Flash。

CPU执行SPI上的程序,第一个程序和第一条指令在哪里?

硬件知识LED原理图:

1.确定引脚; 2. 看主芯片的芯片手册,确定如何设置/控制引脚; 2.写程序。

原理:

如果引脚驱动能力不足,引入三极管。

方法一、

方法二、

所以我么一般控制主芯片引脚输出高电平是还低电平。就可以改变LED状态:

我们不关心GPIO引脚输出的电压是3.3V还是0V。只关心输出的是1还是0。

三极管原理:

什么时候导通? p > N

编程:

1.引脚的模式选择 PIN mode;

2.模块的使能enable;

3.方向:输入功能还是输出功能;

4.数据:高电平还是低电平。

写寄存器一种低效的方法:

方法一:

因为他需要三个步骤。

方法二:

所以有些处理器引入了设置寄存器和清楚寄存器。

直接让它为去为某一个值。

如:

同理:清楚寄存器也还是同样的操作方法。(置1即可)

编程:

1.

Bit3 设置为 1,并且不能影响到其他的位。

2.GPIOB 方向输出:


数据输出:

电阻的功能:防止电流过大,烧毁LED。

CPU一上电:之后就进入Reset Hander:

在ARM看来,内存和IO的操作是一样的:

精简指令集:

相关推荐
女神下凡4 天前
嵌入式设计的各种存储芯片的硬件/软件设计规范,非常全面。
arm开发·单片机·嵌入式硬件
从零开始的嵌入式之旅5 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
老当益壮梁奶奶5 天前
ARM汇编学习笔记(六):【i.MX6ULL】时钟系统与定时器(EPIT & GPT)
c语言·arm开发·嵌入式硬件·学习·51单片机
昌原的儿子LEO5 天前
IMX6ULL 时钟系统与 EPIT/GPT 定时器原理与配置
arm开发·学习
sunoo-2295 天前
【ARM嵌入式学习笔记Day6】一文打通i.MX6ULL时钟体系:PLL/PFD/预分频+滞回比较器全解析
arm开发·笔记·vscode·单片机·imx6ull·汇编语言
M78佐菲5 天前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
sunoo-2295 天前
【嵌入式裸机开发Day04】i.MX6ULL 蜂鸣器驱动详解:从引脚地址查找到代码实现全流程
arm开发·单片机·嵌入式硬件·学习·串口·裸机
Doraemomo5 天前
IMX6ULL裸机开发——PWM
arm开发·嵌入式硬件·imx6ull
老当益壮梁奶奶6 天前
ARM汇编学习笔记(五):从按键轮询到 GIC 中断控制器(ARM Cortex-A7 )
arm开发·笔记·单片机·嵌入式硬件
M78佐菲6 天前
ARM学习笔记(五)
linux·arm开发·笔记·嵌入式硬件·学习