自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 问答 (1)
  • 收藏
  • 关注

原创 浅谈 :ARM架构下的 cache 和 Write Buffers

涉及到ARM架构下的内存管理系统;1.cache和write buffers的概念:cache是高速缓冲存储器,write buffers是写缓冲区,这两个东西位于主存储器和CPU之间,主要用来提高存储系统的性能;2.cache和write buffers的作用原理: cache与主存之间以块(cache line)为单位进行数据交换,一个cache块的大小与系统有关,通常一个块为几个字;例如一个 cache Line 大小为4字节,当CPU从主存中读取地址为 n 的数据时,...

2021-04-29 17:34:59 712

原创 常见ARM汇编 指令/伪指令 实战总结:

1. .global/.globl:定义全局标识符,其中标号_start是GNU链接器用来指定第一个要执行指令所必须的,同样的是全局可见的。2..section命令是汇编语言汇中最为重要的命令之一,作用是定义内存段,该命令后只跟一个参数,即它声明的段的类型。例如:.section.text#定义文本段(代码段).section.data#定义数据段.section.bss#定义bss段再例如:.secti...

2021-04-29 00:21:50 2245 1

原创 iic 和 spi选择频率

iic的最大工作频率为400k,spi 则为 4M,注意一下;

2021-04-24 23:47:16 1922

原创 imx6ul定时器中断使能失败记录

正确:EPIT1->CR = ((1 << 1) | (frac << 4) | (1 << 24) | (1 << 2) | (1 << 3));错误:EPIT1->CR = ((0x1110 << 0) | (frac << 4) | (1 << 24));自己写imx6ul裸机驱动的时候遇到的问题,在进行逻辑运算的时候为了保证正确,尽量多拆解开,否则就会这样找半天错误;...

2021-04-23 12:46:45 201

原创 函数指针的理解 以及 汇编跳转IRQ中断并定位指定的代码编写

区分:指针函数是返回值为指针的函数;前言:cortex A系列芯片最高可具有具有1000+的中断,cortex A7最多集成8核在一个芯片里,通过gic中断管理器管理所有中断;它引入了中断号的概念,区别于cortex M系列芯片的NVIC中断管理器和数十个异常中断,cortex A架构芯片只有八个异常中断;其中IRQ中断包含了所有外部中断,采用中断号机制,每一个外部中断具有自己的中断号,通过给每一个中断号注册中断服务函数可以初始化中断服务函数;编写cortex A系列mcu中断服务函数的时候遇到了这

2021-04-22 21:46:53 1189

原创 堆栈的脏数据:子程序跳转回主程序后堆栈区存放的返回地址未销毁

在CPU中SP堆栈指针和PC程序计数器是程序运行的动力,堆栈区间能够存储指令返回地址、数据等;当从一个程序跳转到子程序之后,会将返回地址压栈,其实存放的是返回后下一个指令的地址,而执行完子程序之后跳转到上一级程序,PC指针赋值为进入子程序时压栈的指令地址,同时出栈该地址,但是数据并未被销毁,只不过CPU会自动无视该数据,但是只要还没有被覆盖,数据就任然存在,即脏数据;脏数据必然会有影响,先记录一下;...

2021-04-18 20:59:22 390 2

原创 删除交叉编译工具

sudoaptautoremovegcc-arm-linux-gnueabihf

2021-04-09 14:40:09 835

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除