上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 99 下一页
摘要: 简而言之: CMSIS 定义了一套 API,应用层代码调用这套API。微控制器厂商完成 API 的实现。 CMSIS 项目仍在不断更新,它开始是为了 cortex-M 微控制器的设备驱动库建立一致性,现在已经成为了 CMSIS-Core,其他的 CMSISI 项目也已经启动: CMSIS-Core( 阅读全文
posted @ 2021-06-28 15:10 流水灯 阅读(1455) 评论(0) 推荐(0) 编辑
摘要: 基本知识 证书生成网站:https://csr.chinassl.net/index.html 证书会包含一个服务器的域名,或者包含多个域名( 多域名证书,SAN certificater == SubjectAltName Certificater) 自签名证书:正常情况是把 “ 证书请求文件 ” 阅读全文
posted @ 2021-06-26 15:20 流水灯 阅读(539) 评论(0) 推荐(0) 编辑
摘要: subject alt name: 对于证书持有者,一般使用 Subject 项标记,并使用 subjectAltName 扩展项提供更详细的持有者身份信息。 subjectAltName 全称为 Subject Alternative Name,缩写为 SAN。它可以包括一个或者多个的电子邮件地址 阅读全文
posted @ 2021-06-24 17:44 流水灯 阅读(858) 评论(0) 推荐(0) 编辑
摘要: 源文件到可执行文件流程 编译:.c 文件变成 .s 汇编文件 汇编:.s 文件变成 .o 可重定位的目标文件(elf格式文件) 链接:一个或多个.o 文件变成一个可执行文件 ELF 文件和 BIN 文件的区别 BIN文件是直接的二进制文件,内部没有地址标记。bin文件内部数据按照代码段或者数据段的物 阅读全文
posted @ 2021-06-18 10:05 流水灯 阅读(2379) 评论(0) 推荐(0) 编辑
摘要: objcopy用于将object的部分或全部内容拷贝到另一个object,从而可以实现格式的变换。 objcopy可用于将文件转换成S-record格式或者raw二进制格式。 例如, xxxx-elf-objcopy –O srec test.o test.s19 则将test.o转换成s-reco 阅读全文
posted @ 2021-06-17 11:38 流水灯 阅读(821) 评论(0) 推荐(0) 编辑
摘要: 使用默认链接文件生成可执行文件: cc = gcc prom = hello DIR= ($shell pwd) inc_dir = $(DIR)/inc src_dir = $(DIR)/src obj = $(pathsubst $(src_dir)/%.c, $(src_dir)/%.o, $ 阅读全文
posted @ 2021-06-17 10:59 流水灯 阅读(109) 评论(0) 推荐(0) 编辑
摘要: fflush()的作用是用来清空缓冲区,fflush(stdin)清空标准输入缓冲区,把输入缓冲区里的东西丢弃; fflush(stdout)清空标准输出缓冲区,把输出缓冲区里的东西强制打印到标准输出设备上。 fflush(stdin)不太常用,在有些编译器中是错误的用法,可以用以下方法替代:whi 阅读全文
posted @ 2021-06-17 09:41 流水灯 阅读(626) 评论(0) 推荐(0) 编辑
摘要: 这个问题与虚拟地址空间的分配规则有关,每一个可执行C程序,从低地址到高地址依次是:text,data,bss,堆,栈,环境参数变量;其中堆和栈之间有很大的地址空间空闲着,在需要分配空间的时候,堆向上涨,栈往下涨。 这样设计可以使得堆和栈能够充分利用空闲的地址空间。如果栈向上涨的话,我们就必须得指定栈 阅读全文
posted @ 2021-06-16 18:07 流水灯 阅读(2426) 评论(0) 推荐(0) 编辑
摘要: 例子1 我们都知道数组下表是从0开始的,假如我们想从1开始,可以这么干: 定义一个指针,指向a[-1]这个位置 #include <stdio.h> void main() { int a[] = {1,3,4}; int *p = &a[-1]; int i =0; for( i = 1; i < 阅读全文
posted @ 2021-06-15 18:02 流水灯 阅读(1270) 评论(0) 推荐(0) 编辑
摘要: 可变参数函数:函数的参数个数是可变的 ANSI C,这些宏的定义位于stdarg.h中: typedef char *va_list; va_start #define va_start(list,param1) ( list = (va_list)&param1+ sizeof(param1) ) 阅读全文
posted @ 2021-06-15 15:23 流水灯 阅读(163) 评论(0) 推荐(0) 编辑
上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 99 下一页