摘要: 为什么有位操作? 位操作一般用于单片机内。用于减少通信数据的大小。 举例来说,在pc内一个字节有8位,可以表示一个字符,但是在can通信中,就可以将信息按位存储,正如一个字符有8位,极限情况下每一个位都代表一个信息,这样最多就可以代表8个信息。 如何使用位操作? 位操作一般用于提取信息,假如现在收到 阅读全文
posted @ 2020-07-16 13:40 多弗朗强哥 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 一般嵌入式开发使用的芯片都比较小巧,不适合运行C代码,不是说不能用,而是C代码同样的程序实际是比C要多的。 C++是面向对象的,成员函数的工作原理和普通函数不太一样,他的成员变量寻址全是偏移地址+基址。 也就是基地址加偏址,通过改变基地址,让函数操作不同对象,但偏地址都相同(这样相同的代码实现操作不 阅读全文
posted @ 2020-07-16 10:06 多弗朗强哥 阅读(939) 评论(0) 推荐(0) 编辑
摘要: 汽车启动顺序 将点火钥匙转到第二格,至电源档,让汽车电脑系统开始自检(做好安全检测),至少6秒 以上; 踩下脚刹,将档位从P挡拉到N档(如倒车则在P档直接点火); 松开脚刹,将点火钥匙转到点火档启动发动机(根据不松开脚刹,将点火钥匙转到点火档启动发动机(根据不同的车型及环境温度确定热车时 间,但在低 阅读全文
posted @ 2020-07-16 10:04 多弗朗强哥 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 计算机的存储层次(memory hierarchy)之中,寄存器(register)最快,内存其次,最慢的是硬盘。 同样都是晶体管存储设备,为什么寄存器比内存快呢? Mike Ash写了一篇很好的解释,非常通俗地回答了这个问题,有助于加深对硬件的理解。下面就是我的简单翻译。 原因一:距离不同 距离不 阅读全文
posted @ 2020-07-16 10:00 多弗朗强哥 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 生活中的信号基本上都是模拟信号,但是你要存到电脑里需要转换成数字信号。。这是模数转换。。。。然后你再用电脑输出模拟信号比如声音,就是数模转换 数模转换器,电脑中存储的是数字量0001,0111,而生活中的是模拟量(连续曲线) 阅读全文
posted @ 2020-07-16 09:40 多弗朗强哥 阅读(284) 评论(0) 推荐(0) 编辑
摘要: JTAG是arm芯片的调试协议,诸如Keil,Ads,IAR等IDE集成了JTAG解析功能。 JLink,JTrace都是调试器/仿真器,即在线调试工具,他们支持从JTAG协议/接口转换到USB协议/接口, 参考链接: https://blog.csdn.net/sunheshan/article/ 阅读全文
posted @ 2020-07-16 09:36 多弗朗强哥 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 隐藏 当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。 举例来说明。同时编译两个源文件,一个是a.c,另一个是main.c。 //a.c char a = 'A'; // global variable void msg() { printf("Hello\n"); 阅读全文
posted @ 2020-07-16 09:28 多弗朗强哥 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 把no变成yes 变成yes的三个步骤 不直接说出自己的想法 揣摩对方的心理 考虑符合对方利益的措辞 这些方法不会百分百成功,但会提高成功率。 突破口1:投其所好 选择 对不起,我突然有工作要做。今天的约会取消吧。 对不起,我突然有工作要做,但我更想见你了。 投其所好 “抱歉,这种衬衫只剩这一件了。 阅读全文
posted @ 2020-07-16 07:43 多弗朗强哥 阅读(147) 评论(0) 推荐(0) 编辑