ZigBee 无线网络节点开发平台软件开发平台 IAR Embedded Workbench(简称 EW)的 C/C++交叉编译器和调试器是今天世界最完整的和最容易使用专业嵌入式应用开发工具。EW 对不同的微处理器提供一样直观用户界面。
瑞森半导多款产品适用储能产品的应用,产品质量、性能优越,对标国际品牌,推动国产替代化的发展
二极管是用半导体材料(硅、硒、锗等)制成的一种电子器件。它具有单向导电性能。给正向电压时,二极管导通。给反向电压时,二极管截止。说简单些,就是PN结,具有单向导电性。PN结具体的空穴、载流子、漂移和扩展,就放一张图,这里不作展开,自行脑补。
家里有不少给小孩子买的电动玩具,感叹现在的电动玩具虽然才几十块钱,但是不仅包邮,还附送充电器和可充电电池,真的很便宜,大家都买得起。下图这款充电器忘了是哪个玩具附送的,看起来像模像样,就是有点轻。这么便宜的价格,想看看是什么电路方案,下面拆解分析:
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是i.MXRT1170双核下不同GPIO组的访问以及中断设计。在双核 i.MXRT1170 下设计应用程序,有一个比较重要的考虑点是片内外设资源共享以及任务分配问题,同样一个任务既可以放在默认主核 CM7 下做,也可以放在默认从核 CM4 下去完成。如果这个任务跟片内外设有关,那就得考虑该外设是否在两个核下设计与使用一致,这在项目开始前必须要调研清楚。
嵌入式Linux开发中,有时候我们程序需要检测设备的联网状态。这里分享两种方法:方法一:创建一个socket client尝试去链接一个服务器。方法二:通过检测sysfs下的对应文件。
哈喽,大家好,我是月亮。一个工作n年的老程序员啦,平时在公号上给大家分享一些心得体会/有趣的工具,每周更新~今天月亮想和大家聊一下,我是怎么从一个什么都不会的计算机专业的小白,成功入门软件开发的。
女人走在前面,男人怀里抱着个小孩儿跟在后面。当这样的组合目标明确地朝我走来的时候,我就知道,他们大概马上会遇到一些困难了。
LLC谐振电路是常用的拓扑,广泛应用在目前的热门应用中,本文主要从典型谐振状态来分析其基本工作过程,后续我们将逐步扩展到其它工作状态。
PID是一种非常经典的控制类算法,凭着它的简单易用在工程上得到了广泛的应用,并且影响力也是极高,那为什么说其简单易用呢?可以说只要你对PID的主要的参数对系统的影响理解得足够好,完全可以通过手动试凑的方式来获得一套合适的PID参考,所以对一些非控制类的工程师应用起来也是非常友好的。
今天分享一个C语言宏定义小技巧,从语法上来看比较简单,不过一旦真正领悟到其精妙之处不仅可以简化代码、还能提高代码的可扩展性。X-MACRO宏技术的核心在于灵活的应用#define与#undef,对于玩C语言的伙计#define是再熟悉不过了,但#undef却鲜有人在实际的开发过程中熟练使用,基本上都是#define走天下。那#define的作用域是怎样的呢?其作用范围都是从宏定义处到文件结束,不管函数内外均可以随意使用。那一不小心使用#define重复定义相同的宏又会怎样呢?对于大部分编译器会报重复定义警告,但也有小部分编译器采用最近的宏定义直接通过,所以稍不留神就把bug引入到了代码中。其实对于C语言编程素养良好的工程师们多会使用#undef来限制宏定义的作用范围,即取消宏定义,以免造成宏泛滥。
常规内容也写的差不多,特别是第④篇,我相信仔细看过的小伙伴一定会有所收获,毕竟里面的内容在百度上不那么容易搜到。今天我们再聊点进阶的,同样在百度上也是不容易检索到。
正如Linus Torvalds曾经说过的,大多数安全问题都是bug造成的,而bug又是软件开发过程的一部分,是软件就有bug。至于是安全还是非安全漏洞BUG,内核社区的做法就是尽可能多的测试,找出更多潜在漏洞这样近似于黑名单的做法。Greg Kroah-Hartman说:“一旦我们修复了它,我们就将它放到我们的栈分析规则中,以便于以后不再重新出现这个bug。”如果没有2015年11月5号华盛顿邮报的一篇关于内核安全性的爆炸性专题报道《Net of insecurity the kernel of the argument》,内核社区应该仍会固守“A bug is bug”的理念(虽然如今也没有改变太多)。这篇文章狠狠的批评了内核社区对内核安全的态度,批评Linux “没有一个系统性的机制能在黑客之前发现和解决安全问题,或引入更新的防御技术”,“甚至Linux内核开发社区都没有一个首席安全官”等等。
我是从ARM7TDMI开始接触ARM架构的,当时很幸运有DSP的学习基础,同时遇到了把ARM架构和操作系统结合讲解的书籍。这样,结合自己不断的实践,一直可以跟上ARM架构的演进。长期的跟踪也让我容易能看到ARM的趋势,我从Linaro在做ARM NEON指令集优化关注到Linaro,后面持续的关注以Linaro为首ARM生态组织的发展,几年后的2017年,我作为演讲人分享了ARM架构下的一个TLB性能优化方案,实现了从关注到深度参与到过程。
我们生活中几乎到处都能接触到计算机,从我们日常使用的手机、平板,到办公使用的笔记本、台式机,到银行的ATM机,到各处可见的监控设备,还有我们平时看不见但是我们浏览的网页其所在的服务器,还有微信、抖音等我们日常所用的APP它们所在的服务器,等等,这些都是计算机。如果没有了计算机,我们的生活将难以想象。那么究竟什么是计算机呢,这个还真不好下定义的,那我们就来看一下百度百科对计算机的定义:计算机俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。计算机的应用非常广泛,从我们日常最常见的台式机、笔记本到手机平板都是计算机,而且大到服务器、超级计算机,小到各种嵌入式设备也都是计算机。现在我们对计算机既有了感性的认识,又知道了的它的权威定义,那么计算机是怎么产生的呢,下面我们来看一看计算机的发展史。