ARM-内存访问指令

Comment
灵感,总是在不经意的时刻突然出现。这顽皮的小精灵怕人,刻意去寻找它,反而会迷失方向。 内存访问指令 LDR和STR 这两条指令,在一条语句中只能对单个寄存器进行内存读写。 LDR的功能是把内存中的数据拿出来装载到寄存器。 1LDR Rd,[Rn,#offset] @从Rn内存地址中产生offset偏移量,在之后的内存中读取数据加载到Rd中 STR的...

Read More

ARM数据指令及运算指令

Comment

多久了,多久没有写博客了。很久了。
大半年以来,一直在名为探索的道路上盘旋。期间发生了很多事,但都只是经历。
我总说,人是一座座孤岛,我用它来将人与人之间的理解隔离开来。所以,当我遇到一些人,不理解我的时候,或者我无法理解他人的时候,我就会把这句话当作是我唯一的真理,继而封锁自己。
但我觉得我这样做不太妥当。
闲谈的话就先说到这吧,毕竟标题上来讲,是要写arm相关的事情的。

Read More

freeRTOS-消息队列

Comment

在实际项目中,常常会遇到一个任务和另一个任务进行“沟通交流”的情况(即任务与任务之间的数据传递),通常我们会考虑通过全局变量来完成任务间的数据传递,但是全局变量数据无保护,导致数据不安全,当多个任务同时对该变量操作时,数据易受损,无法追踪全局变量被谁使用或被谁更改。 FreeRTOS对此提供一个叫做队列的机制。

Read More

arm指令集

Comment

学习arm指令之前复习一下关于位运算的知识:
16位数值0x1234中,0x12是高位,0x34是低位
大端序(Big Endian):
高位字节在前(低地址),低位字节在后(高地址)。
存储顺序:0x12 0x34。

Read More

进程-信号量

Comment

介绍信号量之前,我们先介绍一下资源这些事
当多个进程同时访问一块共享空间的时候,会出现资源争夺的情况,最终导致数据混乱。

Read More

进程-消息队列与共享内存

Comment
消息队列: 消息队列就是一个消息的列表,进程可以在消息队列中添加消息和读取消息 消息队列具有一定的FIFO特性,具有无名管道与有名管道的各自的优势,可以支持任意两个进程的进程间通讯 创建消息队列 用法: #include <sys/types.h> #include <sys/ipc.h> #include <sys/msg....

Read More

arm基础(1)

Comment
ARM核(ARMv7)的寄存器资源 User模式寄存器是基础寄存器集 当处理器运行在其他模式(如 Supervisor 或 IRQ 模式)时,如果对应的模式没有自己独立的寄存器版本,那么就会直接使用 User 模式的寄存器(例如 R0_usr 到 R12_usr)。 某些模式有独立的寄存器版本 快速中断模式(FIQ): FIQ 模式为了提高中断处理效率,设...

Read More

不更啦

Comment
不更啦,准备考研了,再见

Read More

QThread

Comment
关于继承QThread线程对象在哪个线程中的判断,挺简单,只要记住对象在哪个线程中被创建存在,自身实例对象就在哪个线程中。 在Qt中一个对象的槽函数在被信号触发调用的时候,槽函数在那个线程中执行取决于它的对象属于那个线程中 默认情况一下我们在代码中创建的对象都属于主线程,这个对象的槽函数在调用的时候,占用的都是主线程的时间,我们也可以将一个QObject类型...

Read More

QDataStream数据流

Comment
QDataStream类用于将任意常见类型的数据以二进制写入到指定的目标中,同时也可以按写入的顺序从目标中读取这些类型的数据,实现数据的序列化。 这个操作在通信中很有用,例如:我需要将一个学生对象传递给对方,我只需通过QDataStream把学生对象序列化成一个二进制数据发送给对方,对方通过QDataStream反序列化就可以得到这个学生对象的数据。 数据流...

Read More