![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 82
暖涩763
这个作者很懒,什么都没留下…
展开
-
Cortex-M3 内部寄存器
寄存器组R0-R12R0-R12,通用寄存器;R0-R12都是32位通用寄存器,用于数据操作;但是绝大多数16位Thumb指令只能访问R0-R7,而32位Thumb指令可以访问所有寄存器;R13R13,SP,堆栈指针;Cortex-M3有两个堆栈指针,它们是Banked,任一时刻只能使用其中一个;当引用R13/SP时,引用的是当前正在使用的那一个,另一个必须使用MRS/MSR指令来访问;主堆栈指针MSP:复位后缺省堆栈指针,用于操作系统内核操作和异常处理例程;进程堆栈指针PSP:由用户的应用转载 2021-02-23 15:05:52 · 532 阅读 · 0 评论 -
代码区、常量区、静态区(全局区)、堆区、栈区定义
系统一般内存主要分为:代码区、常量区、静态区(全局区)、堆区、栈区这几个区域。如下图代码区:存放程序的代码,即CPU执行的机器指令,并且是只读的。存放在最底层。常量区:存放常量(程序在运行的期间不能够被改变的量,例如: 10,字符串常量”aaaa”, 数组的名字等)静态区(全局区):静态变量和全局变量的存储区域是一起的,一旦静态区的内存被分配, 静态区的内存直到程序全部结束之后才会被释放.堆区:由程序员调用malloc()函数来主动申请的,需使用free()函数来释放内存,若申请了堆区内存,之后原创 2020-11-12 10:27:10 · 676 阅读 · 0 评论 -
ARM 之主流编译器
ARM 之主流编译器有三种:armcc、iar、gcc for arm必须先了解一下以下文件。这些文件在编译器目录下或者编译生成目标平台的可执行程序时经常见到。此外,还需要注意区分 Windows 平台 和 Linux 平台的文件。.o 文件: 指的是 object 文件,俗称目标文件。在 Linux 下扩展名缩写为 .o,在 windows 下通常为 .obj 文件。.a 文件: 指的是 archive 文件,俗称静态库文件。在 Linux 下扩展名缩写为 .a,在 windows 下通常为 .li原创 2020-11-06 16:30:03 · 497 阅读 · 1 评论 -
Modbus-RTU协议
Modbus-RTUModbus 一个工业上常用的通讯协议、一种通讯约定。Modbus协议包括RTU、ASCII、TCP。其中MODBUS-RTU最常用,比较简单,在单片机上很容易实现。虽然RTU比较简单,但是看协议资料、手册说得太专业了,起初很多内容都很难理解。ASCII 格式:地址 功能代码 数据数量 数据1…数据n LRC高字节 LRC低字节 回车 换行RTU 格式:地址 功能代码 数据数量 数据1…数据n CRC低字节 CRC高字节所谓的协议是什么?就是互转载 2020-08-27 10:32:51 · 662 阅读 · 0 评论 -
MP3文件结构解析
*MP3文件结构解析*目录MP3文件结构解析 11. MP3文件结构解析 21.1. 概述 21.1.1. 音频相关术语 21.1.2. MP3简述 31.2. MP3文件结构 41.3. ID3V2解析 51.3.1. 标签头 51.3.2. 标签帧 71.4. 音频数据解析 91.4.1. 数据帧帧头 91.4.2. 帧长度与真大小 121.4.3. 帧持续时间 121.4.4. 帧数据 131.4.5. VBR头文件 131.5. ID3V1解析 141.6. 附录转载 2020-07-03 18:11:56 · 716 阅读 · 0 评论