2016年10月5日

摘要: 建议学习路径: 首先先学学编辑器,vim, emacs什么的都行。 然后学make file文件,只要知道一点就行,这样就可以准备编程序了。 然后看看《C程序设计语言》K&R,这样呢,基本上就可以进行一般的编程了,顺便找本数据结构的书来看。 如果想学习UNIX/Linux的编程,《Advanced 阅读全文
posted @ 2016-10-05 22:34 gary_123 阅读(4497) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2016-10-05 21:53 gary_123 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。如何检测网关的MTU在本机打开dos窗口,执行: ping -f -l 1472 192.16 阅读全文
posted @ 2016-10-05 20:00 gary_123 阅读(3052) 评论(0) 推荐(0) 编辑
摘要: 重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。 一般浮点运算都是由专门的硬件来完成,举个例子假设有个硬件寄存器名字叫做FLOAT,用来计算和存放浮点数的中间运算结果 假设有这么个函数 void fun() { //...这个 阅读全文
posted @ 2016-10-05 19:51 gary_123 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1) #define 语法的基本知识(例如:不能以分号结束 阅读全文
posted @ 2016-10-05 19:40 gary_123 阅读(364) 评论(0) 推荐(0) 编辑
摘要: volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。下面举例说明。在D 阅读全文
posted @ 2016-10-05 17:28 gary_123 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 我只要一听到被面试者说:"const意味着常数"(不是常数,可以是变量,只是你不能修改它),我就知道我正在和一个业余者打交道。去年Dan Saks已经在他的文章里完全概括了const的所有用法,因此ESP(译者:Embedded Systems Programming)的每一位读者应该非常熟悉con 阅读全文
posted @ 2016-10-05 17:19 gary_123 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 1、什么是can 2、can的特点 2、物理层特征 我们使用ISO11898标准,物理层特征如图所示 3、帧的种类介绍 实际上有一些帧是有硬件来实现的。 4、数据帧介绍 5、总线仲裁 6、位时序(用于设置波特率) 在STM32中传播时间段和相位缓冲段1是放在一起形成PBS1的 7、总结 阅读全文
posted @ 2016-10-05 15:32 gary_123 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。 阅读全文
posted @ 2016-10-05 11:32 gary_123 阅读(114) 评论(0) 推荐(0) 编辑

导航