上海红楼秘史:性贿赂,圈养性奴,手段残忍,伤天害理

​没有新闻自由,我们都是乌合之众

上海红楼特大性奴案,我有六个问题要问

恒大躺平,滴滴退市,中概股血崩:我们见证了太多历史事件

大案:男子在上海一大厦圈养十几名性奴 手段残忍令人咋舌

分享到微信朋友圈

点击图标下载本文截图到手机
即可分享到朋友圈。如何使用?

填写问券帮助你更迅速地找到相关搜寻

嵌入式ARM

少写点if-else吧,它的效率有多低你知道吗?

分享计算机基础及高端知识,主要有C++、java、Android、音视频、数据结构、操作系统、计算机网络、深度学习等。
1月28日 下午 6:11

树莓派Pico:仅4美元的MCU

Pico是一款便捷灵活、方便上手的开源电子原型平台。由树莓派基金会推出,不同于以往任意一款树莓派,Raspberry
1月22日 下午 9:49

嵌入式Linux开发板裸机程序烧写方法总结

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
1月19日 上午 10:26

国产16位MCU的痛点,可以用这款物美价廉产品(附完整开发过程)

Definitions******************************************************************************/#define
1月15日 下午 4:34

STM32价格疯长下,盘点STM32的国产替代者

4)在代码中设置读保护,如果使用外部工具读保护比如JFLASH或脱机烧录器设置,可跳过此步骤。在写完KEY序列后,需要读该位确认key已生效,修改如下:总共需要修改如下四个函数:
1月11日 下午 3:53

一个工程师的“噩梦”:刚分清CPU和GPU,却发现还有……

从架构图我们就能很明显的看出,GPU的构成相对简单,有数量众多的计算单元和超长的流水线,特别适合处理大量的类型统一的数据。
2020年12月20日

成功为华为“续命​,创立世界第三大芯片生产厂”:中国芯片之父张汝京

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年12月18日

这位“华为天才少年”,竟然要我用“充电宝”打《只狼》

据稚晖君介绍,这是个8000毫安的充电宝,C口支持18W的快充输入,A口支持18W的PD快充输出。C口快充时,屏幕上会显示蓝色指示灯;A口则可以用来给其他常规设备充电。
2020年12月15日

飞机上一般是什么操作系统?

之前波音737MAX空难失事事件牵动人心,让人对航空出行又平添了一份不信任,根据最新消息显示,美国联邦航空局对737
2020年11月29日

什么是LIN总线?高速CAN、容错CAN、LIN总线有什么区别?

LIN总线采用的是单线传输形式,应用了单主机多从机(有无主动上报的支持?)的概念,总线电平一般为12V,传输速率最高限制为20kbps。由于物理层的限制,一个LIN网络最多可以连接16个节点。
2020年11月28日

大佬终于把鸿蒙OS讲明白了,收藏了!

在智慧屏上这么写,在手表上也是这么写。也就是他们说的一次开发多端部署,提供成熟方案,不用放更多精力在安全机制,组网连接和基础通信上。聚焦业务,快速完成原型开发。
2020年11月25日

必看!影响嵌入式薪资的各种原因!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年11月23日

我的单片机转嵌入式Linux之路:一位大佬的完美转变!

本公众号专注于嵌入式技术,包括但不限于C/C++、嵌入式、物联网、Linux等编程学习笔记,同时,公众号内包含大量的学习资源。欢迎关注,一同交流学习,共同进步!
2020年11月20日

电气毕业生在国家电网都干啥工作?

记得刚入职时,我在荻港供电所轮岗,跟着师父去抄表,走遍了荻港镇各村落的山间小道,路上碰到的野狗和蛇不计其数。有一次,为了帮助一户深山的老奶奶检修故障,我和师父在山里走了近两个小时。
2020年11月20日

让你永远忘不了的傅里叶变换解析

此时,有两个频率在起作用,一个是信号的频率:3次震荡/秒,另一个是图像缠绕中心圆的频率,为0.5圈/秒,第二个频率可以自由改变,相当于一个变量,下面的动图直观的展现了缠绕速度变化时的可视化表现
2020年11月17日

国内MCU能替代国外产品吗?MCU的未来又将如何?

2020年MCU全球市场规模接近200亿美元,海外前八大MCU厂商占据全球约88%的市场份额。公司是国内较具规模的工控单芯片厂家,在全球家电MCU及国内锂电池管理芯片领域取得领先,受益于我国已发展成
2020年11月5日

超长干货为你解析:从串口驱动到Linux驱动模型,嵌入式必会!

1、纯文本文件(ASCII):这是Unix系统中最多的一种文件类型,之所以称为纯文本文件,是因为内容可以直接读到的数据,例如数字、字母等等。设置文件几乎都属于这种文件类型。举例来说,使用命令“cat
2020年11月2日

超全!嵌入式必懂的CAN总线一文讲通了

SJA1000有64个字节的接收缓冲区(FIFO),这可以降低对MCU的要求。MCU可以通过查询或中断的方式确定SJA1000接收到报文后读取报文。-END-
2020年10月29日

选微处理器MPU,还是单片机MCU?两者区别详解

考虑选择微处理器(MPU)或者单片机(MCU)时,应用类型通常是关键因素。另一方面,最终选择取决于诸如操作系统和内存之类的因素。不过,有时可以将微处理器和单片机内核结合使用,这称作异构架构。
2020年10月26日

STM32如何配置外部中断?

专注于单片机、ARM、嵌入式等硬件、软件设计经验的分享,并提供一定的技术支持。我已加入“维权骑士”(rightknights.com)的版权保护计划
2020年10月19日

干货:嵌入式系统设计开发大全!(万字总结)

现在的嵌入式都是快餐,随着大学生的不停涌入,价值越来越低,并且这些群体大部分都能做出东西来,却就是做不稳定,最后就是白菜价格也卖不出去,而根本点在于缺少对生产、质量、售后、测试、模拟基础功底的漠视。
2020年10月15日

嵌入式系统求职回忆录:广嵌、迈瑞、华为、智光……

【5】嵌入式工程师结合经历聊硬件工程师和软件工程师哪个更有前途?
2020年10月14日

嵌入式行业真的没有前途吗?

【5】嵌入式工程师结合经历聊硬件工程师和软件工程师哪个更有前途?
2020年10月13日

STM32单片机:独立看门狗、窗口看门狗的配置

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority
2020年9月30日

单片机为何既有Flash又有EEPROM?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年9月28日

“史上”最烂代码!

Programmer”,中文俗译为“粑粑程序猿”)的社区。我经常上去浏览,这个网站经常分享一些写的烂的代码和有关编程的话题。这不,今天我就看到一段令人难以置信的烂代码,有图有真相:
2020年9月27日

goto语句对与错

本公众号旨在交流嵌入式开发的知识和经验。内容涵盖linux内核解读,嵌入式软硬件编程。
2020年9月23日

RTOS 是如何进行任务划分的?

最后,要指出的一点是,如果关键任务有严格的实时性要求,那么必须赋予它足够高的优先级,以便及时获得运行权,如果没有实时性要求,那么高优先级并不是必须的,关键是将其他非关键的操作进行剥离,以免受其拖累。
2020年9月21日

C语言内存操作的陷阱!你踩过坑吗?

world!",sizeof(p));//不越界,但是少了结尾'\0'memset(p,'\0',sizeof(p));strncpy(p,"hello
2020年9月21日

用于MCU,基于FreeRTOS的micro(轻量级)ROS

在微控制器中拥有所有ROS2的功能和相同的API会不是很好吗?这正是micro-ROS提供的-机器人系统嵌入式部分内部的ROS开发生态系统。micro-ROS允许开发人员在硬件级别附近运行ROS
2020年9月16日

光刻机原理解析——光刻机到底在“刻”什么?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年9月15日

使用KeilMDK以及标准外设库创建STM32工程的详细过程

点击右侧图标进入J-Link设置界面,如果此时仿真器和硬件开发平台已经正确连接就会出现如图15所示的界面,同时系统系统任务栏中会自动弹出J-Link的控制软件。从界面中可以读出当前的J-Link
2020年9月15日

干货:嵌入式C语言源代码优化方案(非编译器优化)

在许多种情况下,可以用指针运算代替数组索引,这样做常常能产生又快又短的代码。与数组索引相比,指针一般能使代码速度更快,占用空间更少。使用多维数组时差异更明显。下面的代码作用是相同的,但是效率不一样。
2020年9月15日

华为继鸿蒙OS后,即将发布国产编程语言,打破国外垄断!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年9月14日

编码器是什么?STM32编码器接口及应用编程

TIM_EncoderInterfaceConfig,它就是编码器接口的配置函数。简单的只需要配置该函数,使能TIM,即可实现采集编码器上面的信息。(当然,需要复杂的操作,还需要做其他相应的配置)
2020年9月10日

C语言函数指针之回调函数

>M26工作状态集合函数***********************************************/M26_WorkStatus_TypeDef
2020年9月7日

C语言内存泄露很严重,如何应对?

如果确认对局部指针存在内存申请操作,就需要分析该内存的去向,是会被保存在全局变量吗?又或者会被作为函数返回值吗?如果都不是,就需要排查函数所有有”return“的地方,保证内存被正确释放。
2020年9月6日

编译C语言程序,使用 gcc 指令,而C++程序则推荐使用 g++指令!

可以看到,该指令的执行过程并没有发生任何错误。而同样的程序,如果我们使用
2020年9月2日

嵌入式研发10多年,工程师悟出这些道理

【05】国产超低价单片机五宗罪!“扶不起”的原因就是它们?
2020年9月1日

在C 语言中,请一定记得初始化局部变量!

函数返回在pop出当前栈帧的时候,并不会清理它遗留在栈帧里的数据,下个函数调用再次重用到该栈帧的内存时,未初始化的局部变量将会被遗留数据影响,从而变得不确定!
2020年8月31日

C语言:优雅的字符串函数库

+------------+------------------------+-----------+---------------\|
2020年8月31日

嵌入式编程是否应该用C++替代C语言

在如今复杂的开发环境中,随着时代的发展,越来越多先进的硬件解决方案被提出,所以需要更好用的软件和语言解决方案,这就意味着编程语言必须是不断的更新的,不断为开发人员提供最好的最先进的工具。
2020年8月28日

怎么学习单片机外围器件?

(1);}1、为什么要包含reg52.h?里面有什么内容?2、sbit是什么意思?是标准C里的关键字还是keil
2020年8月23日

2020年8月程序员工资最新统计

原文链接:https://blog.csdn.net/juwikuang/article/details/106503404
2020年8月22日

长见识:你真的知道C语言里extern "C" 的作用吗?

__cplusplus}#endif这通常用于C++和C混合编程的时候,为了防止C++的编译器在编译C文件的时候出现错误;众所周知,C++可以进行函数名重载,但是C则没有这种功能,那这和extern
2020年8月22日

当谈起嵌入式工程师,究竟在谈些什么

本文授权转载自“嵌入式IoT”,作者:bigmagic
2020年8月21日

2020年顶级编程语言

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年8月19日

C++之标准库的学习总结

一个只专注于干货分享的博主,有问题可以随时来撩我哦!我有故事,你有酒吗?
2020年8月15日

硬件工程师必知的10个C语言技巧

硬件设计师最常见的工作内容是通过写代码来测试硬件。这10个C语言技巧(C语言仍然是常见的选择)可以帮助设计师避免因基础性错误而导致某些缺陷的产生并造成维护方面的困扰。
2020年8月15日

国内为什么写不出操作系统和编程语言?

出处:https://www.cnblogs.com/StitchSun/p/12889614.html
2020年8月13日

C语言如何实现拷贝图片?几行代码即可搞定

我们可以使用二进制的方式去读取图片里面的数据,然后,再写入另一个文件!代码如下:
2020年8月13日

单片机:3种时钟电路方案对比,你常用哪一种?

Vbat供电,是指电池供电的电源,由于某种原因在VCC供电突然失去的条件下,时钟芯片自动启用Vbat电池电源,用以保持时钟芯片内部的时钟信号处理,不必因为电路系统电源VCC断电而失去电路工作。
2020年8月12日

漫画版:如何学习单片机?

地址:https://www.zhihu.com/question/311334042/answer/738607755
2020年8月12日

单片机编程技术学习攻略

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年8月11日

C++基础知识!初学者必看!

代码中包含注释,这将提高源代码的可读性。所有的编程语言都允许某种形式的注释。
2020年8月9日

C语言常用的一些转换工具函数!

result;}//str转换为数字,以','或者'*'结束//buf:数字存储区//dx:小数点位数,返回给调用函数//返回值:转换后的数值int
2020年8月9日

大神用10000字总结了嵌入式C语言必学知识点……

2));}这里说明下,volatile易变的,可变的,一般用于以下几种状况:1)并行设备的硬件寄存器(如:状态寄存器)2)一个中断服务子程序中会访问到的非自动变量(Non-automatic
2020年8月8日

终于有人讲清楚了!关于编程语言的那些事儿【鲲鹏代码迁移系列第一期】

从今天起,我们将围绕:将软件从x86Linux平台移植到鲲鹏Linux平台的移植指导,以及移植过程中遇到的相关问题处理方法,包括编译环境准备、编译脚本和源码修改等内容,为开发者带来一系列文章。
2020年8月8日

关于C/C++中的++i和i++实现机制的探讨

注意:由于函数重载是以参数类型来区分的,而前置、后置运算又都没有参数。为了解决这个语言学上的漏洞,只好让后置式运算符有一个int类型的参数(调用时,编译器会默默地为这个int型参数指定0值)
2020年8月5日

史上最全Linux/C/C++思维导图,理清思路全靠它了!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年8月5日

TIOBE 8 月编程语言:C、Java 差距拉大,R 语言盛行

本月继续保持,且在数据分析和统计计算等领域,也成为开发者最受欢迎的编程语言之一。回看
2020年8月4日

C++中,delete 和 delete [] 的真正区别

a;此种情况中的释放效果相同,原因在于:分配简单类型内存时,内存大小已经确定,系统可以记忆并且进行管理,在析构时,系统并不会调用析构函数。
2020年8月4日

25条写代码建议,句句真言,值得牢记!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年8月3日

如何在Linux上恢复误删除的文件或目录

http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2tar
2020年8月3日

深度:嵌入式系统的软件架构设计!

如果存储器上有大量的静态数据,那么上述算法就只能针对剩下的空间生效,这种情况下还要实现对这些静态数据的搬运的算法。但是这种算法会降低写操作的性能,也增加了算法的复杂度。一般都只使用动态均衡算法。
2020年8月3日

看看大家都在忙啥:各行业程序员的一天

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年8月2日

【C进阶】这种地方别再强制类型转化了,来告诉你个小技巧!

其发生该情况的主要原因是由于4字节float类型变量不能完全覆盖int类型的所有类型数值,所以在进行强制类型转化的过程中会产生精度上的损失,这样大家稍不留意就会有一些不必要的麻烦。
2020年8月2日

为什么自己设计的嵌入式系统不如工业级产品稳定?

开发流程每个公司都各有不同,但是从产品生命周期以及产品可靠性自身规律角度,个人觉得还是应该考虑这些要点。关于开发流程以及功能安全标准内容很多,这里泛泛总结这些个人体会。
2020年8月1日

编程能力的4种境界,你到哪一级了?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月31日

最佳入门教程!嵌入式必会的Linux驱动开发之IIO子系统

driver...鉴于大多数人的注意力无法在一篇文章里上集中太久,更多的内容请大家先自行去阅读吧,不是自己理解到的东西是消化不了的。有机会的话我会把更多的读书心得放在后面的文章。6.
2020年7月31日

国产超低价单片机五宗罪!“扶不起”的原因就是它们?

实际上,早在十几年前,市场上就一直有不少配置、引脚,乃至价格都和STM8S003F3P6相当的低价单片机,其中一些价格甚至可以低至一块以下,基本上都是国产厂商,当然也有一部分日系,比如曾经的NEC。
2020年7月30日

单片机C语言,必知的数据存储与程序编写知识!

2)栈有两种分配方式:静态分配和动态分配。静态分配是编译器完成的,比如局部变量的分配。动态分配由alloca函数进行分配,但是栈的动态分配和堆是不同的。它的动态分配是由编译器进行释放,无需手工实现。
2020年7月30日

从零基础到Linux开发,我是这样一步步过来的

一个只专注于干货分享的博主,有问题可以随时来撩我哦!我有故事,你有酒吗?
2020年7月30日

7种常见的51单片机时钟电路图,收藏!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月29日

精彩!由FPGA触发的芯片战争!

FPGA是由电路编程的芯片,支持“仿真”该电路。这种仿真的运行速度比使用ASIC实现的实际电路运行速度慢--它的时钟频率更慢,使用更多的功率,但它可以每隔几百毫秒重新编程一次。
2020年7月28日

你见过哪些“操蛋”的代码?切勿模仿!

的文件来放置全局变量咱也不说了。一个小小的项目中一二百个全局变量咱也不说了,这些全局变量中大部分还是指针变量咱也甭说了!!!
2020年7月28日

12条CPU硬核干货!最全解释!

结果写回阶段作为最后一个阶段,把执行指令阶段的运行结果数据“写回”到某种存储形式:结果数据经常被写到CPU的内部寄存器中,以便被后续的指令快速地存取。
2020年7月27日

这届清华太难了!C++作业难到上热搜,特奖都做不出来

但是对于同学们来说,这是完全不同的一件事:大作业需要学生不断地去博弈。咱们先不论大作业内容是什么,清华学生在做之前,要先折腾清楚以下几件事,并做出选择:
2020年7月27日

我,一个靠 GitHub 打赏谋生的程序员,如何做到年入 10 万美元?

原文:https://calebporzio.com/i-just-hit-dollar-100000yr-on-github-sponsors-heres-how-i-did-it
2020年7月26日

GitHub数据告诉你:最幸福的码农在用什么编程语言?

Github是所有开发人员都熟悉的平台。它不仅可以用作版本控制工具,还可以收集存储库和项目统计信息,用户配置文件数据和注释。这样,我们就可以访问有关年龄,性别和个人资料照片的信息。Microsoft
2020年7月26日

史上最经典的“史密斯圆图”讲解

其中:Z0为变化前的阻抗,ZIN为变化后的阻抗。假设PCB线条的特性阻抗为50欧姆,传输过程中遇到一个100欧姆的贴片电阻,暂时不考虑寄生电容电感的影响,把电阻看成理想的纯电阻,那么反射系数为:
2020年7月26日

你的前途不过是钱途!嵌入式行业真的没前途吗?

如果目前没有找到合适的学习路线,可以去看看一些教程,我个人比较推荐的是韦东山老师的教程,很全面也很细致;还有朱有鹏老师的教程,尤其是关于物联网这块的。相信你们可以自己可以找到他们的教程去学习。
2020年7月25日

入门C语言20问20答

C语言中逻辑值1和0是如何判断的?C语言中,一般在进行逻辑运算时,将所有非零值都作为1,也就是逻辑真;而只有本身为0的值才当做0,也就是逻辑假参加判断。13
2020年7月25日

90%的单片机初学者,都会遇到的10个问题

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月25日

精通C++?为什么都说C++太复杂?

"jiangxuehan";下面的代码在给s赋值时,s其实早就已经有一个值了(默认构造函数)。在赋值的时候,s必须要放弃旧值占用的内存。String
2020年7月24日

三极管在单片机中的应用图解

里边介绍的,我们可以通过单片机控制三极管的基极来间接控制后边的小灯的亮灭,用法大家基本熟悉了。还有一个控制就是进行不同电压之间的转换控制,比如我们的单片机是
2020年7月23日

单片机内部结构原理,让你豁然开朗!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月23日

单片机的三总线结构(数据、地址、控制)

利用74LS273数据锁存功能,在满足总线地址写操作中,可以把单片机累加器里的数据写入273锁存输出,地址为0F8FFH或8000H。由于所用控制总线不同,可以和输入共用地址。
2020年7月22日

电路图:单片机之一键控制开关机

1、按下K,电源通过4007为整个系统供电,AVR开始工作。此时PB1为高电平。注意,电源来源是连接器旁边的+5V。
2020年7月22日

C语言之父:因拒付论文装订费错失博士学位,论文52年后重见天日

或许,这篇论文可以带我们一窥计算机科学发展的早期情况,了解当年的先驱人物所面临的挑战。此外,它还可以提醒我们在这条路上已经走了多远,以及技术在人的短暂一生中所发生的变化。
2020年7月22日

超实用!分享5个基本Linux命令行工具的现代化替代品

k8s-pod.json"busybox""nginx"这个命令提供这两个容器的名称。如果你只是在查找第二个容器的名称,则可以在表达式中添加数组元素索引:
2020年7月21日

使用git管理嵌入式软件版本

Github和Gitlab是最流行的托管平台,由于众所周知的原因,这些国外的网站在国内的访问速度很不理想,国内使用推荐gitee码云或coding.net。以Gitee来举例。
2020年7月21日

北大留学生张益唐,59岁获世界大奖,却称“还好我不在中国”

做学问,最重要的是有专注的精神,需要成年累月对学术研究的持续专注,这样才能够取得大成绩——张益唐
2020年7月21日

分享10个值得关注的C语言开源项目

由于简洁的设计和先进的特征,使得它在生产和研究方面,都有卓越的表现,而且它也有受使用者支持的完整的源代码。许多程序都可以很容易地通过
2020年7月20日

C语言开发单片机为啥都是全局变量形式?

result=Kp*err+Ki*integral+Kd*(err-err_last);
2020年7月20日

STM32学了很久,为什么还是不会做项目?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月19日

Linux系统编程-通用文件模型

文件描述符并非局限于访问普通文件。实际上,文件描述符也可以访问设备文件、管道、FIFO、Socket等。遵循一切皆文件的理念,几乎任何能够读写的东西都可以通过文件描述符来访问。
2020年7月18日

在C语言中如何高效地复制和连接字符串?

s2);为了执行这个连接操作,除了同时发生的相应地在d上的传递之外,一次在s1的传递和一次在s2上的传递是必须要执行的操作,但是上面的调用在s1上进行了两次传递。让我们把这些调用分成两个语句。
2020年7月17日

Git如何优雅地回退代码

毕竟太野蛮,我们还是想能保留提交历史,以后排查问题也可以参考。升级融合rebase只好用搜索引擎继续搜索,看到有人提出可以先使用
2020年7月17日

FPGA设计的八个重要知识点,你都会吗?

后引入了一级数据预处理模块,这个数据预处理可以根据需要的各种数据运算,比如在
2020年7月16日

一步一图,带你重头梳理微服务架构!

但通常在其而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。
2020年7月16日

Rust能够取代C语言吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月16日

STM32库中的Assert断言有必要使用吗?

ZI-data=11524.断言失败处理断言失败,可根据实际项目需求,做出一定处理。比如:打印错误信息,存储错误日志等。本文就讲到这里,方法教给大家,需要自己理解并消化其中内容。-END-
2020年7月15日

Linux常用命令,超强万字总结!

编写。catcat,又是一个相对高频率的命令。比较官方的说法是命令用于链接文件并打印到标准输出设备上。这个文本输出命令可以用来查看文件内容,创建内容等,下面我们介绍几个比较实用的用法。命令格式
2020年7月15日

学不好后悔一辈子:刨根问底之链表数据结构

欢迎关注嵌入式客栈,主要分享嵌入式Linux系统构建、嵌入式Linux驱动开发、单片机技术、FPGA开发、信号处理、工业通讯等技术主题。欢迎关注,一起交流,共同进步!
2020年7月14日

使用python脚本部署mariadb主从架构

'''当然也可以将abcd四条命令写入一个列表,使用for语句循环出来放入下面命令执行。stdin,stderr,stdout=ssh.exec_command(d)
2020年7月14日

面试:C/C++常见库函数实现

内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中
2020年7月14日

CPU缓存有什么用?科普一下关于CPU缓存的作用

由于CPU是核心硬件,相信我们在选择CPU的时候都会去关心CPU参数方面,而在CPU核心参数中,我们经常会看到缓存(Cache)这个参数,那么CPU缓存有什么用?下面科普一下关于CPU缓存的作用。
2020年7月13日

550万华人在美现状:7诺奖、300院士,320常春藤高校终身正教授...

年前就有华人移居美国的历史,从过去的劳工、公派留学生,到现在的投资者、高科技人才或者是看中养老福利过去养老的人。从古至今,移民美国的原因总是五花八门的。那么已经移民到美国的华人现状是什么样的呢?
2020年7月13日

中科院5nm激光光刻弯道超车?95后本科生DIY纳米级光刻机?背后的真实情况

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月12日

放弃MacBook Pro,用8GB的树莓派4工作一天,是这样的感受!

到底值不值得上手?作者给出的结论是:如果你想用它当通用电脑,那肯定是不行的。但对于一部分人来说,这款树莓派有它的独特优势。如果你对计算机的使用主要是浏览器、代码编辑器、命令行(如后端
2020年7月11日

代码对齐使用Tab、空格、还是双管齐下?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月10日

Linux 为何会流行?它和普通的RTOS有啥区别?

Mint和Fedora)可以快速启动并运行。这些发行版背后有着庞大的社区支持,社区成员很愿意帮助他人。我最后想提醒的是,记住备份所有重要的文件!-END-推荐阅读
2020年7月10日

为了给你最最精确的定位,你知道程序员有多努力吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月9日

精品教程:5个思维导图包会Verilog HDL语言!学不会你打我

块语句有两种,一种是begin_end语句,通常用来标识顺序执行的语句,用它来标识的块称为顺序块。一种是 fork_join语句,通常用来标识并行执行的语句,用它来标识的块称为并行块。
2020年7月9日

全面分析6大国产CPU处理器

2019年5月,基于FT-2000+/64的服务器产品群在福州数字中国峰会上发布。芯片能效(性能功耗比)方面,与其他芯片相比飞腾优势明显;数据库等应用的实测性能对比其他一些国产芯片也相对占优。
2020年7月8日

Linux系统编程-信号入门

人们很容易高估某个决定性时刻的重要性,也很容易低估每天进行微小改进的价值。以前我也以为大规模的成功需要大规模的行动,现在我不这么认为了。长期来看,由于复利效果,一点小小的改进就能产生惊人的变化。
2020年7月8日

深度剖析:CPU 到底是怎么识别代码的?

早期的计算机就是这样编程的,几分钟就算完了但插线好几天。而且插线是个细致且需要耐心的工作,所以那个时候的程序员都是清一色的漂亮女孩子,穿制服的那种,就像照片上这样。是不是有种生不逢时的感觉?
2020年7月7日

程序员在地铁上写代码被路人吐槽:有什么好装的!

但这个网友的帖子立刻引来其他网友的回怼,说写代码根本不用网络而且地铁的网络现在也很好,就是因为他觉得写代码是一个很高大上的事情,所以才会觉得程序员在装。
2020年7月7日

C语言指针终极指南!(附详尽图示和代码)

操作系统将硬件和软件结合起来,给程序员提供的一种对内存使用的抽象,这种抽象机制使得程序使用的是虚拟存储器,而不是直接操作和使用真实存在的物理存储器。所有的虚拟地址形成的集合就是虚拟地址空间。
2020年7月7日

大学生和研究生差在哪里?怎么做一名合格的研究生?

太多次了,因此不一定能有很大的创新,所以为什么跨领域学习是一件很重要的事情。【现在读研读博,多是交叉学科领域的课题,这要求学生必须要主动积极的学习使用其他学科领域的知识或技术手段,开展创新性的研究】
2020年7月6日

如何把C++的源程序改写成C语言

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年7月6日

17条嵌入式C语言编程小知识总结

结构体变量所占内存的长度是各个成员的总和,每个成员分别占有自己的存储空间。共用体变量所占内存的长度是其最长成员的长度。当然,编译器出于提高访问效率的目的,在编译分配存储空间时往往要进行对齐操作。
2020年7月5日

可算是有文章,把Linux零拷贝技术讲透彻了!

操作不会被阻塞。然而,如果文件描述符没有被设置为不可被阻塞方式的
2020年7月3日

知乎:现在做硬件工程师还有前途吗?

在知乎上看到这个话题,关于对硬件工程师的发展,其实很多争议。
2020年7月3日

一文教你搞懂C语言的Q格式使用

Q格式虽然十分抽象,但是且看看这个数字0x5f3759df,感觉和Q格式有某种联系,它是雷神之锤3中的一个算法的魔数,毕竟游戏引擎需要充分考虑到效率,具体的由来可以看一下论文《Fast
2020年7月2日

C语言中的结构体和共用体(联合体)

同一个内存段可以用来存放几种不同类型的成员,但在每一瞬时只能存放其中一种,而不是同时存放几种。也就是说,每一瞬时只有一个成员起作用,其它的成员不起作用,即:共用体中的成员不是同时都存在和起作用的。
2020年7月1日

提高Linux效率的30个命令行常用快捷键

作者:老男孩oldboy来源:https://blog.51cto.com/oldboy/2112948
2020年6月29日

一个C程序的源代码是如何运行在硬件上的?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月28日

图解Linux是如何进行函数调用的?

上图表达的应该已经很清楚啦,简单示例解释一下,函数调用需要传递参数时,第一个参数存到%edi里,第二个参数会存到%esi里,如果有返回值会存到%eax里,这里如果是64位的返回值,会使用%rax。
2020年6月28日

我硬生生地把C代码塞进了Python和Ruby!

%d\n'%struct_c.get_struct_size())实际上,以上的操作,也是这个库偷偷地调用了GCC来编译C代码的(只是不是显式让你看到而已),你不安装对应版本的GCC也是做不到的。
2020年6月28日

中兴的芯片,到底什么水平?

我已加入“维权骑士”(rightknights.com)的版权保护计划。
2020年6月24日

为什么要使用二级指针?

上述就是关于二级指针的相关内容,总体来说,二级指针也是指针,用指针的思想来处理这个问题就好,区别只是在于一级指针是由于存放普通变量的地址的,二级指针是用于存放指针变量的地址的。另外需要注意的就是
2020年6月23日

带你全面认识 Linux

教程:https://www.runoob.com/linux/linux-tutorial.html。原文:https://dev.to/emtes/so-linux-3i9k本文为
2020年6月23日

打假!你被假芯片坑惨过吗?今天教你一招!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月21日

C语言宏定义的妙用!用完软硬件效率蹭蹭涨!

当宏作为常量使用时,C程序员习惯在名字中只使用大写字母。但是并没有如何将用于其他目的的宏大写的统一做法。由于宏(特别是带参数的宏)可能是程序中错误的来源,所以一些程序员更喜欢使用大写字母来引起注意。
2020年6月21日

嵌入式系统中常用的IIC与SPI,这两种通讯方式该怎么选?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月19日

炸裂!万字长文拿下HTTP 我在字节跳动等你!

1995年是不平凡的一年,网景公司和微软开启浏览器大战,谁都想当老大。1999年HTTP/1.1发布并成为标准,写入RFC,以为以后不管是网关还是APP等,只要你要使用HTTP,就得遵守这个标准。
2020年6月18日

回顾史上25款经典芯片:曾震撼了世界

在闪存出现之前,我们用于存储大量的数据不得不利用磁带、软盘和硬盘。许多公司在努力设计出一种固态代替方案。但是诸如EPROM(需要紫外线擦除器来擦除数据)和EEPROM等方案并不能有效的存储大量数据。
2020年6月18日

单片机DSP必备概念:快速教会你傅立叶算法

当然,本文限定讨论时域信号是因为我们电子系统中的应用最为普遍的就是一个时域信号,当然推而广之,其他的多维度信号也能利用上面定义进行推广,同样在多维空间信号也非常有应用价值,比如2维图像处理等等。
2020年6月18日

程序又被人白嫖了!你的MCU加密了吗?

通过连接网络,在你的MCU中生成一个唯一的随机长序列号,并加入复杂的特种算法,或加入你们重新编码的企业信息在里面,每个芯片内不同,复制者只能复制到一个序列号。
2020年6月17日

一个动画让你看懂戴森里面的直流无刷电机!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月17日

图文并茂,一次搞定C语言结构体内存对齐!(包含完整源码)

小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。
2020年6月17日

北大十年,博士毕业时他做好了失业的心理准备,结果……

我所在的数学科学学院,是北京大学官方认定的“一号院系”。当然,私下更多的说法是“四大疯人院”之首。在这里,我第一次体验到了“智商不够,努力来凑”的喟叹。每每都会想起在知乎上看到的一个问题:
2020年6月16日

呵呵,一个Bug你改了两天,真有这么难吗?

该机器放在一个机柜中,机柜在一个小储藏间的角落里,储藏间不大,一边还摆着张破沙发,正好可以坐着用电脑调机器,但是实在查不出什么可疑情况会导致过热,因为投诉等级较高,于是连夜蹲守。
2020年6月16日

嵌入式必看:Linux内存管理那些事儿

段页机制也不是一蹴而就的,经历了单纯物理分段、单纯分页、单纯逻辑分段等阶段,最终演进出来了分段和分页结合的内存管理方式,段页结合获得了分段和分页的优势也避免了单一模式的弊端,是一种比较好的管理模式。
2020年6月16日

后MATLAB时代的七种开源替代,一种堪称完美!

交涉之后,被告知由于美国政府实体名单的原因,相关授权已被中止。目前,哈尔滨工业大学、哈尔滨工程大学的老师和学生们都无法使用
2020年6月15日

几种常见的校验算法

UART有一个奇偶校验,CAN通信有CRC校验。Modbus、MAVlink、USB等通信协议也有校验信息。
2020年6月14日

二维码会被人类扫完吗?

支付码、名片码、健康码、校园码、复学码、乘车码、挪车码码码码码码码码码码码码码码码码码码码码码码码码码码,这么多码?
2020年6月14日

【收藏】大佬们都在用的结构体进阶小技巧

对于结构体的应用太多了,今天这篇文章我主要为大家总结平时关于结构体的一些独特小技巧,对于结构体更多优秀的编程表现,只能作者后续总结归纳以后分享给大家。好,下面进入这些有用的技巧:
2020年6月13日

MATLAB被禁了,开源软件是国产基础软件的最后一根救命稻草?

孔乙己便涨红了脸,额上的青筋条条绽出,争辩道,“窃书不能算偷……窃书!……读书人的事,能算偷么?”接连便是难懂的话,什么“君子固穷”,什么“者乎”之类,引得众人都哄笑起来:店内外充满了快活的空气。”
2020年6月13日

GitHub 上100个优质前端项目整理,非常全面!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月12日

手把手教系列之一阶数字滤波器设计实现(附代码)

http://www.elecfans.com/tools/rclvboqijiezhipinlv.html
2020年6月12日

指针和引用有什么区别?分别什么时候引用?

引用其实就是变量的别名,就是给变量重新起了一个名字,注意引用既然是个别名,那它一定要有本体,一个人叫王二小,我们也可以给它起个别名叫二蛋,我们提到二蛋和王二小其实都是同一个人。
2020年6月11日

你能看懂这个晦涩的 C 程序么?

O(10,39)N(40)N(41)N(42)N(43)N(66)N(69)N(24)O(22,65)O(5,70)O(8,44)N(
2020年6月11日

先学STM8,还是学STM32?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月10日

如何替换一个Linux内核函数的实现-热补丁原理

。我们为内核做热补丁的时候,没人用汇编写吧,没人用二进制指令码去拼逻辑吧,我们一般都是直接修改内核函数的C代码的,然后形成一个patch文件,然后…然后…去读kpatch的Documents吧。
2020年6月10日

C语言/C++基本语句编程风格

初学者阶段编程时,编写基本语句可能会有隐含错误的方式,基本语句主要针对if、for、while、goto、switch等,它们看似简单,但使用时隐患比较多,本文归纳了使用语句的一些规则和建议。
2020年6月9日

10 大白帽黑客专用的 Linux 操作系统

DEFT(数字证据及取证工具箱)是一份定制的Xubuntu自启动运行Linux光盘发行。它是一份易于使用的系统,包含了最佳的硬件检测,以及一些专用于应急响应和计算机取证的最好的开源应用软件。
2020年6月9日

嵌入式项目是如何评估系统所需的RAM和ROM用量的?

RAM分为很多种,关于SRAM、DRAM、SDRAM、PSRAM等等的概念。简单来说就是:
2020年6月9日

STM32好找工作,所以学linux终究是错付了吗?

所以你学到的GUI技术全都是MCU领域使用的,而这些和主流的GUI的前端与业务逻辑分离的设计模式(典型的如微软的WPF,Android,或web前端设计等)是有不同的,因此你学到的东西也是有局限的。
2020年6月8日

开发芯片有什么难的?给你两个星期够不够?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月8日

国产芯片制造有多烂?十年饮冰,热血难凉

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月7日

FPGA 国内厂商 VS 国外厂商

转发本文仅为传播相关知识,如有疑问请联系删除,本文观点不代表本网观点
2020年6月7日

中国没有掌握的的技术,何止是芯片

电脑多头秤的发明者、世界最大计量包装解决方案提供商——日本ishida(石田)在如今全球电脑多头组合秤量机市场占有7成份额。像联合利华、达能这类具备巨量产能的跨国食品企业是ishida的忠实支持者。
2020年6月7日

嵌入式和单片机不一样?那它们的区别在哪?

嵌入式系统是将应用程序、操作系统、和计算机硬件在一起的系统,是指以应用为中心,以计算机技术为基础,软硬件可裁剪,其针对的用户应用对功能、可靠性、成本、体积、功耗和使用环境有特殊要求的专用计算机系统。
2020年6月6日

史上卖得最多的芯片......原来是这个!

三极管检测555工作在2Hz,当电压是一个方向时,一个LED点亮;三极管开路,所有的LED都将闪烁,三极管短路,所有LED都不亮。
2020年6月6日

单片机程序该如何优化?一文为你指明道路!

汇编(时钟周期)C语言(时钟周期)8*8位乘法79-87184-19016*8位乘法201-210362-38816*16位乘法234-379396-468表1.1
2020年6月6日

嵌入式开发碰到无法解决的问题?编程的凹凸性有妙用!(附C代码)

这样将S(t)信号转换为离散信号序列S(n),那么对于当前时刻其斜率怎么求取呢?(这里忽略中间的过度态,仅将其看为线段相连,当然现实应用中如果有更高要求,可以做曲线拟合)
2020年6月5日

结构体内存对齐,这回给你彻底搞会!

的整数倍,那就是下一个地址空间,对齐到偏移量为8的地址空间。结构体总大小为最大对齐数的整数倍,所以为对齐数4的整数倍,现在已经用了9个字节的空间,那么总大小就是12个字节空间。所以输出结果是12。
2020年6月4日

基于C99规范,最全C语言预处理知识总结

控制条件包含的表达式,一定是一个整型常量的。不能包含类型转换和标识符(如C语言中的关键字、枚举常量等),其只认宏与非宏。我们可以将以下表达式把defined当做一元操作符:defined
2020年6月3日

该不该放弃单片机、嵌入式这条路?

作者:TopSemic链接:https://www.zhihu.com/question/370606355/answer/1137000299来源:知乎
2020年6月3日

如何分析和提高(C/C++)程序的编译速度?

当我们遇到这样情况的时候,是不是不知所措呢?怎么防止遇到这样的情况呢,我们来分析一下程序加速的一些方法。
2020年6月2日

没了美国EDA软件,我们就不能做芯片?看一线工程师怎么说!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年6月2日

单片机编程:如何喂狗的灵魂拷问,看门狗那些事儿!

如果我们希望系统快速恢复,应该采用看门狗复位后的初始化比正常加电初始化短的策略。也就是说跳过设备的一些自检。当然,在某些系统中最好进行全面自检,因为看门狗超时的根本原因可能是通过此类硬件异常导致的。
2020年6月1日

Linux内核中I2C总线及设备长啥样?这回终于搞清楚了!

s3c24xx_driver_ids);I2C从设备及设备驱动:每个I2C总线段上将有一个由结构i2c_client表示的I2C设备。这些设备将被绑定到一个struct
2020年6月1日

常用于单片机的接口适配器模式C语言实现

但是往往我们做项目写程序的时候,并没有想到那么多,如果在不带操作系统的情况下,想要整个框架易于移植,易于理解,那么我们真的需要好好想想这个设计模式怎么写了。
2020年6月1日

“悬空指针”和“野指针”究竟是什么意思?标准答案来了

C语言中的指针可以指向一块内存,如果这块内存稍后被操作系统回收(被释放),但是指针仍然指向这块内存,那么,此时该指针就是“悬空指针”。下面这段C语言代码是一个例子,请看:
2020年5月30日

RTOS排位战!你到哪个段位了?

这次经历对我的成长挺大,以前是没有教学文档、视频就寸步难行,无从下手,之后发现其实一个RTOS里面就是那些东西,用起来都差不多的,如果具备一个RTOS的经验,再去玩其它的RTOS,很好上手。
2020年5月29日

上帝视角?C语言之观察者模式

在单片机开发里面,串口通信是很重要的通信手段。在业务代码里面,有很多子模块都关注着串口通信的数据。假设在串口数据来临的时候,我们需要去通知各个子模块。
2020年5月29日

中国高校鄙视链指南!

央行太爷愈看愈生气了,抢进几步说:‘你敢胡说!我怎么会有你这样的本家?你姓央么?’这货不开口,想往后退了;央行太爷跳过去,给了他一个嘴巴:‘你怎么会姓央!——你哪里配姓央’!”
2020年5月28日

最全ARM体系结构知识:汇编、架构、异常级别和安全状态

在这一小节中,我们主要介绍ARMv8架构中AArch64执行状态下的寄存器使用情况。ARM架构中的寄存器主要有两类,一类用于提供系统控制与状态报告;另一类用于指令运行和异常处理。我们主要讨论第二类。
2020年5月28日

C语言编程:九种必会查找算法(附完整代码)

折半查找的前提条件是需要有序表顺序存储,对于静态查找表,一次排序后不再变化,折半查找能得到不错的效率。但对于需要频繁执行插入或删除操作的数据集来说,维护有序的排序会带来不小的工作量,那就不建议使用。
2020年5月27日

单片机学习笔记,三个步骤教你学!

否则,照搬别人的设计永远落在别人的后面,你做的产品就没有创意。电子技术领域的第一手资料(DATASHEET)都是英文,从第一手资料里你所获得的知识可能是在教科书、网络文档和课外读物等所没有的知识。
2020年5月27日

提升 C++ 技能的 7 种方法

开发相关技术文章,每篇文章都经过精心筛选,一篇文章讲透一个知识点,让读者读有所获~
2020年5月26日

Linux如何调试内存泄漏?超牛干货奉献给你(代码全)

./a.out===================================================================103==ERROR:
2020年5月26日

RAM较小的MCU必须会这个技巧!结构体内存对齐解析

记录一个嵌入式软件技术爱好者的成长之路,专注于嵌入式软件开发,分享学习过程中的心得,记录项目开发中遇到的“坑”,主要涉及STM32,ucos,RT_Thread,Linux的相关知识。
2020年5月26日

嵌入式er必知:模数采样知多少(最全总结)

1位,或者01101101。当输入电压低于当前输入电压时,也会发生相反的情况。此时由于种种原因,这种情况可能不会发生。在本例中,ADC的误差为±1位DNL。积分非线性误差INL(Integral
2020年5月25日

锂电池充电慢?教你用 STM32 制作锂电池快充充电器

无论你是否尝试自己动手做一个,其中的锂电池充电电路原理、STM32G0快充库的使用,都是非常值得学习和借鉴的。全套资料包括原理图、PCB、BOM、STL外壳文件等。
2020年5月25日

stm32几种低功耗模式的实现和差别

1、睡眠模式:在睡眠模式中,仅关闭了内核时钟,内核停止运行,但其片上外设,CM4核心的外设全都还照常运行,在软件上表现为不再执行新的代码。这个状态会保留睡眠前的内核寄存器、内存的数据。唤醒后
2020年5月24日

做硬件,真的没前途吗?看看资深工程师是怎么说的

所以硬件工程师是吃经验的,对公司来说培养一个硬件工程师成本很高,硬件不会像软件一样代码错了修改一下几分钟就可以搞定,硬件设计错了,那有可能全部都要重来,整个项目周期可能就要延迟3周甚至一个月以上。
2020年5月24日

来,看看你的单片机程序有多大!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月23日

又被C/C++的内存坑了?5个黄金规则请谨记!

(2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。
2020年5月23日

自己「焊」键盘:使用Python编写

项目地址:https://github.com/tmk/tmk_keyboard/blob/master/tmk_core/doc/keymap.md
2020年5月22日

为什么要学习单片机?如何开始上手学习单片机?

购仿真接口和实验板,在网上下载单片机开发软件(支持编程、虚拟仿真、实时仿真和C语言),在虚拟仿真完成后,将程序下载到单片机中实时仿真。对于个人学习单片机,具有上述(4)的条件已经是很好了。
2020年5月22日

嵌入式有什么值得学习的软硬件技术?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月22日

嵌入式软件测试的10条秘诀

内存崩溃是内存使用最严重的结果,主要原因有数组访问越界、写已经释放的内存、指针计算错误、访问堆栈地址越界等等。这种内存崩溃造成系统故障是随机的,而且很难查找,目前提供用于排查的工具也很少。
2020年5月21日

如何让STM32优雅地“说”hello world?

1);由于CPU的运行速度比串口快得多,此时串口还没有完成先前的字符'h'的发送任务,串口处于忙碌的状态,因此现在是无法正确打开串口发送中断的,因此字符'e'发送失败。后续的字符也是同样的情况。
2020年5月21日

嵌入式软件和硬件谁更重要?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月21日

你的c++团队还在禁用异常处理吗?

陈硕大神说的什么我就不贴出来了,他水平之高无需置疑,但他说的一些东西还是很有争议的,关于异常处理,引用吴咏炜老师的一句话:“陈硕当然是个技术大牛。不过,在编程语言这件事上,我更愿意信任
2020年5月20日

C语言十大经典排序算法(动态演示+代码,值得收藏)

以前也零零碎碎发过一些排序算法,但排版都不太好,又重新整理一次,排序算法是数据结构的重要部分,系统地学习很有必要。
2020年5月20日

嵌入式Linux驱动离不开的知识:深入解析Linux Platform_device

bus这个虚拟的总线模型。做过嵌入式开发的人应该都有体会,这类设备在嵌入式系统中非常多,所以在研究具体某类设备的驱动开发之前,有必要研究platform
2020年5月19日

C语言、嵌入式中几个非常实用的宏技巧

};显然,出现了语法错误。if之后的大括号之后不能加分号,这里的分号其实可以看做一条空语句,这个空语句会把if与else给分隔开来,导致else不能正确匹配到if,导致语法错误。
2020年5月19日

做嵌入式,如果爱就全心投入,否则就放弃!

可以他们自己觉得更加自信,甚至许多人还不怎么懂就去参加各种竞赛。当然也有一些竞赛称为了灰色产业链的最后一环。自己做代码和板卡卖给学生,还真赚钱。有人要证书,有人要金钱,何乐而不为的交换呢?
2020年5月19日

嵌入式编程应用:union 的精妙之用!

记录一个嵌入式软件技术爱好者的成长之路,专注于嵌入式软件开发,分享学习过程中的心得,记录项目开发中遇到的“坑”,主要涉及STM32,ucos,RT_Thread,Linux的相关知识。
2020年5月18日

C语言最全入门笔记

它先执行循环中的执行代码块,然后再判断while中表达式是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-while循环至少要执行一次循环语句。
2020年5月18日

嵌入式工程师出路之我见:就业,技术,行业...

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月18日

985硕士出身,嵌入式驱动开发工资能到多少?

链接:https://www.zhihu.com/question/34686343/answer/308464284
2020年5月17日

用ARM芯片开发的看过来!今天来总结下AMBA总线

之前接触过AMBA,以为只是ARM自家的私有的总线呢,后来得知,这是个相对通用的总线,所以来总结学习一下。
2020年5月16日

嵌入式LCD的接口类型详解

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月16日

绝对能检测你C语言基础水平的5个面试题

2.假定int为4字节,char为1字节,指针为8字节,小端存储。
2020年5月15日

学Linux驱动:应先了解总线驱动模型

当前驱动程序模型为描述总线和总线下可能出现的设备提供了一个通用的、统一的模型。统一总线模型包括一组所有总线都具有的公共属性和一组公共回调,如总线探测期间的设备发现、总线关闭、总线电源管理等。
2020年5月15日

C语言为何不会过时?你需要掌握多少种语言?

如果再有人对你说C语言已经过时了,最好自己思考一下,能求真最好,如果不能,至少要做到存疑。网友对于C语言这样评价1、航空、军工领域不是大众所能接触的;
2020年5月14日

对工作帮助极大!Linux 内存相关问题汇总

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月14日

用指针实现高低位倒序,疯了吧?

第一个方法比较笨,当我写完自己的代码后,看到有同学发了自己的代码,我赶紧就发了个红包,一个是为了鼓励大家多讨论问题,一个是为了赞扬这样的行为。
2020年5月13日

干掉过多的if…else:据说这项技能可以看出程序员的境界!

转自:博客园,作者:艾瑞克·邵,www.cnblogs.com/eric-shao/p/10115577.html
2020年5月13日

他24岁,4篇Nature在手,也会关心学不懂C语言怎么办

2018年论文地址:https://www.nature.com/articles/nature26154https://www.nature.com/articles/nature26160
2020年5月12日

C++ 基础知识!初学者必看!

代码中包含注释,这将提高源代码的可读性。所有的编程语言都允许某种形式的注释。
2020年5月12日

C语言最大难点揭秘:编程的祸根!

个字符。在任何常规实现中,“超过的”字符会覆盖内存中的其他数据。内存中数据分配的布局非常复杂并且难以再现,所以任何症状都不可能追溯到源代码级别的具体错误。这些错误通常会导致数百万美元的损失。▶
2020年5月12日

树莓派4可以不用SD卡启动?

bootconf.txt将配置文件进行拷贝,并且放到指定的目录。pieeprom.bin就是配置文件,然后导出成txt文件。该文件的作用与之前树莓派SD卡中的config.txt类似。
2020年5月11日

C++ 转 Python 这三年,我都经历了什么?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月11日

用树莓派纯手工打造车载车牌识别检测系统,家用车秒变智能车!

模型从摄像机处接收到一帧帧图像,然后在每个帧中找到车牌的边界框。这里不建议使用非常精确的预测边界框——边界框比实际检测对象大一些会更好。如果太挤,可能会影响到后续进程的性能;
2020年5月10日

使用AURIX TOM​模块生成交流电机的PWM驱动

_CTRL.B.MODE位字段必须设置为2(PWM模式),因为ATOM可以工作在四种不同的模式下,并且TGC寄存器(TOM全局控制)必须由AGC(ATOM全局控制)代替。以下是配置的代码示例:
2020年5月10日

各路大牛的C语言编程建议和技巧,看完感触颇深

1:不要断定程序会在什么地方耗费运行时间。瓶颈总是出现在令人意想不到的地方,直到证实瓶颈在哪,不要试图再次猜测并加快运行速度。
2020年5月9日

stm32几种低功耗模式的实现和差别

1、睡眠模式:在睡眠模式中,仅关闭了内核时钟,内核停止运行,但其片上外设,CM4核心的外设全都还照常运行,在软件上表现为不再执行新的代码。这个状态会保留睡眠前的内核寄存器、内存的数据。唤醒后
2020年5月9日

使用 Python 来开发 STM32F411 !

和串口下载程序一样,使用DFU烧录固件前,也要先把STM32切换为系统存储器启动模式:即下载模式。上电之前要先设置BOOT0=1,BOOT1(PB2)=0,然后烧录MicroPython固件。
2020年5月8日

给大神鼓掌:400行Python代码实现文语处理助手!(NXP资深系统工程师精品)

End控制,即播放中途实现了暂停和恢复,因此代码要稍微复杂一些。此处的重点是playAudioCallback()函数里的else分支,如果在暂停状态下,必须还是要给PyAudio返回一段空数据:
2020年5月8日

C语言验证大小端的几个方法

1) { printf("Little-endian\n"); } else { printf("Big-endian\n"); }
2020年5月7日

嵌入式驱动程序设计的5个套路

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月7日
2020年5月7日

TIOBE 5月 C 语言回归王座,听听嵌入式er怎么看待语言这件事儿

4)可以看到一些语言都趋于非常大的波动,个人觉得编程语言跟我们的软件是一样的,都是为了满足人类社会需求的产物,可以说目前人类社会发展的每个阶段都会对所有的编程语言进行选择,"适者生存、不适者淘汰"。
2020年5月6日

FPGA 电源管理不简单,这几点要素要牢记

完成对电源管理参考设计的修改之后,它看起来将与最初的参考设计不同。可能有人会辩称,最好的解决方案是根本不用电源管理参考设计,而是直接将所需的电压轨和电流输入到电源管理选型与优化工具中,例如
2020年5月6日

硬货!拉普拉斯算子的FPGA实现方法

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月6日

最全Linux面试题(2020最新版)

GNU项目的重要性是什么?这种所谓的自由软件运动具有多种优势,例如可以自由地运行程序以及根据你的需要自由学习和修改程序。它还允许你将软件副本重新分发给其他人,以及自由改进软件并将其发布给公众。
2020年5月5日

网传互联网公司加班表

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年5月5日

基于STM32CUBE的USB键盘例程.docx

作为一个技术人员,我们要学会透过现象看本质。虽然表明上是鼠标与键盘二合一,但实际上是以键盘功能为主,而鼠标以一个附属功能加入到了键盘里。所以,这里虽然选的是键盘,但最终的效果是键盘鼠标功能都有。
2020年5月4日

详论单片机固件模块化架构设计(精华)

做工程开发,一定是需求驱动的。第一件事需要对需求有比较清晰的认知,然后才能设计一个比较合理的框架。我们需要实现什么?大致总体设计过程策略我的基本采用如下图所示思路(我比较喜欢绘图,图会让人比较直观)
2020年5月4日

知名半导体MCU大厂软件开发C代码规范

备注:切记不要用匈牙利命名法,因为其会导致变量名难于阅读,且类型前缀常常会与变量真正类型不同步,微软曾是此命名法的拥趸,但其已意识到此命名法的缺陷,目前正在逐渐脱离此方法。
2020年5月1日

C语言写个贪吃蛇游戏

贪吃蛇是个非常经典的游戏,用C语言来实现也是一个好玩的事情。这个游戏我写完后放在知乎,竟然点赞的人数超级多。我觉得大家喜欢,一个方面是因为写得简单,大家都能看得懂,一个可扩展性还是非常强的。
2020年5月1日

嵌入式工程师,别怪"浮点数"太坑!(C语言版本)

对于语法等知识一般都是建立在一定的规范之上的,不然不利于技术的兼容统一发展,但是在不同的领域由于有着不同的需求,可能遵循的规范有所差异,对于浮点数的规范目前大部分系统都采用的是IEEE
2020年5月1日

长见识了:STM8、STM32可以超频吗?

我是亲自经历过的,之前公司产品为了提高效率,将主频超过一定值,还是能正常运行,而且投产了的。但是,应用环境相对比较好,而且产品有电源控制(接断电复位)。
2020年4月30日

STM32:从菜鸟到牛人就是如此简单!

2、如果是无上拉电阻,IO默认是高电平;需要读取IO的值,可以使用带上拉输入_IPU和浮空输入_IN_FLOATING和开漏输出_OUT_OD;
2020年4月30日

经典:C语言在嵌入式系统编程时的注意事项

只有局部自动变量和形参才可以定义为寄存器变量。因为寄存器变量属于动态存储方式,凡需要采用静态存储方式的量都不能定义为寄存器变量,包括:模块间全局变量、模块内全局变量、局部static变量;(2)
2020年4月29日

总结几个C语言中的“坑”

作者:Jung_zhang链接:https://www.cnblogs.com/jungzhang/p/5547348.html
2020年4月28日

工程师:这道题80%初学者都没做对!你确定搞懂结构体内存对齐了?

根据第(2)条规则,显然b的地址不能从0x0028ff31开始,则编译器会在b成员的前一个成员(a成员)后边补1个空白字节,即b的的地址为从0x0028ff32,符合规则(2)。
2020年4月28日

我惊呆了!这道C编程面试题居然有如此多的解法!

在第一行的基础上,将tmp中相邻的两组中1的个数累加,由于累加到过程中有些组被重复加了一次,所以要舍弃这些多加的部分,这就是&030707070707的作用,又由于最终结果可能大于63,所以要取模。
2020年4月27日

这位小姐姐用动图展示了10个Git命令,看完过目不忘!

Hallie来自:机器之心链接:https://dev.to/lydiahallie/cs-visualized-useful-git-commands-37p1
2020年4月27日

真实案例:再论做单片机两三年后为什么转学嵌入式

你这个想法也许没错,但只是今天没错,明天、后天,假以时日之后可能错的非常离谱。这就是为什么多年前的同学朋友,到了35岁以后差距越来越大,最后甚至一个人成了亿万富翁大企业家,另一个快要饭了。
2020年4月27日

FPGA硬核和软核处理器的区别

FPGA技术,是在芯片设计之初,就在内部的硬件电路上添加了硬核处理器,是纯硬件实现的,不会消耗FPGA的逻辑资源,硬核处理器和FPGA逻辑在一定程度上是相互独立的,简单的说,就是SoC
2020年4月26日

谭浩强老爷子的《C程序设计》是坑?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月26日

华为、阿里、小米、腾讯……一线互联网大厂的薪资和职级一览!

对于企业和HR来说,大厂的职级规则也是整个行业的标杆,从中小微企业到大型企业,大家都希望能在其中找到可以参考和学习的地方。
2020年4月24日

神奇!5分钟,使用STM32CubeMX把你的单片机变成优盘

首先,通过STM32CubeMX软件配置单片机外设。型号依然是STM32F013C8T6,GPIO、RCC、SYS、Connectivity部分和之前的USB鼠标设置一样,参照前面的部分。
2020年4月24日

计算机技能需求新排名:C语言仅排第 8,第 1 名你想不到!

https://www.hiringlab.org/2019/11/19/today's-top-tech-skills/
2020年4月23日

单片机与爱情

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月22日

单片机中各种周期的关系与定时器原理

两个高级控制定时器(TIM1和TIM8)可以被看成是分配到6个通的三三相PWM发生器,它具有带死区插入的互补PWM输出,还可以被当成完整的通用定时器。四个独立的通道可以用于:
2020年4月22日
2020年4月22日

霸榜 GitHub:去你丫的算法!牛X的人都有脾气(实用项目推荐)

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月21日

重磅!一次登录,终身免费:GitHub宣布向所有人免费开放所有核心功能

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月21日

工业项目,用MCU还是PLC?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月20日

接上电就工作的单片机

对于手边的一盒STC单片机,测试一下它们使用相同的ISP方案在下载过程中是否都可以按照相同的方式完成程序的下载。同时对它们建立各自的元器件库,以便于后期的应用。
2020年4月20日

再谈指针:大佬给你拨开 C指针 的云雾

&a[0];指针的运算当指针指向数组元素的时候,可以对指针变量进行「加减」运算,+n表示指向p指针所指向的元素的「下n个元素」,-n表示指向p指针所指向的元素的「上n个元素」。并不是将地址加1。
2020年4月20日

绝对有趣!利用C语言编写打印彩色字符,还能闪烁!

序列屏幕控制码,其实就是一些特殊的字符,将这些字符加入到printf打印的内容中,即可轻松实现在终端软件中以各种颜色、各种背景色显示内容,还可以高亮、加粗、闪烁,非常好玩!
2020年4月19日

C语言之结构体就这样被攻克了!(绝对值得收藏的文章)

你会发现,这样的处理方法,经常需要移动大量的数据,对于程序的执行效率来说,是一个不利因素。那么链表,就无所谓。反正在内存中,链表的存储毫无逻辑,我们只需要改变指针的值就可以实现链表的中间插入。
2020年4月19日

深度文章,高手必看:C编程表驱动法编程实践(精华帖,建议收藏并实践)

QueueSize向上取整,最大为7。**********************************************************/INT32U
2020年4月18日

关于ARM的22个常用概念!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月18日

为啥很难创造出新的处理器了?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月18日

各大UI发力,Qt与IAR合作,TouchGFX发布新手教程

适用于MCU的Qt提供了一个全面的UI工具箱,该工具箱利用了Qt流行的QML(Qt建模语言)技术和设计人员-开发人员工具,以快速,迭代的方式在微控制器上提供类似于智能手机的图形用户界面。
2020年4月17日

国内最良心的Linux!深度操作系统 20 BETA 发布

欢迎您关注我们的微博、微信(深度操作系统)、Twitter、Facebook、Github以第一时间获取最新动态和源代码,同时也欢迎您前往我们的论坛,与我们交流和分享您的快乐。
2020年4月17日

简单粗暴!最全C语言笔记,转给身边需要的人吧(多图预警)

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月17日

在华为保持“少年”的秘方:为何他还仍有一头茂密的黑发?

我内心也忍不住怀念从前有导师、有前辈同事带着,引领着方向,觉得干什么项目,心里都“妥妥的”。而现在,什么都得靠自己。代码就在那里,自己不会优化自己,得靠我们把它好好阅读、梳理,再对它进行改造,重构。
2020年4月16日

百万工程师都在使用的单片机开发产品流程

Board)印刷电路板图,然后将PCB图交给相关厂商生产电路板。拿到电路板后,为便于更换器件和修改电路,可首先在电路板上焊接所需芯片插座,并利用编程器将程序写入单片机。
2020年4月16日

华为最有意思的岗位是什么?看完笑喷!

:*本文来自心声社区网友@菊厂真心话,转载请注明出处*
2020年4月16日

常见的嵌入式处理器对比分析!

ARM微处理器是目前应用领域非常广的处理器,到目前为止,ARM微处理器及技术的应用几乎已经遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,深入到各个领域。
2020年4月14日

C程序里面嵌点"机器码"玩一玩"(小知识揭露大道理)

我们把生成的exe文件,进行反汇编获得获得对应的机器码(注意:exe文件不仅仅全是程序的运行的机器码还包括一些程序信息,大家可以查阅相关资料)。
2020年4月13日

单片机开发之节省内存大法(C语言版本)

union-共联体,是C语言常用得关键字。从字面上的意思就是共同联合在一起的意思,union所有的成员共同维护一段能够内存空间,其内存的大小取决于所有成员中占用空间最大的成员。
2020年4月13日

嵌入式必须会的一些硬件面试题,你敢来试试吗???

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月13日

为什么嵌入式工程师会对8位MCU有误解?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月12日

FPGA开发之GPIO配置,以ZYNQ为例

我们发现,之前引出的EMIO叫做GPIO_0,到了顶层他的名字gpio_0_tri_io,而不是GPIO_0。所以分配引脚的时候就要注意了名字别错了,创建一个约束文件,分配引脚如下:
2020年4月11日

工程师干货:嵌入式杂谈之文件系统

在fstab下添加会在开机以后自动挂载udev工具是管理热插拔的工具,利用了sysfs提供的信息来实现所有devfs的功能,通过检测设备的插入与拔出,动态的在/dev目录下创建与删除设备文件。
2020年4月10日

十个你可能不曾用过的 Linux 命令

熟悉Unix的人都应该知道这个是一个创建有名管道的系统调用或命令。平时,我们在命令行上使用竖线“|”把命令串起来是使用无命管道。而我们使用mkfifo则使用的是有名管道。下面是示例:
2020年4月10日

嵌入式工程师,那些职场老油条唬人的话,你听过几个?

做研发的先当几年操作工才能做出好产品,不能一上来直接研发
2020年4月10日

概述11种基于ARM的嵌入式操作系统

TinyOS是一个开源的嵌入式操作系统,它是由加州大学的伯利克分校开发出来的,主要应用于无线传感器网络方面。程序采用的是模块化设计,所以它的程序核心往往都很小,一般来说核心代码和数据大概在400
2020年4月9日

ARM与嵌入式Linux的入门建议

不过先声明一下,本人并没有使用ADS对ARM9进行编程,我是学完ARM7后直接就使用ARM9学linux系统的,因此涉及使用ADS对arm9进行编程的问题我很难回答^_^,自己去研究研究吧。
2020年4月9日

嵌入式编程中的复杂指针的使用

((void(*)())0x80000)();这里就是说0x80000处的地址是函数类型,并且没有返回值。当我们的kernel地址为0x80000时程序跳转过去,不再返回。这就是一个比较经典的例子。
2020年4月9日

嵌入式Linux开发必懂:基于ARM64的init用户进程究竟如何启动?

必须在所有CPU上以定时器频率设置CNTFRQ,并且必须以一致的值设置CNTVOFF。如果在EL1处进入内核,则CNTHCTL_EL2必须在可用时设置EL1PCTEN(位0)。
2020年4月8日

单片机EMC的检测工作,一文教你搞定!

一种常见的现象是不把滤波电容的一侧看成直接与一个分离的阻抗相连,而看成与传输线相连。典型的情况是,当一条输入输出线的长度达到或超过1/4波长时,该传输线变“长”。实际可以用下式近似表示这种变化:
2020年4月8日

做单片机几年,要不要转嵌入式?

如果你稍微虚点,那就迂回战略。先攻占单片机这个山头,用一两年或者两三年站住了站稳了拿到10k左右的行业中高水平了,感觉没有太多提升了。然后迅速自主的去学习嵌入式linux,继续下一阶段的爬升。
2020年4月8日

为什么买了开发板只能吃灰,还是学不会嵌入式?

譬如中国古代的四书五经科举考试等就是一套体系化课程。不管你认可不认可他,他确实有他的体系,所以古代君子要学六艺(礼、乐、射、御、书、数),这就是他们的考试科目,当然也会有相应的学习体系,有老师等。
2020年4月7日

48岁的C语言,你知道它背后的历史吗?

C语言作为一个人尽皆知的语言,甚至没有学过编程语言的人也知道它的大名。经历沧桑岁月的它,已经陪伴我们走过了48个年头。回望当年,C语言还在襁褓之中……
2020年4月7日

嵌入式C语言执行效率如何保证,看这一文就够了!

些CPU时间。而宏不存在这个问题。宏仅仅作为预先写好的代码嵌入到当前程序,不会产生函数调用,所以仅仅是占用了空间,在频繁调用同一个宏的时候,该现象尤其突出。举例如下:方法A:
2020年4月7日

超详细解析!Linux进程间通信方式和原理

V消息队列。有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。消息队列是随内核持续的。
2020年4月3日

网传2020校招传统大厂白菜价

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月3日

如何调整Linux内核启动中的驱动初始化顺序?

但是,读取芯片ID的函数,在as352x_afe_init模块中,所以要先初始化as352x_afe_init。
2020年4月3日

朱有鹏:做嵌入式的你必须知道的国产CPU之路

所以你现在明白了,为什么RISC-V对国产芯片来说是个好机会。我们做国产芯片第一阶段当然是为了不被别人卡脖子,但是这个仅仅是第一阶段。第二阶段当然是要往出卖去赚钱啊,然而古语有云:己所不欲勿施于人。
2020年4月2日

详细解析单片机 PMW 控制基本原理

0;}}}呼吸灯效果做出来后,利用这个基本原理,其它各种效果的灯光闪烁都应该可以做出来,大家看到的
2020年4月2日

为什么Linux CFS调度器没有带来惊艳的碾压效果?

任何领域,革命性的碾压式推陈出新并不是没有,但是概率极低,人们普遍的狂妄在于,总是认为自己所置身的环境正在发生着某种碾压式的变革,但其实,最终大概率不过是一场平庸。
2020年4月2日

单片机开发设计之"十层功力"!你在第几层?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年4月1日

单片机就那点资源,为啥还要用RTOS?

1:if(temp==STARTBYTE2){Sum=STARTBYTE1+STARTBYTE2;i=0;Flag=2;break;}if(temp==STARTBYTE1)
2020年4月1日

为什么我们需要RTOS?带你透彻理解RTOS

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月30日

从架构到 RTOS 详解 DSP 和 MCU 的区别和联系

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月30日

嵌入式编程必备之多方法测定程序运行时间(经验篇)

该方法其实和示波器法类似,都属于外部测量方法,不过该方法的好处是能够弥补任务运行时间变化较大导致示波器测量显示难以辨识最长时间的问题。
2020年3月29日

一文教你定位单片机"死机"(实用调试技巧)

硬件方面的还有很多,比说说芯片上数字地和模拟地的处理等,这里只是为大家展示一下大伙经常遇到的现象和相应的解决办法。具体的项目实战过程中可以使用排除法,或者是采集相应的波形进行判断和处理。
2020年3月29日

厉害了!用6个芯片打造复古经典计算机

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月28日

C语言 原来是这样调用硬件的

根据1反推,可以明白如果要开放给C来操作某个硬件,最直接的方案就是设计硬件的时候预先分配好一些固定的地址的用途,然后实际项目中往这些固定地址写入合法的数据。这样就可以通过类似uint32_t
2020年3月28日

告诉你用 RTOS 做嵌入式开发的优势在哪?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月28日

大神总结:学习51单片机的感悟

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月27日

几组实用FPGA原理设计图

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月27日

衣带渐宽终不悔!嵌入式大牛10年调Bug经验总结

(b)提高软件知识和技术只是问题的表面,本质是要提高自己认识问题、分析问题、解决问题的思想高度。软件专业知识的很多方法和原理,可以很容易地延伸、应用到生活的其它方面。
2020年3月27日

C语言指针用得好犹如神助!这些使用技巧值得收藏

此时的指针p是没有指向任何有效的空间,看清楚是有效空间,并非是没有指向内存空间,定义的时候p就有值的了,是一个随机值,指向一个不明的内存空间,但是不合法
2020年3月26日

C语言中,全局变量滥用的后果竟如此严重?

main(void){printf("num1=%d,num2=%d\n",num1,num2);int
2020年3月26日

单片机程序总跑飞?小技巧帮你忙

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月26日

RGB 接口和 MCU 接口有什么不一样?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月25日

Linux是否能在 8 位 MCU 上运行?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月25日

单片机常用程序框架之分时轮询(详注代码)

__TASKMANAGE__/************************************************************
2020年3月24日

【典藏】深度剖析单片机程序的运行(C程序版)

好了,有了前面的准备知识,这里我就可以放开讲解单片机的运行了,如果简单说单片机的运行,那么可以说就是CPU的运行,取指令-->译码-->执行指令;那么这里我就以提问的方式为大家更加详细的说明:
2020年3月24日

​​【自制分享】分享一块自制STM32F103RETX开发板!!!功能实用

其设计其实是比TOLIN核心板要早些时候的~,当时想用这块板子做的是一个复古游戏机,有联网功能。但是后来其在我调试一些简单的模块中起到很大的作用,所以就一直用它先完成一些驱动文件编写,比较方便。
2020年3月23日

求职要做足功课!看看嵌入式linux牛人是如何做的

Linux驱动,做安卓方向的,工控类产品,车载、军工类产品都能用上。移动手机端就不需要了,都是安卓方向的。驱动移植比较多,写会比较少,驱动这些工作会有,但是不是很多,深圳会多些。
2020年3月22日

搞驱动开发的比一般开发的薪资更高?由浅入深了解驱动开发

__initdata中新增&smdk_led5,这样系统在启动时就会由smdk2440_machine_init调用platform_add_devices(smdk2440_devices,
2020年3月22日

看漫画,学Linux内核!看完明白小企鹅们在干啥了吧?

画了一些非常有趣的关于编程语言、Web、云计算、Linux
2020年3月21日

嵌入式操作系统 FreeRTOS 的原理与实现

:网络《单片机及嵌入式应用》作者:中国海洋大学,刘滨、王琦、刘丽丽
2020年3月20日

对于 51 单片机的四大误区!

通俗易懂的C语言,方便移植的C语言与硬件平台相对应的联合,就能完成硬件的操作。有了简单、方便的方式,我们为什么还要考虑繁琐,复杂的汇编语言与寄存器操作呢?
2020年3月20日

若想成为一名Linux下编程高手,必须能对各种系统调用有透彻的了解

即使除去上面的原因,在平常的编程中你也会发现,在很多情况下,系统调用是实现你的想法的简洁有效的途径,所以有可能的话应该尽量多掌握一些系统调用,这会对你的程序设计过程带来意想不到的帮助。
2020年3月19日

单片机的状态机框架!

注意ds18b20的时序性比较严格,网上说不能被打断的,但是后来移植到freertos中,也是可以的,温度采样还算稳定,但是考虑到后续程序比较大,因此还是裸机了,状态机的思路基本能解决。
2020年3月18日

太巧妙了!适合 MCU 用的 C语言 快速互转 HEX (16进制) 方法!

{'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};然后一个个从表里取出来,拼到对应位置即可:void
2020年3月18日

值得收藏的 C语言 指针讲解文章

:https://zlc.im/language/c/c_and_pointer.md#%E6%8C%87%E9%92%88
2020年3月17日

8位微控制器(MCU)的隐形成本

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月17日

嵌入式架构到底有多重要?看完惊呆了

如果没有好的架构,应用层中穿插着硬件驱动层的代码,看着会是一片混乱,逻辑不清,代码维护起来会很困难。
2020年3月17日

嵌入式工程师结合经历聊硬件工程师和软件工程师哪个更有前途?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月16日

FreeRTOS 定时器组(基础知识必掌握)

表示此函数向消息队列发送消息成功。定时器任务实际执行消息队列发来的命令依赖于定时器任务的优先级,如果定时器任务是高优先级会及时得到执行,如果是低优先级,就要等待其余高优先级任务释放
2020年3月16日

嵌入式必会!C语言 最常用的贪心算法就这么被攻略了

1.建立数学模型来描述问题;2.把求解的问题分成若干个子问题;3.对每一子问题求解,得到子问题的局部最优解;4.把子问题的局部最优解合成原来问题的一个解。
2020年3月16日

嵌入式到底是不是个大坑?6个对话让你重新认清真相!

可以他们自己觉得更加自信,甚至许多人还不怎么懂就去参加各种竞赛。当然也有一些竞赛称为了灰色产业链的最后一环。自己做代码和板卡卖给学生,还真赚钱。有人要证书,有人要金钱,何乐而不为的交换呢?
2020年3月15日

指针,很难吗?| 工程师给你详细解释!

这篇笔记修修改改不知道多少次,原以为能比较快就能写好的,但事实上花了好几天才写完,因为鱼鹰要尽可能的将故事贴合实际的
2020年3月15日

STM32CubeMX + STM32F1系列开发时遇到的四个问题及解决方案分享

No-Debug,不会配置下载器所使用到的SWDIO引脚和SWCLK引脚:结果就是单片机里之前的程序是正常的,所以这个工程编译出的程序可以成功下载进去,但是一旦下载进去之后,就凉了……
2020年3月14日

电子工程师也有“鄙视链”!软件硬件无一幸免!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月14日

这篇文章把今日头条和抖音的算法扒的底裤都不剩!

2014年,批量处理任务几百万用户标签更新的Hadoop任务,当天完成已经开始勉强。集群计算资源紧张很容易影响其它工作,集中写入分布式存储系统的压力也开始增大,并且用户兴趣标签更新延迟越来越高。
2020年3月13日

为什么在中国电子工程师不如搞软件的?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月13日

搞不清楚PowerPC、x86和ARM,别说你懂嵌入式!

在嵌入式领域,存在着三种处理器通用的架构,PowerPC、X86、ARM,本文将对这三种架构进行对比分析。
2020年3月12日

彻底解决嵌入式学习和职业发展的那些困惑!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月12日

工程师精华帖:C 语言表驱动法编程实践

QueueSize向上取整,最大为7。**********************************************************/INT32U
2020年3月12日

干货 | STM32单片机按键消抖和FPGA按键消抖大全

简单定义一个按键状态的结构体,用于管理每个按键的状态。顺便再定义一个长短按的识别阈值,用于区分按键的长短按。if(key_state.private_state==Release)
2020年3月11日

老司机们都是怎么学习STM32的?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月11日

ST官方教你:从 STM32 转型到 MPU 开发者

IP,可为人机界面(HMI)应用程序创建流畅、复杂的高品质图形环境系统。采用我们的面向用户界面设计开发的合作伙伴方案,可以令开发过程简单明了、工程师获得有价值的回报,同时也满足了最终用户的需求。
2020年3月11日

我把单片机玩死了(完整版,两万字工程师实录)

;开键盘中断2、小公司锻炼人,虽然待遇一般,但是接触的东西多。一旦你换到一个新的环境,你会发现你比别人已经优秀太多了。3、换工作的时候一定要谨慎,尽量找好下家再辞职,不然的话自己很被动。
2020年3月10日

为什么说嵌入式开发比单片机要难很多?

单片机和嵌入式,其实没有什么标准的定义来区分他们,对于进行过单片机和嵌入式开发的开发者来说,都有他们自己的定义,接下来,就谈谈本人对这两个概念的理解和感悟。
2020年3月10日

学习STM32的一些经验分享

不用全都学,不然等你学完后面基本就会忘记前面。学一些基本的、通用的、常用的外设:GPIO输入输出(点灯、按键)、EXIT、TIMER、UART、I2C、SPI、ADC、DAC等,当然还有其它的。
2020年3月10日

软硬件工程师都要懂的概念:FPGA之异构计算

clock,reset,req_0,req_1;//=============Output
2020年3月9日

FPGA开发基本流程

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月9日

工程师干货:优化嵌入式Linux的启动时间的秘密

SMP初始化很慢,即使您只有一个核心CPU,通常也会在默认配置中启用它(默认配置应支持多个系统)。因此,如果只有一个CPU内核,请确保将其禁用。BeagleBone
2020年3月9日

史海沉钩——FPGA三国志

Altera的EPM7128E,不过Altera已经做好了准备,因为,Altera毕竟是pld的发明者。而且也是最早采用Windows平台的开发工具。在美国市场上占有先机。他不会轻易放弃这样一个市场
2020年3月8日

总结几种常用的单片机加密方法

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月8日

嵌入式Linux OS启动流程,了解一下!

用户应用程序。特定于用户的应用程序。有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。常用的嵌入式GUI有:MicroWindows和MiniGUI等。
2020年3月7日

良心整理!单片机应用中11项易于疏忽的小常识

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月6日

怎样混好嵌入式/MCU/ARM/DSP这一行?

网站专门提供了有关嵌入式的说明(https://www.rust-lang.org/what/embedded),可以帮助你了解嵌入式设备上的
2020年3月6日

嵌入式软件学习路线图!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月5日

从单片机工程师的角度看嵌入式 Linux

学单片机的朋友有些已经有一些Linux基础了,但也不乏有些朋友没用过Linux,甚至有些初学的读者朋友没听说过Linux,为了照顾这些朋友,这里简单地认识一下Linux:
2020年3月5日

实战解析:嵌入式系统的加密IP核可以这样来设计!

密钥密码体制分为流密码和分组密码两种。分组密码是信息与网络安全中实现数据加密、数字签名、认证及密钥管理的核心体制,具有速度快、易于标准化和便于软硬件实现等特点。
2020年3月4日

单片机点阵 LED 设计显示屏,超详细!

LED点亮,而我们需要的是一颗点亮的“心”,所以我们要选“修改图像”菜单里的“黑白反显图像”这个选项,再点击“基本操作”菜单里边的“保存图像”可以把我们设计好的图片进行保存,如图7所示。图7
2020年3月4日

嵌入式驱动方面,这篇文章讲绝了!

在用rmmod卸载模块时,cleanup_module函数被调用,它释放字符设备test在系统字符设备表中占有的表项。一个极其简单的字符设备可以说写好了,文件名就叫test.c吧。下面编译
2020年3月4日

嵌入式软件面试那点事

FIFO队列的特点就是先进先出,为什么这个问题反着来?既然你都是顺序处理了,为啥你还要插队?但是实际上确实可能出现插队的情况,那该怎么办?这个问题如果是以前的自己可能回答不出来,但是当鱼鹰把uCOS
2020年3月3日

嵌入式软件工程师从初级迈入合格,可以这么来做!

作。学习、掌握嵌入式系统软件产品开发理论知识、软件开发方法,并在实践中理解、应用软件产品的分析、设计、实现思想来解决具体的嵌入式系统软件产品研发问题,才是真正的嵌入式系统软件工程师的必要素养。
2020年3月3日

最强干货!延时功能进化论(适用于单片机和任何延时平台)

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月3日

关于嵌入式 Qt 最全最棒的教程(万字干货)

#endif第13至15行声明需要重定义的事件处理函数。具体代码实现在coordinate_label.cpp文件中,源码如程序清单13所示。程序清单13
2020年3月2日

嵌入式LCD的接口类型详解

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月2日

回想一下你操作正确吗?FPGA复位的正确打开方式

...end同步复位的好处,不言而喻,有利于时序分析,降低亚稳态的几率,避免毛刺。同步信号的缺点:复位信号有效电平持续时间必须大于时钟周期,不然时钟可能采不到复位
2020年3月2日

嵌入式 Linux QT 编程入门

hello_qt.pro文件描述整个工程所包含的源码及相应的资源文件,qmake是Qt中用来管理工程的项目工具。执行qmake命令,将根据上一步的pro文件,生成makefile文件。
2020年3月1日

嵌入式开发的必备知识点

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年3月1日

嵌入式 Linux 的一切,看这一篇就够了!

k8等等,读者可以根据自己的情况进行指定。-mfpmath该选项用于指定浮点运算单元的类型。包括:387使用标准的数学协处理器:sse使用SSE指令集提供的标量浮点运算。在Pentium3
2020年3月1日

单片机的排阻有啥用?掰开揉碎给你讲清楚

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月29日

大数据时代,嵌入式工程师必须知道的八大加密算法

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月29日

想搞嵌入式,但这行究竟是啥样?看大佬带你解读!

早期都是使用一些流程图来阐释概念,现在看来这些稍有点过时了。但嵌入式工程师们都至少应该掌握基础的制作块图、状态机图、图片、云形方形等手段的能力来辅助阐述一些概念,这在讲述一些运行原理的时候尤其有用。
2020年2月29日

你有没有想过,C语言 main 函数到底为啥这么写?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月28日

凌晨三点,各类程序员都在干吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月28日

可以大体看出你C语言水平的十道题

strncpy()函数。但一些编译器会在内部检测栈溢出的可能,所以这样往栈里存储变量很难出现栈溢出。比如gcc中就要使用编译命令‘-fno-stack-protector’来实现上述方案。
2020年2月28日

VSCode和SourceInsight,到底哪个看源码爽?

对于它的文件选择加入功能,其实我是不太喜欢的,这么庞大的源码工程,既然我知道哪些文件有用,哪些文件没用,那我还看啥呢?所以对初学者不太友好。
2020年2月27日

太生动形象了!一个故事讲完CPU的工作原理

“不不不!你在掰手指的时候有没有发现,每多一根指头,能表示的数就会多出来一大堆,我觉得只要加那么十几个就够了!1根指头能表示2个数(0,1),2根指头四个数(0,1,2,3),3根8个...”
2020年2月27日

C 语言会比 C++ 快?

std::sort在调试中非常慢)此外在发布版本的收效上也同样令人兴奋。从这张图表的结果中观察不出来排序算法变得多么的快,与其他工作相比,它几乎完全从配置文件中消失,然而整个算法“仅”运行速度快了
2020年2月27日

网飞日本招募软件工程师,月薪900万日元,惊呆日本人

具体可以参考《从事嵌入式行业年薪有多少,你和高薪究竟差了哪些东西?》这篇文章。
2020年2月26日

程序员写代码的日常

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月26日

众说纷纭的 C 语言回调函数到底是什么鬼?这里有最好的解答!

眼尖的朋友可能发现了,前面的例子里面回调函数是没有参数的,那么我们能不能回调那些带参数的函数呢?答案是肯定的。那么怎么调用呢?我们稍微修改一下上面的例子就可以了:
2020年2月26日

9年FPGA工作经验,转行了,苦海无涯……

我很少说话,因为怕被人鄙视。工作了9年的fpga,总要总结……
2020年2月25日

用 50 种编程语言写“Hello,World!”程序

的衍生版本。它是一种可编译的通用命令式编程语言,特别适用于数值和科学计算。Fortran
2020年2月25日

嵌入式新手必会的UBOOT的几个核心问题

系统或者我们自己的程序在运行时可以通过读取环境变量来指导程序的运行。这样设计的好处就是灵活,譬如我们要让一个程序更改运行方法,不用去重新修改程序代码再重新编译运行,而只要修改相应的环境变量就可以了。
2020年2月25日

一个硬件工程师的叛逆传奇 | 他发明了线性运放,为半导体业带来百亿美元的商业成功!

鲍勃很喜欢喝酒。有很多关于鲍勃如果得不到一杯苏格兰威士忌或葡萄酒,就拒绝发表演讲的故事。但与一天中的这一段疯狂的时间相比,如果你看到他的工作环境,你就会想到我们印象中的鲍勃可能并没有那么疯狂。
2020年2月24日

搞嵌入式应用层开发要学习什么?看这里

精通嵌入式Linux下的程序设计,精通嵌入式Linux开发环境,强化对Linux应用开发的理解和编码调试的能力,包括系统编程、文件I/O、多进程和多线程、网络编程、GUI图形界面编程、数据库。
2020年2月23日

Linux内核中makefile有什么作用?深入解析makefile工作过程和原理

VERSION=2,PATCHLEVEL=4,SUBLEVEL=18,EXATAVERSION=-rmk7,它们共同构成内核的发行版本KERNELRELEASE:2.4.18-rmk7
2020年2月23日

I2C和SPI总线,嵌入式工程师爱用哪个?

基于IIC总线的物理结构,总线上的START和STOP信号必定是唯一的。另外,IIC总线标准规定SDA线的数据转换必须在SCL线的低电平期,在SCL线的高电平期,SDA线的上数据是稳定的。
2020年2月22日

资深码农谈:嵌入式C语言可靠性设计之我见

+=与=+、-=与=-也是容易写混的。复合赋值运算符(+=、*=等等)虽然可以使表达式更加简洁并有可能产生更高效的机器代码,但某些复合赋值运算符也会给程序带来隐含Bug,如下所示代码:
2020年2月22日

嵌入式系统语言常见算法解析,这12条准则一定要记住

嵌入式系统主要由嵌入式处理器、外围硬件设备、嵌入式操作系统以及特定的应用程序等四部分组成,是集软硬件于一体的可独立工作的“器件”;用于实现对其它设备的控制、监视或管理等功能。
2020年2月21日

论嵌入式程序员的编程修养!

什么是好的程序员?是不是懂得很多技术细节?还是懂底层编程?还是编程速度比较快?我觉得都不是。对于一些技术细节来说和底层的技术,只要看帮助,查资料就能找到,对于速度快,只要编得多也就熟能生巧了。
2020年2月21日

学好嵌入式开发有两个诀窍:勤奋刻苦+不要脸

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月20日

嵌入式软件工程师必须会的面试题

在同步文件IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行,而异步文件IO中,
2020年2月20日

怎样写出高效的嵌入式C程序

语言编写的第二招--采用数学方法来解决问题。数学是计算机之母,没有数学的依据和基础,就没有计算机的发展,所以在编写程序的时候,采用一些数学方法会对程序的执行效率有数量级的提高。
2020年2月20日

史上最全Linux常用命令全称及讲解

注意:默认状态下,如果要创建的目录已经存在,则提示已存在,而不会继续创建目录。所以在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。mkdir命令还可以同时创建多个目录,是不是很强大呢?
2020年2月19日

FPGA技术怎么就这么牛?

https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/Catapult_ISCA_2014.pdf
2020年2月19日

C语言实用讲解:什么是动态链接与静态链接?

从这两种方法中我们可以很清楚地知道两种方式的特点。第一种方式的优点就是我们在复习的时候就很方便,不用翻阅其它书籍了,但是缺点也很明显,就是占用笔记本的空间很多,这种方法很快就把我们的笔记本给写满了。
2020年2月18日

只有程序员看懂的图,笑出腹肌!

十年生死两茫茫,写程序,到天亮。千行代码,Bug何处藏。纵使上线又怎样,朝令改,夕断肠。领导每天新想法,天天改,日日忙。相顾无言,惟有泪千行。每晚灯火阑珊处,程序员,又加班,工作狂~
2020年2月18日

还在纠结C语言中的动态库和静态库,比较一下二者有何优缺点

一般应用程序的库文件不与系统库文件放在同一个目录下,一般把应用程序的共享库文件放在/usr/local/lib下,新建一个属于自己的目录apue,然后把刚才libapue.so复制过去就行了。
2020年2月18日

Linus的黑暗历史:Linux内核架构被知名教授评价一文不名!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月17日

工程师总结:单片机C语言编程心得

nclude,则定义符号_KEY_H_/////////////////////////////////////////////////////////////////char
2020年2月17日

技术变迁下,嵌入式er该怎么进行职业规划,难点在哪?

按照这个发展潮流和趋势,火哥可以预言,未来的对嵌入式工程师的技能要求将会弱化硬件技能,在有扎实的操作系统基本功前提下,以业务导向的应用编程为核心,有云端服务器到嵌入式终端的端到端垂直开发能力。
2020年2月16日

入坑嵌入式开发多年!一位资深工程师谈如何不迷失方向

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月15日

10+嵌入式工程师经验之谈:对于研发工作的感悟

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月15日

请收好:10 个实用的 VS Code 插件

无论你是经验丰富的开发者,还是刚开始工作的新手,你都会想让自己的开发工作尽可能轻松一点。正确的工具使用则可以帮助你实现这个目标。
2020年2月14日

关于程序效率的问题,你有思考过吗?

系列从1开始,因此,该系列看起来:1,1,2,3,5,8,...注意:从递归树,我们计算fib(3)函数2次,fib(2)函数3次。这是相同函数的重复计算。如果n非常大,fib
2020年2月14日

干货:单片机编程实例大全

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月13日

面试了一个 46 岁程序员……思绪万千……如何从平庸走向理想?

之所以管理时间会对程序员这个行当特别重要,是因为在完成任务时你必须像荒野里的狼一样,「独行」。没有外界约束的情况下还能稳定控制自己,保证能高效率地工作和学习,那么日积月累你肯定会变得比一般人厉害。
2020年2月13日

Github上这几个沙雕项目,够我玩三天!

一天掉多少根头发因何而发生?本人也是经过了深思熟虑,在每个日日夜夜思考这个问题。要想清楚,一天掉多少根头发,到底是一种怎么样的存在。而这些并不是完全重要,更加重要的问题是,
2020年2月12日

我也能写出雷军的的代码吗?最好的汇编语言入门教程在这里!

程序运行的时候,操作系统会给它分配一段内存,用来储存程序和运行产生的数据。这段内存有起始地址和结束地址,比如从0x1000到0x8000,起始地址是较小的那个地址,结束地址是较大的那个地址。
2020年2月12日

代码调试的最佳指南

添加发光二极管(LED):“很久以前,当我们在Transputer网格上做嵌入式开发时,我们将发光二极管连接到每个芯片的一个未使用的管脚上。它在诊断并行性问题上出奇地有效。”
2020年2月11日

(深度好文)程序算法与人生选择

还有一些朋友问题我应该学什么技术?不应该学什么技术?或是怎么学会学得最快,技术的路径应该是什么?有的说只做后端不做前端,有的说,只做算法研究,不做工程,等等,等等。因为他们觉得人生有限,术业有专攻。
2020年2月11日

瞬间打通奇经八脉!C语言知识点思维导图!

本文作者为CSDN博主「龙跃十二」原文地址为https://blog.csdn.net/qq_38646470/article/details/79139212
2020年2月10日

超长文详解:C语言预处理命令(精品,建议收藏)

由于在程序中插入了条件编译预处理命令,因此要根据NUM是否被定义过来决定编译哪个printf语句。而程序首行已对NUM作过宏定义,因此应对第一个printf语句作编译,故运行结果是输出了学号和成绩。
2020年2月10日

为什么嵌入式工程师都要学习I2C硬件问题解决办法?

免责声明:整理文章为传播相关技术,版权归原作者所有,如有侵权,请联系删除
2020年2月9日

(好文推荐)如此理解傅里叶级数,初学者是不是更易明白?

sin(nωt+ψ)之和来表示那个较复杂的周期函数f(t)呢?因为正弦函数sin可以说是最简单的周期函数了。于是,傅里叶写出下式:(关于傅里叶推导纯属猜想)
2020年2月9日

一文搞懂Zynq的两种启动模式!好文收藏

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月8日

深入分析 Linux 内核链表

list)成员,各个协议族的nf_sockopt_ops结构都通过这个list成员组织在一个链表中,表头是定义在[net/core/netfilter.c]中的nf_sockopts(struct
2020年2月7日

Linux设备驱动之Kobject、Kset

parent的,在/sys/目录下可以找到它们,对于devices、bus、class、module它们是kset;对于fs、dev、firmware、kernel、block
2020年2月7日

C语言中最大烦恼被解决!指针和内存泄漏攻坚战

memoryArea->newArea);free(memoryArea);返回值的不正确处理有时,某些函数会返回对动态分配的内存的引用。跟踪该内存位置并正确地处理它就成为了
2020年2月6日

阅读Linux内核时,有哪些常见宏?

这样做之后,在可执行文件里,foo就会在bar的前面,及foo和bar的地址紧挨着,bar紧跟在foo的后面。我们在缩小一下我们的视角,从宏观上来看下这个链接脚本。
2020年2月6日

工作中非常常用!浅谈Linux PCI设备驱动(建议收藏阅读)

number。那么就不知道该PCI桥下面是否还有其他的PCI-PCI桥。即使你知道,也不清楚如何对它们赋值。解决方法是利用上述的深度扫描算法来扫描每个总线。每当发现PCI-PCI桥就对它进行赋值。
2020年2月5日

这可能是最通俗易懂的方式讲解ARM中断原理以及中断嵌套

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年2月4日

7年5个大公司!嵌入式大神丰富工作经历令人佩服

来源:https://www.zhihu.com/question/24453944/answer/723961464
2020年2月4日

计算机天才的经验:编程的智慧(字字珠玑,建议收藏)

这种“复用”其实是有害的。如果一个函数可能做两种事情,它们之间共同点少于它们的不同点,那你最好就写两个不同的函数,否则这个函数的逻辑就不会很清晰,容易出现错误。其实,上面这个函数可以改写成两个函数:
2020年2月3日

为什么将 0.1f 改为 0 会使性能降低 10 倍?

作者:卢钧轶(cenalulu)本文原文地址:http://cenalulu.github.io/linux/about-denormalized-float-number/
2020年1月23日

男程序猿与女程序媛的一天

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月23日

没想到这么烂的代码居然是我写的……

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月22日

堆和栈的区别(非常详细,干货收藏!)

根据https://blog.csdn.net/hairetz/article/details/4141043和嵌入式Linux
2020年1月22日

新手学习嵌入式十大 “不要”

,来源:http://blog.51cto.com/13573658/2073361
2020年1月21日

这样看递归和死循环,一下就明白了!

在生活中,“从前有座山,山里有个庙……”这个故事大家都听过吧,这种没有结束条件的递归,最后是个死循环。
2020年1月21日

985硕士出来嵌入式驱动开发工资能到多少?知道真相的我有了信心

入职以后,完全凭自己的摸爬滚打求富贵,有人被逼着转行退出嵌入式行业,有人能求得一席之地多个公司蹲着墙角高薪抢着要,有人成绩平平过的不温不火。每个人都有自己的可能性,但大家都是从C语言键入printf
2020年1月21日

初学者一篇看懂嵌入式Linux

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月20日

手把手教你把驱动代码加入到Linux Kernel

menuconfig(或xconfig等)时,从Kconfig中读出菜单,用户选择后保存到.config的内核配置文件中。在内核编译时,主Makefile调用这个.config,就知道了用户的选择。
2020年1月20日

ARM-Linux开发与MCU开发有何不同?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月19日

为什么我抛弃了 Ubuntu?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月19日

如果把嵌入式Linux platform设备驱动过程比作相亲,那么总线即是红娘,设备是男方,驱动是女方.....

设备(或驱动)注册的时候,都会引发总线调用自己的match函数来寻找目前platform总线是否挂载有与该设备(或驱动)名字匹配的驱动(或设备),如果存在则将双方绑定;
2020年1月18日

嵌入式Linux下最常用的C语言编译器GCC命令详解

资源受限的时候一些优化选项会增加可执行代码的体积,如果程序在运行时能够申请到的内存资源非常紧张(如一些实时嵌入式设备),那就不要对代码进行优化,因为由这带来的负面影响可能会产生非常严重的后果。
2020年1月18日

初学者的嵌入式 Linux 计划!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月17日

10 款好用到爆的Vim插件!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月17日

代码不是一次性的,你要为未来写代码!

情景二:负责一个项目的源代码流程测试,一期代码并非模块化实现,6K多的shell脚本即使有注释,看着那个头疼,后来在我们提出该问题后,开发重新进行了设计和规范,拿到代码的那一刻顿时感觉清晰多了。
2020年1月16日

每个人都应该知道的 Linux 技巧!

12:更快的邮件难度:简单应用程序:KMail连三秒钟都不想花费在找邮箱客户端上面?不想被桌面上堆积成山日渐腐烂的图标搞得找不到鼠标指针?不管你正在KDE里干什么,按几下键盘就可以发邮件了。输入:
2020年1月16日

PHP 可能在未来十年内消失?

原文:https://medium.com/@DarkGhostHunter/php-could-fade-away-in-the-next-decade-584e46d760db
2020年1月15日

真正涨知识了!Linux五大网络IO模型详解

首先我们允许套接口进行信号驱动I/O,并安装一个信号处理函数,进程继续运行并不阻塞。当数据准备好时,进程会收到一个SIGIO信号,可以在信号处理函数中调用I/O操作函数处理数据。
2020年1月15日

此文解决了C语言难攻克的枚举!

//变量result的类型为双精度浮点型double既然枚举也是一种数据类型,那么它和基本数据类型一样也可以对变量进行声明。方法一:枚举类型的定义和变量的声明分开enum
2020年1月14日

资深码农发话了!如何写出好代码?

13、变量1)要求①变量名称前的字母含义要求如下g:global全局。a:array数组。s:static静态。c:const不变常数。n:变量。p:指针。②变量的名称应能读出其功能作用。2)举例
2020年1月14日

学单片机这个知识点一定要学会!单片机两大延时方法总结

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月13日

5G手机芯片,到底买谁?

我已加入“维权骑士”(rightknights.com)的版权保护计划。
2020年1月13日

RAM在单片机里有什么样的作用

ROM。一次性写入的ROM仅用于电路和程序固定的批量产品中,实际工作起来,都是一样的。
2020年1月12日

硬核!C语言八大排序算法,附动图和详细代码解释!

直接插入排序的核心思想就是:将数组中的所有元素依次跟前面已经排好的元素相比较,如果选择的元素比已排序的元素小,则交换,直到全部元素都比较过
2020年1月12日

工程师讲解:用C语言实现状态机(实用)

有三种类型的事件:上层下达的命令事件;下层到达的标志和数据传输事件;超时定时器超时事件。有10种状态,关联性很大,复杂了吧,这要是各种if/else的要写到什么时候呢。
2020年1月11日

“一切即代码”究竟意味着什么?

原文地址:https://hackernoon.com/everything-as-code-explained-0ibg32a3
2020年1月11日

我在 1969 年写代码

与此同时,一家垄断企业SJ(瑞典国有铁路公司)发布了招聘实习生的广告,提供为期一年的带薪培训项目,在那可以学习SJ运营的所有不同项目。SJ有一个计算机部门,所以我也申请了SJ项目,希望能在那里工作。
2020年1月10日

写代码居然也是一份人命关天的工作!

原文链接:https://slate.com/technology/2019/10/consequential-computer-code-software-history.html
2020年1月10日

送你一个超级简单但很实用的程序模板,用于收集C语言知识点

以前我刚开始学习C语言的时候经常需要验证一些比较模糊的知识点,或则想要验证一些函数时,所以我每次都会建一个test.c文件,然后在这个文件里写我的测试代码,测试完毕后常常会删掉该文件。
2020年1月9日

15岁杀人犯监狱学编程,37岁保释年薪70万

来源:量子位公众号原文地址:https://mp.weixin.qq.com/s/LsUfqSEI7R5NPig-9e1LEg
2020年1月9日

提高工作效率的 7 个 Vim 使用技巧

◎h、j、k、l,分别是左下上右移动光标,前面加上n,可以重复移动多次,例如3j就可以往下移动3行
2020年1月8日

如何写出让同事无法维护的代码?

膨胀你的类。让你的类尽可能地拥有各种臃肿和晦涩的方法,比如,你的类只实现一种可能性,但是你要提供所有可能性的方法。不要定义其它的类,把所有的功能都放在一个类中。
2020年1月8日

工程师实录:记一则bootloader的cache问题

改完之后,解压速度杠杠的,但也带来了一些其他的问题,例如我的系统启动不了了,bootloader跳转过去就直接挂了。想了下,应该是改为write-back后Cache和主存的数据存在不一致导致的。
2020年1月7日

12306又崩了?让我们从架构的角度聊聊,其实它很牛!

机制的负载均衡》:https://www.kancloud.cn/digest/understandingnginx/202607秒杀抢购系统选型
2020年1月7日

串口通讯你真的会了吗?

出这种情况大多是波特率对应不上,我们就得自己检查我们的底层文件了,代码中的某个与波特率计算相关的值(时钟)与实际不匹配了,就会出现这样的现象,比如之前我的一位同事就遇到这样的情况就是这个原因导致的。
2020年1月6日

Linux与windows相比究竟好在哪里?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月6日

ARM代码编译与链接调试的工作流程梳理

初始入口点:运行时的入口点,初始入口点必须位于映像文件运行时入口点,而它的加载时地址和运行时地址一致(称为固定域)。可以通过-entry指定映像文件的初始入口点。
2020年1月5日

高手总结:利用代码覆盖率提高嵌入式软件可靠性

关键领域的结构化测试流程一般会将需求的级别高低作为重点,代码覆盖率因而会在这种“基于需求”的测试中进行分析。在许多项目中,高等级的需求最先被测试。此时代码覆盖率可以被用来检测和报告所达到的覆盖比例。
2020年1月5日

含着眼泪看完,让程序员崩溃的瞬间!请勿对号入座

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2020年1月4日

详解FPGA的四大设计要点

FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。
2020年1月4日

2019年C++有哪些发展?

特性上的演进、在全球的会议重大进展、相关工具的改进,以及
2020年1月3日

从单片机转到ARM —— ARM架构基础知识小结

它被ProcID(当前进程所在的进程空间块的编号)转换成指令MVA(IMVA),指令CACHE(ICACHE)和MMU看到的就是IMVA。
2020年1月2日

GNOME、KDE、Unity、Mate、Cinnamon……究竟哪个Linux桌面系统是你的菜?

2并且非常怀念当初的美好时光,那么MATE将成为您最为理想的桌面环境选项。新用户们则往往更能接受Cinnamon这款使用更多现代代码的传统风格桌面。不过值得一提的是,古董级计算机设备配合MATE
2020年1月2日

2020,Linux会有哪些新发展?

https://www.omgubuntu.co.uk/2019/12/linux-predictions-2020
2020年1月1日

这一顿神操作!我把 3000 行代码重构成 15 行!

替代吗?其次,直接用int.Parse如果抛出了异常性能得有多低?再次,这段代码要是有点修改,我不是要每个dt.Rows[n]得改一遍?不要重复发明轮子我们再来看看其他的一些代码:public
2020年1月1日

这几种超级实用的多引脚电子元器件拆卸技巧你掌握了么?

当然,在吸锡之前,应使用电烙铁给多引脚电子元器件引脚上的焊锡加热,待焊锡熔化后,把多股铜线搁在焊点上,再用烙铁头压住多股铜线,焊锡便被迅速吸走。
2019年12月31日

别让自己“墙”了自己(说的太好了,懂的人都看到了内心)

原文:https://coolshell.cn/articles/20276.html作者:陈皓
2019年12月31日

文言文能编程了,口水战也开始了

http://wenyan-lang.lingdong.works/ide.html
2019年12月30日

RT-Thread Studio的使用体验:真香!

本公众号专注于嵌入式技术,包括但不限于C/C++、嵌入式、物联网、Linux等编程学习笔记,同时,公众号内包含大量的学习资源。欢迎关注,一同交流学习,共同进步!
2019年12月30日

大神经验谈:C语言和指针的本质

然而,C语言依然对业务编程不友好,前面说了,C语言映射的就是计算机工作方式本身,若想用好C语言,就必须要懂计算机原理,这并不是业务程序员的菜,业务程序员只是编写业务逻辑,并不在乎计算机是如何工作的。
2019年12月29日

真伪难辨的假芯片究竟该怎么鉴别?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月28日

超炫酷技巧!C语言代码优化的技巧

(count);}优先使用if语句,而不是取余数运算符,因为if语句的执行速度更快。这里注意新版本函数只有在我们知道输入的count结余0至59时在能正确的工作。
2019年12月28日

代码究竟是如何控制硬件的?

采取存储程序的方式让控制器从存储器中读取二进制并解释然后让运算器去计算数值。我来再解释一下,首先让我们了解运算器是什么东东
2019年12月27日

你知道 MCU 振荡电路晶体旁的22pF电容是干什么的吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月26日

7大嵌入式开发技巧,实用!

从规范完善的开发周期到严格执行和系统检查,开发高可靠性嵌入式系统的技术有许多种。今天给大家介绍7个易操作且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕获异常行为大有帮助。
2019年12月26日

Unix 和 Linux 你不知道的那些历史

4.13.0是内核版本,16.04是指ubunut发行版本。现在常见的linux操作系统有:ubuntu红帽深度Centos
2019年12月26日

让程序员崩溃只需要一句话

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月25日

在华为,加班究竟有多恐怖?

李玉琢后来如此评价任正非,“任正非是一个非常忘我的工作狂,事业远远重于家庭。但是我想,他可以做到的,不能要求别人也和他一样呀。在我看来,健康永远是第一位的,不要家庭、不要健康的社会是危险的。”
2019年12月25日

该如何学习嵌入式?看大佬的职业规划

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月24日

嵌入式是否真的高大上?为什么没有嵌入式软件架构师?

此处嵌入式特指基于linux平台,单片机和其他rtos不在讨论范围
2019年12月24日

一位经验丰富的嵌入式工程师的模块化编程总结

原文链接:https://freertos.blog.csdn.net/article/details/5974945
2019年12月23日

工程师深度:FPGA 高手养成记

基本的语法略过,主要想写一些关于框架,规范,技术难点的博文,这样对于我们养成好的编码习惯是有好处的,就定这样一个flag吧.希望大家可以一起好好学习,共同进步.
2019年12月23日

抛砖引玉,教你学习各种总线技术

码分多路复用是所被传输的信号都会有各自特定的标识码或地址码,接收端将会根据不同的标识码或地址码来区分公共信道上的传输信息,只有标识码或地址码完全一致的情况下传输信息才会被接收。
2019年12月22日

书本里不会讲的C语言关键词volatile用法

程序被优化的原因很简单,既然已经把变量的值读入累加器,就没有必要重新一遍,编译器认为值是不会变化的。就这样,在第三行,程序进入了无限死循环。为了告诉编译器我们的真正意图,我们需要修改函数的声明:
2019年12月22日

51单片机的内部资源和最小系统解读

去耦电容的使用:低频滤波电容,平常应用最多的事钽电容,电解电容,陶瓷电容,起到去除电源低频纹波,稳定电源的作用;高频滤波电容,电容附近,通常用104电容来进行去除高频干扰
2019年12月21日

10种常用的软件滤波方法及示例程序

假定从8位AD中读取数据(如果是更高位的AD可定义数据类型为int),子程序为get_ad();
2019年12月21日

史上最烂开发项目原来长这样?奇葩代码盘点

结果7年过去了,这个项目竟然还没成型。这时候,因为延误造成的罚金已高达每日几千欧元,于是管理层决定要精简团队,减少开支。具体做法是,把有经验的老员工解雇了,以低薪招了一批没啥经验的新手来上班。
2019年12月20日

C++编程中的核心知识点

(*sp).same_isbn(item2);等效于sp->same_isbn(item2);运用new和delete语句创建和撤销动态内存,即可创建和释放动态数组也可创建和释放单个对象,如:int
2019年12月20日

如何在ARM下进行高效的C编程?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月20日

啥是封装?来看C++这个小技巧

m_array[10];};如果用户可以直接访问数组,则可以使用无效索引下标数组,从而产生意外结果:int
2019年12月19日

学C++人人都会犯的错误,你犯了吗?

上面那段错误的代码可能在很长时间内都能正常工作。不过那仅仅是因为运气好而已,没什么其他原因。某一天你写的函数很可能突然间就崩溃了
2019年12月19日

涨知识!C语言中大端、小端字节序各自优势及判断

0;}/*Little-Endian(小端):首地址存储数据的低位DCBA41424344*/
2019年12月18日

“狗屎”一样的代码!快,重构我!

对象技术的新手通常不愿意在小任务上运用小对象——结合数值和比重的money类、有一个起始值和一个结束值组成的range类。将原本单独存在的数值替换成对象,从而走出传统的洞窟,进入炙手可热的对象世界。
2019年12月18日

工程师深度:嵌入式项目开发的 Git & GitHub 实用教程

安装完Git后首先要设置用户名和邮箱,因为Git的每一次提交都会使用该信息,并且写入到每一次提交信息中,不可更改。该信息和Github账号无任何关系,方便起见,建议对应。设置命令如下:git
2019年12月17日

学会Linux正则表达式,我只用了3分钟

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月16日

在单片机(MCU)上运行Qt?Qt for MCUs 1.0正式发布

Layout复杂度相对于Cortex-A那样级别的MPU来说要低很多,在要求不是特别高的情况下,低廉的价格对批量生产优势明显。而且无论是整个BOM成本还是开发人员的要求MCU都相对要有优势。
2019年12月16日

嵌入式Linux启动过程到底发生了什么?

CTRL-ALT-DELETEca::ctrlaltdel:/sbin/shutdown-t3
2019年12月15日

手把手教你如何把C++的源程序改写成C语言

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月15日

漫画解读:Linux内核!太形象了!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月14日

生活就是吃饭睡觉写代码?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月14日

看到这些代码,我自叹不如……

"https://stackoverflow.com/search?q=[js]+"
2019年12月13日

十年程序员血与泪:千万别重构代码!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月13日

我的特长是复制、粘帖

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月12日

黑客是怎么入侵你的Linux服务器做坏事的?

portmap、readahead_early、restorecond、rpcgssd、rpcidmapd、rstatd、sendmail、setroubleshoot、yppasswdd
2019年12月12日

程序员,被代码耽误的段子手:承包了我一天的笑点

记得初入公司时,写的代码乱七八糟,错误百出,bug连连,不仅项目经理骂我,其他同事也对我怨声载道。后来听朋友介绍,就报了一个培训班。经过1个月的刻苦学习,终于功夫不负有心人—他们都骂不过我了。
2019年12月11日

工程师分享:战斗在0与1的世界,将代码写到极致

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月11日

世纪性大问题:C 语言会比 C++ 快吗?

这个网格简化器,是通过多次调整以改善代码的性能和质量的一种基于边缘压缩的二次曲面简化算法的实现结果。该算法仍处于开发阶段,但已投入相当大的努力。细节真的不那么重要,但它有助于理解结构和大小:
2019年12月10日

还在发愁C++中类模板?这文章为你答疑解惑

这四个运算符,这四个运算符如果要运用于自己定义的数据类型类,要重载这四个运算符;第一次编译是对类模板本身的语法进行编译;{public:
2019年12月10日

LoRa到底怎么了?

近期,各大自媒体纷纷表示“LoRa凉了”,所以这是真的吗?答案是否定的。
2019年12月9日

正反馈、负反馈傻傻分不清?看这篇电路深度讲解

免责声明:本文系网络转载,版权归原作者所有。如本文涉及版权问题,请留言告知,我们将在第一时间处理!谢谢!
2019年12月8日

从1965到2019 年,最流行的编程语言大变迁,附视频

免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系,谢谢!
2019年12月8日

Thumb指令、Thumb-2指令、Thumb-2EE 指令区别是什么

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月7日

Xilinx和Intel之外,还有谁掌握了"万能芯片"密钥?FPGA厂商大盘点

1984年,Xilinx首创了现场可编程逻辑阵列(FPGA)这一创新性的技术,并于1985年首次推出商业化产品,是全球领先的可编程逻辑完整解决方案的供应商,也是目前排名第一的FPGA解决方案提供商。
2019年12月7日

乔布斯的简历120万被拍卖,HR 看了想打人……

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月6日
2019年12月6日

2年重写10年279万行代码……全文一字一字看完,真的感同身受

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月5日

编程,它到底难在哪里?

测试发现一个问题:如果水果店0和水果店1都有红富士苹果并且价格都低于10元/斤,而且水果店1的价格比水果店0更低,那么我希望买水果店1的苹果,但我设计的流程会让我买水果店0的苹果。
2019年12月4日

C语言、嵌入式位操作精华技巧大汇总

0x01;但是,这样设置是不够准确的,因为这时候已经同时操作到了高7位:bit1~bit7,如果这高7位没有用到的话,这么设置没有什么影响;但是,如果这7位正在被使用,结果就不是我们想要的了。
2019年12月4日

天下之大无奇不有!20种最奇怪的编程语言!

简评:第一次遇到这些语言时,我下意识觉得有些程序员可能工作不饱和(微笑)。其实这些语言中有一些是为了特定目的而创建的,另一些则是在于挑战和娱乐。总之,非常羡慕这些又聪明又有时间的人了!
2019年12月3日

感触极深!二十年的编程,教会我的五件事!

也许你只需要实现一个数据库触发器,就可以在“总金额”列发生变化时确保“税前金额”+“税款”=“总金额”。或者,你也可以编写尴尬的状态检查逻辑,当默认的全局变量值与配置文件分配的值不匹配时,记录警告。
2019年12月3日
2019年12月2日

操作系统生态战争

当媒体在为IBM的胜利欢舞,比尔盖茨已经看得很明白,硬件无法垄断,永远可以被模仿被挑战。但是专注操作系统,对上拥抱芯片做好兼容,对下拉拢软件开发者打造生态,却是一个比生产电路板宏大一万倍的故事。
2019年12月2日

每个工程师都应该了解的一些 C++ 特性

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年12月1日

为什么大量的if else这么不受待见?怎么“干掉”它?

else的代码量再加上该方法的其它代码可以想象该方法的代码量很大,我们需要控制方法的行数,一般通常控制到100行以内,我们可以通过将每个运算的具体实现都提取成一个单独的方法,这样一来就缩小每个if
2019年12月1日

关于硬件工程师的真相:这行真的不行吗,敢问路在何方?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月30日

做软件的和搞硬件的,谁更优越?程序员:感觉搞硬件的真厉害!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月30日

Linux C/C++定时器的实现原理和使用方法

0;}在实际项目中,一个常用的做法是新起一个线程,专门管理定时器,定时来源使用rtc、select等比较精确的来源,定时器超时后向主要的work线程发消息即可,或者使用timefd接口。
2019年11月29日

5个最常用的C++经典算法代码(经典,建议收藏)

std;template//整数或浮点数皆可使用void
2019年11月29日
2019年11月27日

“C/C++中char* 和 char「」区别

//报错!左边操作数只读解释:a是一个char型指针变量,其值(指向)可以改变;b是一个char型数组的名字,也是该数组首元素的地址,是常量,其值不可以改变
2019年11月27日

Github 5w星!100天自学Python,他是怎么做到的?(附Github地址)

先附上github地址:https://github.com/jackfrued/Python-100-Days
2019年11月26日

50 种不同编程语言的“Hello World”,你知多少?

1972特别是受到Lisp语言的启发,Smalltalk是一种面向对象、自反性和动态类型的编程语言,发明于1972年。Smalltalk是最早拥有集成开发环境的编程语言之一。Transcript
2019年11月25日

给跪了!来看看雷军 1994 年写的代码,经典老古董(附完整代码)

-------------------------------------------------------------------------RestoreBiosData:lodswcmp
2019年11月25日

详解FPGA四大设计要点

FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。
2019年11月24日

硬件工程师 VS 软件工程师:我学得这么难,为什么薪水没你多?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月24日

送给小白:一份详细的嵌入式学习规划,看过让你少走弯路

在学习操作系统原理的时候,已经有介绍文件系统了,而且不需要深入研究文件系统的具体算法,只需要了解其特性再学会使用它就可以了。如:NFS、FAT32、NTFS、yaffs2、ext4、ZFS等。
2019年11月23日

C++ 救不了程序员!

原文:https://alexgaynor.net/2019/apr/21/modern-c++-wont-save-us/作者:Alex
2019年11月22日

手把手教你嵌入式C语言优化技巧

);}}请注意,这两个函数的功能相似。然而,第一个函数调用strlen函数多次,而第二个函数只调用函数strlen一次。因此第二个函数性能明显比第一个好。
2019年11月21日

现在市场上,C++ 主要用来做什么?

原文链接:https://www.toutiao.com/i6751572013543850504/
2019年11月21日

详解FPGA四大设计要点

FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。
2019年11月20日

那个神奇的555定时器,你知道它的功能有多强大吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月20日

用C语言编程,如何节省存储空间?

you弄啥嘞,感觉什么跟什么呀,只有最后的字符串是正确的,这也就间接证明了共用体使用相同的存储空间,其他类型的赋值会破坏原先的赋值,正常情况下只有最后一次的赋值才会保证正确结果。
2019年11月19日

注意!使用FPGA“代替”CPU,说法不准确!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月19日

深度科普:CPU与GPU两者之间的区别与是什么?xPU又是什么鬼?

整理自网络,整理/排版:付斌,参考资料:物联网智库,中国科普博览,半导体行业观察,架构师技术联盟等,本文仅作为科普相关技术知识。
2019年11月18日

处理器知识:RISC和CISC架构分析对比

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月18日

为什么千万不要重写代码?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月17日

资深专家:Linux C++线程池框架超详细讲解!

m_AvailLow:当前线程池中所允许存在的空闲线程的最小数目,如果空闲数目低于该值,表明负载可能过重,此时有必要增加空闲线程池的数目。实现中我们总是将线程调整为m_InitNum个。
2019年11月17日

代码不规范,同事两行泪

但是在数字化时代,发明创造的方式发生了变化。现在,我们都创造数字化产品。我们建网站、写软件来满足我们的需求。虽然我们创造不再依赖于我们的创造力,但是我们仍然可以与艺术家其名。
2019年11月15日

关于8位MCU产品的十大误解

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月14日

人类历史上最重要的36个代码片段

result;}上述代码片段是离散余弦变换算法,JPEG背后的基石。Nayuki项目我们现在已经把相机装满照片视为理所当然。但是过去表示图像需要大量的数据。1992年,联合图像专家组(Joint
2019年11月13日

“I2C”的那些坑,如何迈过去?

如果出现此类异常,建议更换小一点的电阻,用来增强总线驱动能力,提高电平转换速度。应当注意的是每个MCU的耐受电流不一样,减小电阻应避免超过相应引脚承受电流的最大值。
2019年11月13日

无处不在的边缘计算——嵌入式软件的机会来了!

虽然前几波创新浪潮专注于设备或设备格局,但最近的变化已影响到细分市场、公司和使用场景。网络设备的激增显著改变了我们的生活,整个行业正在努力地将其所产生的势头转变成效率、决策和大量数据的盈利机会。
2019年11月12日

Socket编程在嵌入式中很重要!看工程师剖析Socket(超详细,附代码)

本文使用的是gcc编译器编译(关于gcc编译器的相关介绍可查看往期笔记:【C语言笔记】使用notepad++、MinGW来开发C程序及【C语言笔记】windows命令行下编译C程序),编译命令如下:
2019年11月12日

35 美元的树莓派是如何改变世界的?

个寄存器和电容以及一个通过脉冲宽度调制产生音频的软件取代。在别的地方,他们会先降低规范要求,然后等到后面推出的板子再考虑改进某些缺陷,比方说,一开始给树莓派选择了线性电源,这玩意儿在
2019年11月11日

Linux常用命令大全『全集手册』

对于一个用Linux开发C程序的人来说,这个命令就非常重要了,它用于把C语言的源程序文件,编译成可执行程序,由于g++的很多参数跟它非常相似,所以这里只介绍gcc的参数,它的常用参数如下:
2019年11月10日

C语言访问MCU寄存器的两种方式

_SFR_IO8(0x25)而在sfr_defs.h中可以找到如下两个宏定义:#define
2019年11月8日

通俗易懂:Linux下的C语言开发之Makefile编写

mytool1.omytool2.o。当倚赖的对象在目标修改后修改的话,就要去执行规则一行所指定的命令。就象我们的上面那个Makefile第二行所说的一样要执行
2019年11月8日

C语言中三块“难啃的硬骨头”

2);该函数用来求10的2次方。好了,看到这里你有没有觉得其实C语言函数还是比较有意思的,而且并没有那么复杂困难。以后再遇到菜鸟小白的时候,你一口一个C语言的函数,说不定就能当场引来无数膜拜的目光。
2019年11月7日

老兵传奇:聊聊我在华为的20年

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月6日

成为单片机高手必知的三个重要步骤(干货分享)

模拟电路是电子技术最基础的学科,这是学习电子技术必须掌握的基础知识。一般是先学习模拟电路再去学习数字电路。扎实的模拟电路基础不仅让人们容易看懂别人设计的电路,而且会让设计的电路更可靠,提高产品质量。
2019年11月5日

工程师离不开的那些电路设计工具,你用过几个?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月5日

工程师深度:学通Linux内核(含详细代码)

内核空间和用户空间的程序可能都需要使用已经获得的随机数,内核空间的程序可以通过不设置标志位来避免函数copyto_user()带来的额外开销。除了通过设备驱动程序向内核添加代码之外,还有别的方式
2019年11月5日

从当初汇编、C语言入手,到如今FPGA开发已然十年,总结出“三多”!

定义的reg型,不一定综合成寄存器。在Verilog代码中最常用的两种数据类型是wire和reg型,一般来说,wire型指定的数据和网线通过组合逻辑实现,而reg型指定的数据不一定就是用寄存器实现。
2019年11月4日
2019年11月4日

深度:关于Linux内核最硬核的文章

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月3日

如何学STM32 —— 十年经验教你如何学习嵌入式系统

因此对于初学者必然要把握住方向,自己学习嵌入式系统的目标是什么,自己要在那一层面上走。然后再着手学习较好,与ARM相关的嵌入式系统的较为实际的两个层面硬件层和驱动层,不管学好了那一层都会很有前途的。
2019年11月2日

FPGA为什么比CPU和GPU快

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年11月2日

FPGA vs. ASIC 你看好谁?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月31日

嵌入式开发的这两个设计思想一定要掌握

符合条件,开始进入按键处理程序了,在这个期间,单片机都在做其它事情,只是一个主循环跑回来判断一次,所以单片机完全有空跑其它的程序,而没有将时间都耗在消抖上面。▎(四)看看我的主程序循环体
2019年10月30日

全球最厉害的14位程序员!头发还在!

C编译器,LZEXE解压缩软件。在2000年与2001年赢得国际C语言混乱代码设计大赛冠军;2011年赢得谷歌O’Reilly开源设计奖;前圆周率计算精度世界纪录保持者。
2019年10月29日

为什么C语言函数不能返回数组,却可以返回结构体

f();}不可以编写这样的代码这其实就是不能在C语言函数中返回数组。但是如果将数组定义在结构体里面,就可以将其返回了,例如下面这段C语言代码,请看:struct
2019年10月28日

嵌入式开发都选择C语言,你知道为什么吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月27日

数学对于编程来说重要吗?编程大佬现身说“线性代数”

向量模型中定义了向量和标量的概念。向量具有大小和方向,满足线性组合法则;标量是只有大小没有方向的量(注:标量的另一种更深刻的定义是在坐标变换中保持不变的量)。向量模型的优点之一是其坐标系无关性,
2019年10月27日

必看,Linux的好习惯和教训

http://www.cnblogs.com/yihr/p/9593795.html
2019年10月26日

搞嵌入式的你,为啥要懂uboot?

printenv,然后saveenv;然后重启则会看到启动倒数后自动执行printenv命令打印出环境变量。这个小实验说明开机自动执行了bootcmd。(4)设置bootcmd环境变量:set
2019年10月25日

Linux这些工具堪称神器

http://centos.ustc.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso
2019年10月24日

搞嵌入式硬件开发,工程师都有哪些独门绝学?

单纯的所谓的嵌入式其实只要动动手就能知道流程的,外面的所谓的嵌入式培训也就是做这个事情的,更重要的是其中的原理和基础知识。嵌入式从本质上讲是计算机,所以学好计算机的软硬件对嵌入式是很有帮助的。
2019年10月23日

搞嵌入式驱动的,你一定要挺住!

为了今后的发展,你除了考虑广度以外,更重要的是注意知识的深度。譬如,做过网络驱动,那么是不是只停留在会写驱动的表层上,有没有对Linux内核的网络结构,TCP/IP协议作过深入的了解。
2019年10月22日

科普:你知道C/C++/Java/Python等主流编程语言之父是谁吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月21日

单片机电路设计中的10个难点

单片机是嵌入式系统的核心元件,使用单片机的电路要复杂得多,但在更改和添加新功能时,带有单片机的电路更加容易实现,这也正是电器设备使用单片机的原因。那么在单片机电路的设计中需要注意的难点有哪些?
2019年10月20日

谁说驱动工程师就是拷贝代码!优秀的驱动开发工程师是怎样的呢?

很多做驱动的朋友吐槽认为自己的工作就是把代码拷贝来拷贝去,或者说是改来改去,没有什么技术含量。这主要还是因为他们对自己的工作缺少了解导致。那么何谓优秀的驱动开发工程师呢?
2019年10月20日

Linux系统中的”队列”是什么?Linux “队列”相关总结

也与wait_event()类似.不过如果所给的睡眠时间为负数则立即返回.如果在睡眠期间被唤醒,且condition为真则返回剩余的睡眠时间,否则继续睡眠直到到达或超过给定的睡眠时间,然后返回0.
2019年10月19日

一位电子工程师回顾大学四年学习的感概以及对大学课程的一些见解

当然,在上高数的时候,我们的高数老师——牛大田老师,经常跟我们说,信号分析中会用到哪些,经常提醒我们学好微积分,学好傅里叶变换,虽然没有提到在电路中的应用,但是估计很难找到这样的高数老师了。
2019年10月19日

采用硬件I2C读取E2PROM,单片机复位发生死锁怎么办?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月16日

不懂中断,你就别玩单片机了!

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月15日

万字干货:C语言在嵌入式系统编程时的注意事项

CPU启动后跳转至绝对地址0xFFFF0(对应C语言指针是0xF000FFF0,0xF000为段地址,0xFFF0为段内偏移)执行,请看下面的代码:
2019年10月12日

11种滤波算法程序大全(附代码)

如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统。E、整理:shenhaiyu
2019年10月11日

单片机软件模拟SPI接口

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年10月9日

Linux驱动开发流程四步走

//bool和tristate的区别是一个是是否变异如内核,一个是三选一,是否编译入内核,模块编译入内核depends
2019年10月9日

FPGA将代替CPU?一文揭秘FPGA的现在与未来之路

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月29日

解读:一文看懂Linux内核

&platform_bus_type,所以drv->bus->match就为platform_bus_type→match,为platform_match函数,该函数如下:static
2019年9月29日

解读:谈谈硬件/软件/固件的区别

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月28日

解读:编译器如何将高级语言转化成汇编语言的?

parsing)。具体做法是:从数据流的一端开始扫描,用占位符为所有之前没遇到的元素创建一个临时语法树,然后依次读取后续的数据来填充完这颗语法树。(听起来可能很抽象,请看下面的实例)
2019年9月28日

你只喜欢写代码,不喜欢测试代码?这种想法很危险啊!

免责声明:整理文章为传播相关技术,版权归原作者所有,如有侵权,请联系删除
2019年9月27日

ARM嵌入式常用开发工具及开发流程(插画版)

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月21日

深度:震惊世间的惊人代码(附完整代码)

Lomont怒了,采用暴力方法一个数字一个数字试过来,终于找到一个比卡马克数字要好上那么一丁点的数字,虽然实际上这两个数字所产生的结果非常近似,这个暴力得出的数字是0x5f375a86。
2019年9月20日

嵌入式Linux GUI的新选择:开源!免费!高效!易用!

GUI方案,Qt/Embedded应该是最容易被提及和选择的选项了,其它的还有Microwindows、MuniGUI和OpenGUI等,这些GUI方案都有自己的特点,但也有缺点,简单罗列见表1。
2019年9月19日

硬货 || 单片机常用的14个C语言算法(附详细代码)

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月17日

MCU是怎么被破解的,能防住吗?

一些与安全相关的操作,使用输入的值和密钥,由半导体芯片执行不同的时间来比较。小心的时序测量和分析就能恢复出密钥。这个方法最早在1996年的文献上提到。稍后这种攻击成功破解了实际的RSA签名的智能卡。
2019年9月16日

单片机(MCU)最强科普总结(万字总结,建议收藏)

宽×高(像素):16×16------------------------------------------------------------------------------*/
2019年9月15日

STM32单片机必须掌握的八种IO口模式和引脚配置方式

免责声明:转发本文出于传播相关技术知识,版权归原作者所有,如有侵权请联系删除。
2019年9月14日

深度 || 既然C编译器是C语言写的,那么第一个C编译器是怎样来的?

免责声明:转发本文出于传播相关技术知识,版权归原作者所有,如有侵权请联系删除。
2019年9月14日

“不敢精通”的C++的高级工程师要学会什么?

但是也有很多地方是其他语言完全无法替代的,主要集中在需要运行效率比较高的行业,比如游戏、高效的服务器。现在介绍一下成为一名C++高级工程师到底需要学习那些内容呢?
2019年9月12日

FPGA开发设计必经之路:时序分析

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月11日

ARM架构及ARM指令集、Thumb指令集你了解多少?

2、Thumb指令集没有包含进行异常处理时需要的一些指令,因此在异常中断时,还是需要使用ARM指令,这种限制决定了Thumb指令需要和ARM指令配合使用。
2019年9月8日

如何写出高质量Verilog HDL代码?这一做法值得推荐

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月7日

那些曾让世界震惊的程序BUG们, 后来都怎么样了?

1947年,编译器之母格蕾丝·赫帕的电脑出现了问题,经过排查发现,原来是一只虫子卡在了计算机的继电器中。世界上的第一个计算机“Bug”就由此产生了。
2019年9月6日

你的项目该用哪种编程模式?

而数学公式,无论从任何一个位置截取出来,公式的任何一个子公式都始终保持永远是正确的。子公式带入更复杂的公式,最终得到更庞大的复杂公式。这些过程无论是组合还是截取,永远都保持着公式的正确性。
2019年9月6日

还没搞懂C语言指针?这里有最详细的纯干货讲解(附代码)

由于内存中的每一个字节都有一个唯一的编号。因此,在程序中使用的变量,常量,甚至数函数等数据,当他们被载入到内存中后,都有自己唯一的一个编号,这个编号就是这个数据的地址。指针就是这样形成的。
2019年9月4日

为什么在C语言中,goto这么不受待见?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年9月3日

C++ 如何避免内存泄露

会消耗多少内存,并提前将会使用到的内存一次性的申请完成,从而减少了在处理一个请求的过程中,分配和回收内存的次数,从而优化了性能。我们最早看到
2019年9月2日

C语言结构体(struct)最全的讲解(万字干货)

};//要对应起来,用逗号分隔开来,与数组初始化一样;加入一点小知识;关于结构体初始化和存储类时期的问题;如果要初始化一个具有静态存储时期的结构体,初始化项目列表中的值必须是常量表达式;
2019年9月2日

高材生入职华为却跌入低谷,这个新手是如何实现逆袭的?

2017年5月,我被部门正式任命为项目经理,开始作为PL负责一个团队。曾经的“酱油党”,不知不觉已经成为代表正能量的“鸡汤王”。当然,这个励志的故事背后,始终离不开主管、导师和同事们的帮助。
2019年8月25日

这个工程师也太有才了!华为工程师的诗和远方

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年8月18日

重磅干货||五万字长文总结:C/C++ 知识(上)

答案:http://www.cs.technion.ac.il/users/yechiel/c++-faq/inline-virtuals.html
2019年8月16日

重磅干货||五万字长文总结:C/C++ 知识(下)

在链接中,目标文件之间相互拼合实际上是目标文件之间对地址的引用,即对函数和变量的地址的引用。我们将函数和变量统称为符号(Symbol),函数名或变量名就是符号名(Symbol
2019年8月16日

华为“鸿蒙”所涉及的微内核到底是什么?

服务、网络协议栈甚至外设驱动)放到用户态应用,形成一个个服务,等待其他应用的请求。而后来,为了在宏内核与微内核之间扬长避短,也发展出了中间的混合内核的形态,部分服务也会放置于内核中。
2019年8月13日

在 STM32 上使用 C++ 指南

INIT_COMPONENT_EXPORT,所以在链接的时候,C++全局对象构造函数所产生的目标文件就被链接到了__ctors_start__和__ctors_end__组成的段中。
2019年8月11日

主流嵌入式操作系统(RTOS)有哪些?看这14种系统

μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU特点进行改良,且不支持内核抢占,实时性一般。
2019年8月9日

如今的FPGA走错路了吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年8月7日
2019年8月2日

GitHub断供会对国内会有什么影响吗?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年7月31日

工程师实战分享:77条STM32知识汇总

53、触摸屏一般分为电阻式触摸屏和电容式触摸屏。前者检测触摸的位置原理是利用触摸屏控制器中的A/D转换器经过两次A/D读值后得出X和Y的坐标值。注意:这个X和Y的值是相对于触摸屏的,而非LCD屏。
2019年7月23日

树莓派4与英伟达Jetson Nano,谁是最佳嵌入式“电脑”?

Pi(树莓派)是一种非常棒的小型计算机与物联网开发主板。它不仅是一个低功耗的物联网设备,而且还是一个很好的原型设计工具,甚至还可用于构建物联网网关设备。Raspberry
2019年7月22日

工程师纯干货总结:TCP/IP网络编程

2.网络字节序:网络字节顺序是TCP/IP中规定好的一种数据表示格式,它与具体的CPU类型、操作系统等无关,从而可以保证数据在不同主机之间传输时能够被正确解释。网络字节顺序采用big
2019年7月17日

嵌入式系统知识和接口技术总结

SRAM表示静态随机存取存储器,只要供电它就会保持一个值,它没有刷新周期,由触发器构成基本单元,集成度低,每个SRAM存储单元由6个晶体管组成,因此其成本较高。它具有较高速率,常用于高速缓冲存储器。
2019年7月17日

深度:如果编程用中文!

注意,事情发展到现在并没有出现任何中文编码英文编码的事情,现在的编程用的是打孔的纸带,这显然不是任何一个国家的语言。也就是说主流编程语言都用的是英语而不是汉语的原因,现在还没到,还需要继续往下走。
2019年7月12日

硬件工程师到底该如何发展?

一个硬件产品的项目团队中,有两个和所有人打交道的角色,一是项目经理,另外一个就是硬件工程师。硬件工程师需要和各种研发人员打交道,协调工作,这也要求硬件工程师具有丰富的知识面、强大的协调能力。
2019年7月10日

硬件电路工程师最全入门工作指南!

理解电路。如果你找到了的参考设计,那么恭喜你,你可以节约很多时间了(包括前期设计和后期调试)。马上就copy?NO,还是先看懂理解了再说,一方面能提高我们的电路理解能力,而且能避免设计中的错误。
2019年7月9日

Oracle的嵌入式软件测试的十大秘籍!

总结:嵌入式调试也是一门艺术。就想其它的艺术一样,如果你想取得成功,你必须具备智慧、经验并懂得使用工具。只要我们能够很好地领悟Oracle这十条秘诀,我相信我们在嵌入式测试方面就能够取得成功。
2019年7月9日

关于“硬件工程师工资不高”的几个真相!

你们认为,硬件工程师薪资不高,到底是什么导致的呢?网络上总是不乏“硬件不如软件吃香”、“硬件干活多、待遇低、门槛高”、“十年硬件转IT,真香!”...等等诸多这样的结论。今天给大家看点不一样的。1.
2019年7月6日

树莓派4正式发布:性能飙升 配件丰富 35美元起售

4正式开售的消息。作为一款改变游戏规则的产品,其处理能力是前一代Raspberry
2019年6月26日

V语言一经发布就登顶GitHub,这个语言好得让人难以置信?

长久以来,编程语言在语法、语义和标准库等方面都存在着千差万别,使得程序员在选择时不得不面临着差异化等难题。自然选择下,就会有旧语言的淘汰(PHP
2019年6月26日

嵌入式er如何提高面试成功率?听前辈细细道来

Q:你对这个工作是否有一定的规划A:这个问题要结合公司回答,比如我想在公司的带领下和公司一同成长,未来也希望能够参与到公司的管理团队当中去,共同带领公司向前发展。总之不要显得你毫无野心和目标不明确。
2019年6月26日

有了Python+树莓派,我也做了款人工智能相机

不幸的是,我们没办法使用pip之类的方法来安装Darkflow,所以我们需要克隆整个代码库,然后自己动手完成项目的构建和安装。安装好Darkflow项目之后,我们还需要下载一个YOLO模型。
2019年6月22日

微软前员工总结的14 种编程面试模式

二指针是很有用的,因为如果只有一个指针,你必须继续在数组中循环回来才能找到答案。这种使用单个迭代器进行来回在时间和空间复杂度上都很低效——这个概念被称为「渐进分析(asymptotic
2019年6月15日

一个华为人19年的工作体会:一颗电容会造成数亿损失

800亿美金。19年后IBM还是800亿美金,华为却变成了925亿美金,完成了乌鸡变凤凰的巨变。19年前能够加入IBM几乎是所有工程师的梦想,不知今天的工程师还有多少人有这样的梦想?
2019年6月13日

RS-485接口电路设计完全指南

本文的重点在于工业最广泛使用的平衡传输线标准:ANSI/TIA/EIA-485-A(以下简称485)。在回顾一些485标准的关键方面后,通过一个工厂自动化例子,介绍实际项目中如何实施差分传输结构。
2019年6月11日

ARM到底是一家什么样的公司?

接下这个任务之后,Acorn就开始干了起来。结果,很快他们就发现,自己产品的硬件设计并不能满足需求。当时,中央处理器的发展潮流,正在从8位变成16位。Acorn并没有合适的芯片可以用。
2019年6月4日

关于芯片,清华大学教授说了大实话,但有人不爱听!

虽然很大,但是我们看一看的话,我们的产品在全球占比只有7.9%,如果当时大家还记着刚才那张胶片,中国市场1500多亿美元,占了全球市场的34%,而这里面我们只有7.9%,那我们有26%就要靠进口。
2019年5月31日

c语言基础语法——结构体

看到这条指令,编译器才会创建一个结构体变量library,此时编译器才会按照book模板为该变量分配内存空间,并且这里存储空间都是以这个变量结合在一起的。
2019年5月28日

干货 || 对于C语言指针最详尽的讲解

由于内存中的每一个字节都有一个唯一的编号。因此,在程序中使用的变量,常量,甚至数函数等数据,当他们被载入到内存中后,都有自己唯一的一个编号,这个编号就是这个数据的地址。指针就是这样形成的。
2019年5月18日

从汇编、C语言为起点,十年FPGA开发设计经验总结

大学时代第一次接触FPGA至今已有10多年的时间,至今记得当初第一次在EDA实验平台上完成数字秒表、抢答器、密码锁等实验时那个兴奋劲。当时由于没有接触到HDL硬件描述语言,设计都是在MAX+plus
2019年5月17日

指针和数组都是C语言的精髓所在,两者有何联系区别?

好了,上面即为数组和指针的简单定义。在说明数组和指针之间的区别之前,我们先来看一个实例;
2019年5月16日

搞嵌入式驱动开发一年多了,感触颇多......

此外,其实如这位网友做的这些东西,在不懂的人看来,好像很高深,不能逾越,但是任何东西都一样,你要不断的进步,第一次做某个驱动和第二次再做这个驱动,你应该获得更多,如果你没有这种感觉,那你就是白做了。
2019年5月9日

软件=高薪?揭秘软件工程师不为人知的薪水水平

毫无悬念,年薪/薪资最高的国家是美国。根据美国劳工统计局(BLS)的报告,美国软件工程师的平均年薪为101,790美元。入门级软件工程师的薪水范围则在56,000美元到85,000美元之间。
2019年5月9日

从事嵌入式行业年薪有多少,你和高薪究竟差了哪些东西?

如果学FPGA,其实这也是一个比较好的方向,尤其是现在人工智能比较火的情况下,FPGA硬件加速器等应用领域还会加大。这个是偏算法的,需要数学的基础比较好。也要看自身实验室是否有类似的项目可以学习。
2019年5月6日

搞硬件工资比搞软件的低?是工作难度决定的

嵌入式系统的核心部件是各种类型的嵌入式处理器,目前据不完全统计,当前全世界嵌入式处理器的品种总量已经超过1000多种,流行体系结构有30几个系列。由于嵌入式系统设计的差异性极大,因此选择是多样化的。
2019年4月28日

在美国,电子工程师面试都被问些什么?(中英对照)

在聘请一位新工程师时,您要确保您挑选了一个对他们每天要做的工作持良好态度的人。您要找的是对您的制定职位感兴趣的人。如果他们最不喜欢的活动是这个职位的重要组成部分,您马上就会知道他们不是合适的人选。
2019年4月25日

华为嵌入式工程师:揭秘华为研发岗那些不为人知的秘辛

4、考勤:未转正前需早上8点前到公司刷卡,转正后可弹性工作制到9点刷卡,不过欠的一个小时工时得在当月补齐。每月可有2次忘刷卡机会和2次忘带卡机会,不过如果经常忘刷卡或忘带卡会影响个人绩效和部门绩效。
2019年4月17日

输入Fuck就能自动纠正错误?GitHub上那些无所不能的项目

甚至不用学习就可以使用,那就是最近github上突然火起来的libpku项目,这个项目涵盖课程广泛,从CS的课程到数分、线代,再到各类公选通识课,简直是横跨文理,学贯中西之佳品。
2019年4月11日

一招教你ARM嵌入式系统硬件怎么用?

随着计算机技术、微电子技术和网络技术的迅速发展,嵌入式系统在工农业等诸多领域得到了广泛的应用。本文主要详细介绍ARM嵌入式系统硬件设计及ARM嵌入式系统的应用实例。
2019年4月5日

嵌入式程序员的循环冗余校验(CRC)算法最简单入门

ALGORITHMS”。我常将这篇文章推荐给向我询问CRC算法的朋友,但不少朋友向我抱怨原文太长了,而且是英文的。希望我能写篇短点的文章,因此就有了本文。不过,我的水平比不了Ross
2019年4月3日

10个经典的C语言面试基础算法及代码

Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21。
2019年3月29日

树莓派可以当 PC 用吗?这位仁兄以身试「莓」了一回

Pi工作的最后一天,有几篇文章需要编辑一些图,我感觉相当紧张,我开始安装GIMP的过程,愉快地注意到它在Raspbian存储库中的存在。几分钟后,我正在裁剪和调整大小,好像使用完整的桌面。
2019年3月29日

通过编写程序工具提取.pal调色板文件为Rgb/Yuv分量数据的文本保存

授权转载自「拿不稳烙铁的嵌入式从业者」(居水)的CSDN作者更多文章:https://blog.csdn.net/psy6653原文地址请点击底部「阅读原文」
2019年3月28日

ARM能在RISC-V挑战下生还吗?RISC-V高管:活不过5年了

International和Tensilica在20世纪90年代后期所布局的下一步演变,即便如此,前期成本和可配置性是这些公司过去常常提出的论点。(透露:原文作者是Arc早期团队的一员)。
2019年3月26日

8条腿的8位MCU,开启STM8次世代

STM8产品后,并且在今年新年伊始,专门召开发布会,重磅宣布对于STM8产品线的全新布局和投资。意法半导体微控制器市场产品经理PATRICE
2019年3月12日

嵌入式简历就该这么写,过来人的告诫

要突出你的学历,资历,做过什么等等,这样才有资格谈判,工作一旦应聘上了,你往后的薪资增幅往往就跟你的绩效息息相关,绩效越高,业绩工资也会越多,这就是为什么工资有基本工资+绩效工作等等。。。总结全文:
2019年3月8日

嵌入式FreeRTOS系统接口调用API总结

1.在最近的嵌入式工作中很多都是学习FreeRTOS系统,由于只是会对RTOS的接口进行调用,但是很多时候都是知其然而不知其所以然,所以现在对API进行总结。
2019年3月8日

面试字节跳动,我被怼了……

去面试头条,你最好有点心理准备。我面试过头条的好兄弟给了我一句忠告。不过邮件对考查内容写的一清二楚,所以一面,我并没有做太强的心理建设,事实证明我可能对通用型业务和软性技能的理解还不够透彻。
2019年3月6日

几种常用的嵌入式Linux GUI及其特点

Server这一部分资源,这使得在内存消耗、运行速度上得到显著提高。另外采用的JNI技术使得程序运行速度、事件的响应有较高的提高,能满足时间要求较为严格的实时应用场合。2.2.2
2019年3月5日

代码不规范,亲人两行泪!程序员因代码规范问题枪击四名同事

“我们向我们的所有员工及其家属表示最诚挚的问候。遇到这种情况下,你明白抱团取暖有多重要。我们为米德尔顿警察局、戴恩县警长办公室及其他急救人员深表谢意,他们的反应非常迅速。”
2019年3月5日

为了爽快地调试硬件,我跟串口调试助手杠上了

软件的运营方面,是通过攒贡献兑换激活时间,贡献的来源包括在线捐赠开发者、提交功能建议、了解广告等形式,而自定义控件是开源的,也欢迎有能力的开发者为大家贡献控件代码,被接纳的开发者将获得永久激活权限。
2019年2月28日

带你走进嵌入式ARM与MMU神秘的内部世界

enty),他直接映射的是1M的内存空间。具体的可以参考arch/arm/kernel/head.S中的__create_page_tables函数,限于篇幅,这里就不展开说了。
2019年2月28日

8条腿的MCU能干啥?基于最新8-PIN STM8S大佬们的脑洞

最近在公司熟悉STM8的产品,很有意思,其开发方式与STM32有这出奇的相似,所以开发起来也很方便。之前使用STM8S105做了一个发卡器(读写IC/ID卡)模式比较多,这次觉得8个管脚的STM8。
2019年2月21日

作为面试官,我是如何面试嵌入式工程师的?

这个阶段的目的是了解面试者对项目的整体把握程度,首先能判断出简历上写的是否是他真实的经验;其次,通过他讲的过程,我能了解这个人的语言组织表达能力;第三,我也能从中学习到新的知识点,增长见识。
2019年2月20日

华为、中兴、阿里...硬件工程师的24家公司面试经历

这企业性质不是很了解,宣讲后直接筛选简历,然后技术面。从面试官身上也没看出个所以然来。在北京理工大学校园内工作,似乎可以利用校园内的图书馆、操场、食堂等资源,但不解决户口,9.5k(几年前)。
2019年2月19日

如何减少编码、测试和调试三个阶段的bug?

通常,新的功能包括能够添加新的配置到系统中——例如,一个用于手机号码转换的新的配置文件。测试它能否添加新的配置文件是很自然的。但是,我发现我们很容易忘记去测试删除配置文件是不是同样ok。
2019年1月30日

基于ARM处理器的嵌入式防火墙安全保护机制

过滤器的应用程序拦截到一个数据分组信息之后,以过滤策略规则对其进行遍历,根据分组IP地址、目的IP地址和协议类型等策略规则进行搜索,当查询到与其匹配的规则之后,则按照策略规则对分组数据信息
2019年1月24日

C语言实现N皇后问题非递归求解

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年1月23日

困扰ARM嵌入式初学者的若干问题

在应用中学习,在应用中提高。一个对嵌入式普遍认同的定义是:嵌入式是以应用为中心,以计算机技术为基础,软件和硬件可裁剪,以适应应用系统对功能、可靠性、成本、速度、体积、功耗严格要求的专用计算机系统。
2019年1月18日

嵌入式软件测试的十大方法

总结:嵌入式调试也是一门艺术。就想其它的艺术一样,如果你想取得成功,你必须具备智慧、经验并懂得使用工具。只要我们能够很好地领悟Oracle这十条秘诀,我相信我们在嵌入式测试方面就能够取得成功。
2019年1月16日

我的眼里只有BUG,年会变成代码讨论会

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2019年1月16日

编码、测试、调试阶段常见BUG难点及解析

通常,新的功能包括能够添加新的配置到系统中——例如,一个用于手机号码转换的新的配置文件。测试它能否添加新的配置文件是很自然的。但是,我发现我们很容易忘记去测试删除配置文件是不是同样ok。
2019年1月14日

嵌入式开发的三重境界,你到哪一层了?

在第一重境界时的表现是热衷学习和使用新的技术,但都限于局部,比如新的CPU,可编程技术,网络,有线无线,各种嵌入式操作系统,各种总线,甚至于新的存储器件。
2019年1月11日

嵌入式软件工程师经典面试题127道

在同步文件IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行,而异步文件IO中,
2019年1月7日

不是嵌入式坑了你,而是你坑了嵌入式

2,各种硬件平台的生产力工具不统一。编码,编译,调试,烧录…各个方面都是大坑。使用的语言,操作系统平台,芯片性能也不统一。作者表示,最多的时候,电脑上有5个编译环境,还不包括自己学习用的环境。
2018年11月26日

送给初学者:嵌入式Linux C入门大全

程序的生成一般使用的是从x86到目标机的编译工具,程序的开发工具是运行于x86机器上的可执行程序,而是用开发工具生成的目标是以目标机器代码为实体的映像文件或者可执行程序,这个工程称为“交叉编译“。
2018年10月12日

嵌入式最基础的GPIO接口操作了解一下!

S3C2440的GPFCON、GPFDAT寄存器地址分别是0x56000050、0x56000054,通过软件读写它们的地址可以访问这些寄存器。S3C2440芯片手册对这些寄存器的介绍如下图:
2018年8月14日

你的简历应该包含这些!一位谷歌的工程师教你如何写好一份简历

看简历的人读你的简历时,需要做判断,所以在简历里需要事实和数目。如果你写“迅速的提高了软件的操作效率”,看简历的人很难判断你成就的难度。但如果你写“在3个星期内,把软件的操作效率提高了40%”
2018年8月3日

嵌入式er日常!摆正学习态度,不做野code monkey

不是会写个链表就能说掌握了数据结构,不是会把男人和女人的共性抽成人这个类就掌握了面向对象,也不是给杂乱无章的内部实现外面加一层看上去光鲜的API(外观模式)就掌握了设计模式....
2018年6月25日

嵌入式er日常!沉思,大学助你成长or 让你堕落?

何谓大学?前清华校长梅贻琦说过:“大学者,非大楼也,乃大师也。”师者,所以传道授业解惑也。所以说,大学应该是一个学生学习、教师教授的地方,任何歪风邪气都应该被过滤。
2018年6月24日

在C语言开发中,指针内存一直是重点,谈谈程序员对内存的理解

进程只能操作位于物理内存中的页面。当进程引用一个不在物理内存中的页面时,MMU就会产生一个页错误。内存对此事做出响应,并判断该引用是否有效。如果无效,内核向进程发出一个“segmentation
2018年6月20日

考一考!嵌入式ARM面试题之IIC总线协议

理论上是不会这样设计的,如果一定要这样做的话,可以通过硬件上设计,控制器件是否挂载总线来实现(方法可用一个开关电路切断器件SDA或者SCL是否接入总线来实现)
2018年6月11日

从Uboot到Linux技术内幕,大神带你深入分析 boot loader......

就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。
2018年6月7日

嵌入式er日常!我的面试准备

Linux系统的基础知识,包括gcc(优化指令,如-O1;-i,-E,-s,-c,-o)、gdb、ln、网络等基本指令,Makefile,公司很喜欢会shell脚本的(*)
2018年6月4日

这可能是介绍Linux进程间通信方式和原理最详细的文章

V消息队列。有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。消息队列是随内核持续的。
2018年6月4日

嵌入式er日常!2年嵌入式系统程序猿的感悟

指的是Linux底层的库和驱动,音视频实质上也是系统的一个子类。但音视频处理逻辑比较复杂,一般会把音视频独立开来。我接触的系统,采用C进行编程,包括u-boot,busybox,内核,驱动,基础库。
2018年6月1日

世健eSHOP两周年再添Philips新成员,Excelpoint开启采购特惠月

世健eSHOP是亚太区领先的元器件授权代理商——世健系统(香港)有限公司旗下的专业网上交易平台,100%原装正品保证,收录产品信息逾6万条,并且每日更新库存数据,保证每条信息均真实、有效。
2018年6月1日

实例讲解嵌入式C语言指针,初学者必备!

二、指针是什么东西想说弄懂你不容易啊!我们许多初学指针的人都要这样的感慨。我常常在思索它,为什么呢?其实生活中处处都有指针。我们也处处在使用它。有了它我们的生活才更加方便
2018年5月31日

一名10多年工作经验的工程师,谈谈对于研发工作的感悟

12.企业里会有许多考验,任何时候都是在考验你的耐心,忠诚,敬业精神,所以很多行为装是没有用的,领导一眼就看穿了,除非你一直装下去......最后变成了真的,不装都不习惯了。
2018年5月31日

Linux系统进程的一些知识总结,进程与线程之间的纠葛...

4、还有一些技巧,就是fork()两次,父进程fork一个子进程,然后继续工作,子进程fork一个孙进程后退出,那么孙进程被init接管,孙进程结束后,init会回收,不过子进程回收还要自己做。
2018年5月30日

如何选择一个合适的嵌入式操作系统?Linux操作系统实时性分析

Linux采用虚拟内存技术,进程可以运行在比实际空间大得多的虚拟空间中。在分时系统中,虚拟内存机制非常适用,然而对于实时系统这是难以忍受的,频繁的页面换进换出会使得系统进程运行无法在规定时间内完成。
2018年5月29日

毕业三年,从懵懂的小白,成长到现在独挡一面,感谢嵌入式带给我的成就感!

出来工作也快三年了,也是到了一个需要自己反思思考的阶段。在这里,我只是想单纯的分享一下我的职场生涯。一、是为了总结反思,看看自己的得失;二、当然也是希望各位前辈们能指点一二(*^__^*)
2018年5月24日

工作四年后,一位嵌入式er的经验与感悟总结

刚进公司,恰适十周年庆,活动当晚奖励、抽奖。在公司10年以上的、8年以上的、5年以上的,都有大奖,无非是苹果的ipad、iphone以及现金。在我进公司前,全公司都是去国外旅游的。
2018年5月21日

汽车车牌是如何识别的?ARM Linux下车牌提取过程......

作为嵌入式er,不仅要看到行业的发展趋势,也要分析分析背后的一些关键技术。下面是一位嵌入式er开发车牌识别的一些经验整理,希望对大家能有所帮助。
2018年5月18日

嵌入式Linux主设备号和次设备号详解

分别是主设备号,0,1,3,7,70,71都是次设备号。一般的,主设备号标识出与设备关联的设备驱动。如
2018年5月18日

面试如果被问到Linux设备驱动模型怎么答?看完这篇就能给出满意答案了

kobj_kset_join(kobj);//把kobj的entry成员添加到kobj->kset>list的尾部,现在的层次就是kobj->kset->list指向kobj->entry
2018年5月17日

中兴事件迎转机,特朗普为何会360度大转变?ARM与中国合资能否规避美国制裁带来的风险呢?

美国发布对中国产品征收关税的清单建议,该清单涉及航空航天、信息和通信技术、机器人和机械等行业。美国贸易代表署表示,清单针对的是中国“迫使”美国公司将技术和知识产权转让给中国本土公司的“不公平”政策。
2018年5月16日

远离浮躁!一位从技术岗位走出来的工程师分享给新人的一些切身体会

顺利的跳过笔试这关直接录取。在工作一周的工作履历介绍后,波哥和老蔡直接商量把我纳入了硬件开发部,进入我人生的第一份正式研发工作。硬件5年,软件3年,电梯控制,伺服,变频器,
2018年5月14日

Linux 设备驱动的固件加载详解

返回,如果固件请求成功,返回0。该函数从用户空间得到的数据未做任何检查,用户在编写驱动程序时,应对固件映像做数据安全检查,检查方向由设备固件提供商确定,通常有检查标识符、校验和等方法。
2018年5月11日

从希冀到执着再到迷茫,一位嵌入式er给未来的自己定下初步目标

关于面试,这里插一段,也是唯一一次失败的第一次面试经历,在我们家省会那边,之前毫无准备去一家公司面试完,然后技术二面直接被刷。那时候面试官问我一个问题:你到底想做哪个工作?
2018年5月11日

若想成为一名Linux下编程高手,必须能对各种系统调用有透彻的了解

即使除去上面的原因,在平常的编程中你也会发现,在很多情况下,系统调用是实现你的想法的简洁有效的途径,所以有可能的话应该尽量多掌握一些系统调用,这会对你的程序设计过程带来意想不到的帮助。
2018年5月9日

从不后悔,自己的选择!一位嵌入式er找工作面试经历

反反复复了两三次,还是找工作了,没有考研,面对别人的疑问,我只是说出了心里的一句话----思前想后,终究觉得不适合!下面就谈一下找工作的一些情况!也算是经验经历分享给大家。
2018年5月7日

史海钩沉!GNU Linux发展简史

如果说Stallman创立并推动了自由软件的发展,那么,Linus毫不犹豫奉献给GNU的Linux,则把自由软件的发展带入到一个全新的境界。
2018年5月3日

嵌入式er日常!一个搞电子制造的实业代工故事

也正是因为这些订单,C公司得以迅速的发展。不得不说C公司的员工几乎个个都很聪明与勤奋,不仅工作卖力,而且还勤奋好学,
2018年5月3日

学得越多,发现自己知道的越少!Android与RTOS

研究生做了两年Android应用,实习时转了嵌入式应用软件开发,拿着一块移植了RTOS的设备学习。入门了才发现,两者都是开源、稳定、经历众多设备厂商打磨的优秀操作系统,根据以下几点对比学习。
2018年5月3日

从行业到技术,一位嵌入式er带你清晰总览嵌入式行业职业规划...

汽车电子适合汽车紧密相连的产业,下面的导航设备,车载娱乐设备,车辆控制系统都是准标配设备,可以说是一荣俱荣,一损俱损。近几年国家大力扶持新能源电动汽车行业,相信汽车电子也会保持一个高速的增长。
2018年5月2日

史海钩沉!电磁学是这样一步步发展而来的...

1945年,美国的夏品发明了硅太阳能电池,这是一种当太阳光或灯光照到其PN结上时能产生电能的元件,广泛用于人造卫星,太阳能汽车,钟表,台式计算器等。提高这种元件转换效率的研究与开发工作仍在进行中。
2018年5月2日

中兴第一季度净利大增39%,但还未评估美国禁令带来的影响。远离高通后,业界谣传联发科又停止向中兴出售芯片

有分析认为,如果美国政府试图切断中美科技企业之间的合作,影响将是难以估量的。高通、Intel、IBM、NVIDIA、AMD等半导体巨头都在中国有大量投入与合作,与中国公司或机构组织的关系也非常密切。
2018年4月28日

差点泡沫的大学象牙塔,只要遇到机会,还是可以学很多实用的东西....

再到后来就是工作了,我是没有上大四的,我大三一结束就离开学校了,放弃了好多比赛,放弃了跟室友们的最后一年,放弃了很多回忆,然而现在想起来,一切都是值得的,我收获到的远远高于我失去的!
2018年3月28日

不用买开发板, 使用 SkyEye 模拟 ARM Linux

的最新版(https://sourceforge.net/projects/skyeye/),本文用的是
2018年3月26日

浅谈I2C总线,有时候它也叫 IIC

也是高位先传输。如果数据接收者无法再接收更多的数据,它可以通过将SCL保持低电平来中断传输,这样可以迫使数据发送者等待,直到
2018年3月20日

月薪20K不是梦!学会RTOS给你的身价增增值,嵌入式操作系统UCOS-II总览

μC/OS-II任务的调度是由调度器完成的。所谓调度器实际上是一个函数OSShed();此函数通过搜索任务就绪表来获得最高优先级的就绪任务,在由该任务的优先级来获得任务的控制块再来实现任务的切换。
2018年3月7日

从一个不起眼的小公司逐渐成为半导体行业巨头,Microchip CEO史蒂夫桑吉不一般的“扩张”之路

自1989年Microchip成立以来,其专有的PIC单片机架构已被市场广泛接受。根据Gartner每年公布的排名,Microchip的全球量在1990年仅排在第20名,在1993年上升到第8
2018年3月1日

这是一篇非常不错的介绍U-boot工作机制的好文

根据参考文献4,INTSUBMSK寄存器是一个32位的寄存器,但是只使用了低15位。向其中写入0x7fff就是将INTSUBMSK寄存器全部有效位(低15位)置一,从而屏蔽对应的中断。
2018年2月28日

Uboot其实是一个复杂的单片机程序,uboot编译体验

在开发阶段,我们想让它增加更多的功能,比如说加入定flash的功能,因为在开发中(为了开发方便),内核也是通过uboot通过网络或USB把内核下载到开发板中去的。
2018年2月26日

超实用!一位嵌入式高手摸索出的Linux内核编译步骤和经验

根据我们的目标CPU架构,从内核源码arch/arm/configs目录下,找一个与目标系统最接近的配置文件(例如s3c2410_defconfig),拷贝到内核源码根目录下,命名为.config。
2018年2月26日

我们吃蛋糕,手中的盘子小,却可以吃掉大蛋糕,RAM就是这样运行比自身更大的程序

一个系统启动后,芯片有初始指针,这个指针指向一个地址,这个地址的命令既系统的初始指令。不同芯片的初始地址不同,有的在0X00(头),有的在0X4000(中间),有的在0xFFFF(末尾)。
2018年2月8日

工资等于零花钱!坚决不上市的华为,2017年给员工这么多分红和奖金

我们知道,华为是一家民企,1%左右的股份由任正非持有,华为员工持股98.7%,没有资本家剥削,几百亿的利润都是持股员工分享,不过有股份分配的员工通常要在15级以上,当年的业绩考核达到A和B+。
2018年2月6日

Uboot与Linux之间的参数传递详解

init/main.c中的start_kernel函数中会调用setup_arch函数来处理各种平台相关的动作,包括了u-boot传递过来参数的分析和保存:
2018年2月5日

嵌入式系统学习之Openwrt与其它系统架构对比

openwrt使用的C库是uClibc,并不是使用glibc,它是一个面向嵌入式Linux系统的小型的C标准库,uClibc比一般用于Linux发行版的C库GNU
2018年2月4日

关于QT,你需要知道这些基础知识

Qt一开始是由奇趣公司开发的,后来被Nokia收购了,然后再被Digia收购了。所以有的人会误以为Qt就是为了塞班系统而生,是个落伍的产物。
2018年2月1日

切勿把方法当成捷径,一位嵌入式er的学习心得分享

8、理论与实践相结合,但是理论先行。比如,先看一遍模电理论,感觉云里雾里,这时可以学习Multisim仿真,再回过头来看理论,效果会好一些。
2018年2月1日

如何学习嵌入式软件?一位嵌入式er的学习心得总结

在学习操作系统原理的时候,已经有介绍文件系统了,而且不需要深入研究文件系统的具体算法,只需要了解其特性再学会使用它就可以了。如:NFS、FAT32、NTFS、yaffs2、ext4、ZFS等。
2018年1月30日

硬件工程师养成之硬件设计的实践路线

a、proteus。这个软件很适合仿真单片机,元件库也挺多的,但是有个致命的缺点,就是太智能了。单片机不接电源、不接晶振也能正常工作,这跟实际有很大出入,所以笔者建议学单片机,还是用开发板吧。
2018年1月30日

硬件高深莫测?高手带你快速过一篇硬件原理

3、电路分析基础。其实电路基础的理论并不难,但是有些抽象的东西,是暂时不能很好地理解,比如说受控源(其实就是三极管),所以学完模电还要再回过头来再看一遍。这里重点掌握戴维南定理,不然后面没法学。
2018年1月30日

大神带你动手写一个Simple Bootloader,囊括嵌入式Bootloader的核心和精华

实际上,异常向量表不一定非要位于地址0x00处,CP15协处理器中的c1寄存器的第13位用来控制异常向量表的起始地址。该位为0时,异常向量表位于低地址0x00处;该位为1时,异常向量表位于高地址
2018年1月25日

揭开OS的面纱,一位嵌入式er 初探Linux kernel之重点Linux的进程管理

另外还有怎样生产进程、怎样切换、怎样销毁……这些由谁完成?当然是OS,对于linux,当然是kernel了。毕竟OS就是用来跑程序的,而进程就是程序的灵魂,可见进程管理的重要性,咱就从进程说起先。
2018年1月24日

嵌入式未来一段时间还是Linux天下,一位嵌入式er初探Linux kernel经验

另外,你需要明白一些Linux必备的一些常识性名词解释知识,这里罗列一些名词,不明白的不再一一阐述,自己百度,Google:管态、目态、内核空间、用户空间、POSIX、system
2018年1月23日

嵌入式 uboot裁剪的方法及思路

另外,如果需要动态修改环境变量,环境变量还需要单独分配一个flash扇区用于保存。这样大约就需要64k+64k的flash空间。如果我们不需要动态修改环境变量,可以省去一个扇区的Flash开销。
2018年1月22日

为什么不直接把真实的文件系统配置为根文件系统?Linux根文件系统的挂载过程详解

接下来,Kernel_Start会去调用rest_init()并会去创建系统中的第一个进程Kernel_Init,并由其调用所有模块的初始化函数,其中ROOTFS的初始化函数也在这个期间被调用。
2018年1月22日

你的Coding style规范否?大神谈谈为Linux内核写驱动的编码规范

这是一个检查代码是否符合内核编码规范的的脚本。顾名思义,checkpatch是用来检查patch的,默认的调用也确实如此。如果用来检查原文件,需要加上“-f”的选项。
2018年1月16日

嵌入式Linux设备驱动之总线、设备、驱动之间有何关系?

platform_driver。linux驱动中platform总线用的非常多,以platform总线说明总线,设备,驱动的注册顺序,注意这里是以先调加设备为例。
2018年1月15日

嵌入式Linux下最常用的C语言编译器GCC命令详解

资源受限的时候一些优化选项会增加可执行代码的体积,如果程序在运行时能够申请到的内存资源非常紧张(如一些实时嵌入式设备),那就不要对代码进行优化,因为由这带来的负面影响可能会产生非常严重的后果。
2018年1月11日

一位嵌入式Linux菜鸟设备驱动学习之路

gpio_keys_probe详细分析参考:http://www.cnblogs.com/cyc2009/p/4127496.html*/gpio_keys_probe(struct
2018年1月8日

嵌入式Linux上的应用程序开发只有高手才能完成?一起来打破这种“迷信”

name},例如libsocket.so,所以当你需要告诉GCC使用这些库的时候,你就可以使用-lsocket选项。通常,这两个命令是结合在一起使用的,例如引用X11程序库的时候,我们可以这样:
2018年1月3日

简单明了!高手总结嵌入式软件方法步骤,你要知道的都在这里了

在学习操作系统原理的时候,已经有介绍文件系统了,而且不需要深入研究文件系统的具体算法,只需要了解其特性再学会使用它就可以了。如:NFS、FAT32、NTFS、yaffs2、ext4、ZFS等。
2017年12月25日

大神讲解!谈谈设备驱动的作用,有无操作系统Linux设备驱动有何区别?

其次,我们还需要将设备驱动融入内核。为了实现这种融合,必须在所有的设备驱动中设计面向操作系统内核的接口,这样的接口由操作系统规定,对一类设备而言结构一致,独立于具体的设备。
2017年12月20日

邂逅Curiosity 开发板,一‘读’芳容” Microchip有礼相赠!

想了解更多关于Curiosity开发板的信息吗,那就快来参与我们的活动吧,不仅可以学知识,还可以有奖品拿哟!
2017年12月19日

你不曾来,怎能变NB

关注这个时代最火的嵌入式ARM技术、产品,分享嵌入式技术经验、心得。你想要知道的一切都在这里啦~
2017年12月19日

开源项目makefile晦涩难懂?能改就不写?学会编写自己的Makefile,让别人对你投来羡慕的目光

需要注意的是,clean后面没有条件,而clean本身也不是文件,它只不过是一个动作名字,其冒号后什么也没有,那么,make就不会自动去找文件的依赖性,也就不会自动执行其后所定义的命令。
2017年12月14日

一位嵌入式er大牛的年度总结,从月薪7K到年薪30W!

感情方面,有点糟糕。谈了快三年的女朋友前不久和我正式分手,有点难受,不过觉得追求她的人很多也就不担心她;朋友圈在缩小,计划多交工作中新朋友,老同学偶尔手机联系。
2017年12月12日

嵌入式开发为什么选择C语言?为什么不选汇编C++?

嵌入式开发是在操作系统内部做开发的,操作系统所有的内核几乎都是C语言编写,如果我们也使用C语言做开发,必定会具备一定的优势。
2017年12月6日

智能插座远程控制电器很好玩!如果你有单片机或嵌入式基础,你也可以自己动手做一个...

消息处理函数,一定要放在主循环中,有的开发者习惯在中断响应函数中做消息处理,容易导致串口数据丢失。中断中一定只做简单的处理,本代码中只是将中断接收到的数据存到数组中。
2017年12月5日

时光匆匆,笑容依旧!一位嵌入式er工作1年后的总结

技术上希望更加精进。一方面继续深入工业联网监控,一方面学习新的知识,数据分析,数据处理之类的。生活上,最大的希望是早点睡,希望自己能够做到每天11点左右就睡觉。跑步、健身、吉他当然都不能停。
2017年11月29日

嵌入式Android小项目之万能手机遥控器详解

Thread.currentThread().setPriority(Thread.NORM_PRIORITY);
2017年11月28日

嵌入式是否真的高大上?为什么没有嵌入式软件架构师?一位嵌入式软件开发工程师谈软件架构的设计

至此第二种的方案的架构(其实也谈不上架构了)相比第一种方案已经有了不少提升,至少让开发人员稍微轻松了些,对于其他定制需求,开发人员之需要修改这个callback处理,关注差异化部分就可以了。
2017年11月24日

台前幕后!从技术上解析Linux内核是如何工作的,对于嵌入式Linux开发者有所帮助

Kernel是模块化的:许多功能包含在模块内,然后动态地载入kernel中。这使得kernel的内核很小,而且在运行kernel时可以不必reboot就能载入和替代模块。Kernel的内核在boot
2017年11月23日

工程之中无小事,一个嵌入式工程师面试之路

嵌入式开发还是相当繁杂的。从芯片级开发到嵌入式产品的开发,或许我投的还是有些广,但是有一点大家一定要知道,把自己写在简历上的内容掌握,无论别人怎么问都不会出错,这样才能正确体现自己的实力
2017年11月14日

简单的MP3项目深度解读!MP3开发流程图,让大家看看框架里面都有啥......

MP3的设备驱动程序包括SD卡的驱动程序,VS1003硬件解码芯片的驱动程序,DS1302的驱动程序,sensor的驱动程序,显示驱动程序等。这些驱动程序存储的位置都是单片机的flash。
2017年11月13日

时间飞逝!一位older嵌入式er分享嵌入式系统开发心得及体会

嵌入式系统开发经验对于提升我们解决问题的能力有及大的帮助。因为我们系统性的知道了软件是如何被组织在CPU上运行的,这对于我们分析和解决问题很有意义,对于自己解决复杂问题的信心也很有帮助。4)
2017年11月8日

你可能保存.congfig文件的方法一直都是错误的,教你正确地保存编译内核产生的.config文件

这样做的优点相当多了就,节省空间以至于Linux内核的代码量不会太大,第二对比差异的时候好对比一些。更重要的是这个是一个正统的方式。完整命令:
2017年11月6日

嵌入式软件和PC软件有何区别?答案在这里

2.会看懂英文用户手册和硬件原理。应为这方面的很多硬件都是外国生产的,所以要能看懂这些文档。对于软件工程师来说,硬件就是一堆寄存器,所以你要看懂硬件里有哪些寄存器,每个有什么作用。
2017年11月3日

嵌入式Linux设备驱动开发思想进阶之驱动分层与驱动分离

如果我们不进行上图的主机和外设分离,外设a、b、c和主机A、B、C进行组合的时候,需要9个不同的驱动。设想一共有m个主机控制器,n个外设,分离的结果是需要m+n个驱动,不分离则需要m*n个驱动。
2017年11月2日

操作系统为什么会有上下文这种概念?带你深入理解上下文基础知识

由于中断上下文不属于任何进程,它与current没有任何关系(尽管此时current指向被中断的进程),所以中断上下文一旦睡眠或者放弃CPU,将无法被唤醒。所以也叫原子上下文(atomic
2017年10月31日

嵌入式er日常!进入中兴一年后最大的收获

在大公司的一个好处就是规范化,一年的熏陶,让自己现在有了更好的写代码的习惯,写的代码也更规范了,自己对软件架构也有了更多的了解。
2017年10月27日

如果说linux makefile是一位蒙着面纱的美女,那么我们今天就来揭开她的面纱

关注这个时代最火的嵌入式ARM技术、产品,分享嵌入式技术经验、心得。你想要知道的一切都在这里啦~
2017年10月25日

单片机有最小系统,Uboot同样也有, mini-uboot 启动过程简单分析

关注这个时代最火的嵌入式ARM技术、产品,分享嵌入式技术经验、心得。你想要知道的一切都在这里啦~
2017年10月25日

嵌入式Linux驱动和固件有何区别?供应商是如何用固件压缩成本的?

返回,如果固件请求成功,返回0。该函数从用户空间得到的数据未做任何检查,用户在编写驱动程序时,应对固件映像做数据安全检查,检查方向由设备固件提供商确定,通常有检查标识符、校验和等方法。
2017年10月17日

少走弯路系列!嵌入式linux设备驱动调试移植的一些套路

如果是飞线过来的模块,而且你又不确定硬件工程师的操作是完全正确的,是不是每条线都接的是对的,这时候你就必须搞到贴片图和原理图,然后和板子上的飞线一条一条线的核对一遍。如果准确无误,那你就开工。
2017年10月17日

初学linux 驱动开发,路漫漫其修远兮

核心使用该列表来判断对于一个设备该使用哪一个驱动程序,热插拔脚本使用它来确定当一个特定的设备插入到系统时该自动装载哪一个驱动程序。
2017年10月16日

深度好文!从天龙八部中感悟出的嵌入式er的核心竞争力

当然,这里并不是说工具不重要。对于个人来讲,会使用一款芯片或一款软件,乃是安身立命的基础,也是实现核心竞争力的基础。而对于企业来说,道理是一样的。所以在嵌入式行业,必须做到内外兼修,方能成大业。
2017年10月9日

一位电子工程师回顾大学四年学习的感概以及对大学课程的一些见解

当然,在上高数的时候,我们的高数老师——牛大田老师,经常跟我们说,信号分析中会用到哪些,经常提醒我们学好微积分,学好傅里叶变换,虽然没有提到在电路中的应用,但是估计很难找到这样的高数老师了。
2017年9月28日

ARM-Linux开发与MCU开发有何不同?ARM-Linux的基本开发环境介绍

这个与开发环境的硬件设备是有直接关系的,由于没有硬件仿真器,故ARM-Linux开发时通常不采用仿真器下载;这样看似不方便,其实给ARM-Linux的应用开发提供了更多的下载方式。
2017年9月27日

如何把驱动代码加入到Linux Kernel,你需要知道怎么修改这两个文件Kconfig*Makefile

menuconfig(或xconfig等)时,从Kconfig中读出菜单,用户选择后保存到.config的内核配置文件中。在内核编译时,主Makefile调用这个.config,就知道了用户的选择。
2017年9月25日

一位嵌入式er从菜鸟成长为老鸟的经历,坚持下去就会有收获!

偶然看到?不对,坚持,早晚会看到这些资料的!!一点点积累,一点点收获,没有更多的人教自己,只有自己学习,自己探索,坚持就会有收获,就是这样的~
2017年9月22日

嵌入式应用层开发应该学习什么?真实的嵌入式应用层开发学习曲线

精通嵌入式Linux下的程序设计,精通嵌入式Linux开发环境,强化对Linux应用开发的理解和编码调试的能力,包括系统编程、文件I/O、多进程和多线程、网络编程、GUI图形界面编程、数据库。
2017年9月21日

一个好的Makefile应该能准确识别编译目标与源文件的依赖关系,教你如何编写一个通用的Makefile

%.c,.%.d,$(SRC),表示将SRC中的以*.c结尾的源文件名替换为.*.d的形式,比如main.c对应着文件.main.d,这就是main.c的依赖关系文件,且是隐藏的。
2017年9月19日

三个实例来讲解Linux驱动,让新手快速从代码层了解什么是Linux设备驱动

当一个文件关闭,通常需要释放已使用的内存和任何打开文件时关链到的变量。但是,同样的因为本例十分简单,这些工作这里都没有做。
2017年9月18日

华为在日本高薪招聘引起轰动,不过这可能是当地人少见多怪了...

大多数日本科技专业的学生都想加入日本著名的公司。为了吸引最优秀的人才,华为再次抛出了“高薪资”橄榄枝,尽管华为称大多数外国公司都通过提供类似的工资水平来雇佣优秀的工程师。
2017年9月18日

Linux内核中makefile有什么作用?深入解析makefile工作过程和原理

VERSION=2,PATCHLEVEL=4,SUBLEVEL=18,EXATAVERSION=-rmk7,它们共同构成内核的发行版本KERNELRELEASE:2.4.18-rmk7
2017年9月5日

Uboot系统初始化为何要初始化堆栈?为何C语言的函数调用要用到堆栈,而汇编却不需要初始化堆栈?

可以得到dump_u-boot.txt文件。该文件就是中,包含了u-boot中的程序的可执行的汇编代码,其中我们可以看到C语言的函数的源代码,到底对应着那些汇编代码。
2017年8月31日

一位驱动工程师工作3年后的感悟,给想做驱动的新手们一些参考...

kernel里面的为好,毕竟是做驱动,而不是去为了camera效果一直去tunning。tunning需要专门的人去做,一旦专门tunning就很难有时间做别的活了。当然有些公司给tunnning
2017年8月28日

为什么要有uboot?带你全面分析嵌入式linux系统启动过程中uboot的作用

(2)可以认为启动分为2个阶段:第一个阶段是uboot到OS启动;第二个阶段是OS启动后到rootfs加载到命令行执行;现在我们主要研究第一个阶段,android的启动和linux的差别在第二阶段。
2017年8月24日

图文!带你走进嵌入式ARM MMU神秘的内部世界

enty),他直接映射的是1M的内存空间。具体的可以参考arch/arm/kernel/head.S中的__create_page_tables函数,限于篇幅,这里就不展开说了。
2017年8月21日

简单说,嵌入式系统和通用计算机主要有这几点区别

嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户应用软件等部分组成。它具有“嵌入性”、“专用性”和“计算机系统”3个基本要素。
2017年8月18日

Linux系统是软件开发历史上的一个传奇, 我们能从linux系统上面学到什么?能够做什么呢?

kernel中学到东西?是看书呢,还是看代码呢?是每一行都看呢,还是按照模块看呢?是掌握主要原理呢,还是看实现技巧呢?是看高版本呢,还是先熟悉低版本呢?下面,我想就自己的经历谈谈自己的看法,
2017年8月9日

入行7年的嵌入式er,分享嵌入式开发经验,以及需要哪些知识...

对于嵌入式软件开发,从事一两年后,一定要问问自己uart,spi和i2c这些总线我们是不是都已经很熟悉了,对定时器和中断我们是否都掌握了。
2017年8月8日

大佬请给小白们解释一下,linux驱动程序结构框架及工作原理...

我们来写一个最简单的字符设备驱动程序。虽然它什么也不做,但是通过它可以了解Linux的设备驱动程序的工作原理。把下面的C代码输入机器,你就会获得一个真正的设备驱动程序。
2017年8月7日

话说,有或者无操作系统的嵌入式Linux驱动设备有何区别呢?

其次,我们还需要将设备驱动融入内核。为了实现这种融合,必须在所有的设备驱动中设计面向操作系统内核的接口,这样的接口由操作系统规定,对一类设备而言结构一致,独立于具体的设备。
2017年8月4日

一位嵌入式er在RTOS项目组的开发经历

还有对嵌入式系统的软件BUG调试也有所掌握,感觉嵌入式里面的软件调试时,发现东西跑飞了。这时可以有多个途径查找。也许是没禁掉看门狗,或者那些pend_sv中断在内存中根本没有初始化正确,
2017年8月3日

为何刚毕业工作的嵌入式er最先做的任务是GPIO driver、LED drivers,老工程师如是说...

ports的章节都是比较简单的,非常适合刚入行的工程师。虽然GPIO子系统相关的硬件比较简单,没有复杂的协议,不过,对于软件抽象而言,其分层次的软件思想是每个嵌入式软件工程师需要掌握的内容。
2017年8月1日

电视盒子经常看到的“音频透传”以及背后的技术

接下来看一下android中关于音频输出的一些属性定义,以及之前研究音频子系统时做的一些信息搜集和分析工作结论(基于kitkat):
2017年7月28日

简洁明了!高手带你理解ARM-Linux的启动过程

machine_desc结构,在后面的C代码(start_kernel开始执行的代码)会使用该变量对象。在tqs3c2440开发中的__lookup_machine_type函数就是返回该对象指针。
2017年7月28日

有图文详解Linux文件系统,让你对嵌入式开发有更深的认识

通过多任务机制,每个进程可认为只有自己独占计算机,从而简化程序的编写。每个进程有自己单独的地址空间,并且只能由这一进程访问,这样,操作系统避免了进程之间的互相干扰以及“坏”程序对系统可能造成的危害。
2017年7月26日

有些技术确实可以在两、三个月内学通,嵌入式开发经验总结

目前流行的嵌入式操作系统有:linux、uC/OS、WindowsCE、VxWorks、PalmOS和QNX。其中VxWorks实时性很强,最稳定、可靠,但价格昂贵,而其他的都有各自的优点。
2017年7月24日

从入门到高手,嵌入式必会技能及学习步骤总结

了解真实项目的开发流程,掌握如何将所学知识应用到项目开发中。将模拟真实项目的管理过程,培养学员项目团队协同开发能力,项目文档编写能力和新知识的学习能力,为下一步就业做好知识上和心理上的充分准备
2017年7月21日

通俗易懂!高手带你理解嵌入式Linux中高端内存与低端内存

当要进行一次临时映射的时候,需要指定映射的目的,根据映射目的,可以找到对应的小空间,然后把这个空间的地址作为映射地址。这意味着一次临时映射会导致以前的映射被覆盖.通过
2017年7月19日

uC/OS操作系统与裸机程序最大的不同点是什么?嵌入式操作系统之UCOS-II总览

μC/OS-II任务的调度是由调度器完成的。所谓调度器实际上是一个函数OSShed();此函数通过搜索任务就绪表来获得最高优先级的就绪任务,在由该任务的优先级来获得任务的控制块再来实现任务的切换。
2017年7月18日

嵌入式开发必备SPI、IIC,高手带你理解SPI中的极性CPOL和相位CPHA

edge=后一个边沿=第二个边沿,对于开始电压是1,那么就是0变成1的时候(即在第一次1变成0之后,才可能有后面的0变成1),对于开始电压是0,那么就是1变成0的时候;
2017年7月13日

加深理解SPI总线协议,单片机软件模拟SPI接口

93CA6为例,如图1所示,介绍利用单片机的I/O口通过软件模拟SPI总线的实现方法。在这里,仅介绍读命令的时序和应用子程序。
2017年7月13日

工作一年后,谈谈嵌入式linux那点东东之整体框架

bootloader的第一阶段主要是汇编的代码,接着的第二阶段基本是c代码。这里主要是初始化了需要的外围设备,比如说网卡驱动,串口驱动等等,然后启动内核。
2017年7月12日

为什么很多驱动开发者工作多年,却精进不大?也许,是因为他们对驱动的理解有问题...

为方便我们加入各种驱动来支持不同的硬件,内核抽象出了很多层次结构,这些层次结构是linux设备驱动的上层。它们抽象出各种的驱动接口,驱动只需要填写相应的回调函数,就能很容易把新的驱动添加到内核。
2017年7月11日

看完这篇文章,绝对比啃几百页英文PDF快多了!带你深入理解USB通讯协议

相对地对于【控制写入】传输,主机会送出IN令牌封包,然后设备送出表示完成状态阶段的0长度的DATA1封包,主机再做出相对应的动作:送ACK握手封包、NAK握手封包或STALL握手封包。
2017年7月10日

一路走来,我的电子信息工程和嵌入式之路

到现在,依旧还是走在嵌入式的路上(应该算是嵌入式吧,哈哈),只是一路走来,一直在学习,在总结,也许实际的编码经验不足但足以学习新东西,能完成任务,而且处女座的本人是属于学到底,必解决之的那种。
2017年7月5日

如果把嵌入式Linux platform设备驱动过程比作相亲,那么总线即是红娘,设备是男方,驱动是女方.....

设备(或驱动)注册的时候,都会引发总线调用自己的match函数来寻找目前platform总线是否挂载有与该设备(或驱动)名字匹配的驱动(或设备),如果存在则将双方绑定;
2017年7月4日

嵌入式开发之Linux操作系统的内核kernel与用户之间的绝缘层-Shell详解

1)cpio恢复的路径,如果cpio在打包备份的时候用的是绝对路径,那么在恢复的时候会自动恢复到这些绝对路径下,同理,如果在打包备份用的是相对路径,还原时也将恢复到相对路径下。
2017年6月30日

一步步教你编写嵌入式Linux设备驱动程序,快上车!

register_chrdev需要三个参数,参数一是希望获得的设备号,如果是零的话,系统将选择一个没有被占用的设备号返回。参数二是设备文件名,参数三用来登记驱动程序实际执行操作的函数的指针。
2017年6月28日

嵌入式er日常!嵌入式高手的至高境界是怎样的?

2.只有一种处理器。就市场上的MCU、MPU、DSP和SOC处理芯片种类不下上百种,而且功能都有所侧重,所以一般的人也就只熟悉几种罢了。而高手看到的只是它们的共性。
2017年6月26日

面试时经常会遇到令人蛋疼的题目,你遇到什么让你无语、甚至想骂人的题?

函数调用过程对应着调用栈的建立,而函数返回则是进行调用栈的销毁,返回比调用过程简单多了,毕竟破坏比建设来的容易。在main、foo和bar函数的汇编显示中,我们都可以看到leave和ret两条指令:
2017年6月23日

嵌入式Linux系统是如何管理IO端口以及IO内存的呢?老司机给你讲讲

*name);这个函数从内核申请len个内存地址(在3G~4G之间的虚地址),而这里的start为I/O物理地址,name为设备的名称。注意,。如果分配成功,则返回非NULL,否则,返回NULL。
2017年6月22日

嵌入式er日常!公司有两种类型员工,你是哪一种?

我们观察到,第2种类型的工人极不情愿失去因为村庄增加价值而积累的财富(称之为金手铐);以至于其他村试图去挖走这个工人时,遭到了许多难以预料的坎坷。
2017年6月21日

带你清晰认识,Linux内核启动及根文件系统加载过程,快来涨姿势!

当以上所有的初始化工作结束后,start_kernel()函数会调用rest_init()函数来进行最后的初始化,包括创建系统的第一个进程-init进程来结束内核的启动。
2017年6月20日

抛砖引玉,教你学习各种总线技术

码分多路复用是所被传输的信号都会有各自特定的标识码或地址码,接收端将会根据不同的标识码或地址码来区分公共信道上的传输信息,只有标识码或地址码完全一致的情况下传输信息才会被接收。
2017年6月19日

嵌入式er日常!最近迷上了玩围棋

菜鸟上来不知道占角,上来的子就放在中间,不排除有高手这么用,但是这是不科学的。这棋盘上围住相同一块的目(区域),中间所部署的兵力是四条边的4/3,是四个角的两倍。
2017年6月16日

为自己找到方向,一位嵌入式er的成长之路

关注这个时代最火的嵌入式ARM技术、产品,分享嵌入式技术经验、心得。你想要知道的一切都在这里啦~
2017年6月16日

嵌入式er日常!一位自动化测试工程师的感悟

一直觉得,工作只是生活的一部分,我们往往容易在追求本末倒置,过多的追求工作而忽略了很多生活中值得体会的东西。当然,以下说的只是现今个人的体验,对与不对,都是心态的一个过程罢了。
2017年6月15日

嵌入式er日常!啥职业也需要不停的学习呀!

公司环境使用openocd与stlink配合烧录程序,几天前通过每次拔插stlink还是能够烧录stm32f103x的板子的,但是今天彻底不行了,
2017年6月12日

一位嵌入式老工程师,分享嵌入式开发经验心得

嵌入式系统开发经验对于提升我们解决问题的能力有及大的帮助。因为我们系统性的知道了软件是如何被组织在CPU上运行的,这对于我们分析和解决问题很有意义,对于自己解决复杂问题的信心也很有帮助。4)
2017年6月12日

嵌入式er日常!你还会回答新手们的提问吗?

个人觉得,很多新人在问问题的时候,应该适当把自己的姿态调低点,这样至少你的诚意还是够的,不过,现在的新人有时候却丝毫看不到,难怪官方讨论群(165620707)讨论的氛围比较低。
2017年6月5日

如果你在学嵌入式底层驱动,内核模块编程将是你的第一课!小白学Linux之内核模块编程详解

--------------------------------------------------------------------------------------------
2017年6月1日

经典!Linux由内核、shell、文件系统和应用程序四部分组成,带你走进嵌入式Linux系统的内部

通过多任务机制,每个进程可认为只有自己独占计算机,从而简化程序的编写。每个进程有自己单独的地址空间,并且只能由这一进程访问,这样,操作系统避免了进程之间的互相干扰以及“坏”程序对系统可能造成的危害。
2017年5月26日

嵌入式日常!跳槽指南之什么是好公司?

另外,当一个人选择了某个公司的城市,也选择了其背后隐含的一切,对于大多数人而言与城市的关联度将会随着时间的流逝而越来越高(这体现在学校、房子、人文背景等方面),所以适当对此进行考察也是有必要的。
2017年5月26日

图文详解!嵌入式Linux内核启动主要分为这三个阶段

当以上所有的初始化工作结束后,start_kernel()函数会调用rest_init()函数来进行最后的初始化,包括创建系统的第一个进程-init进程来结束内核的启动。
2017年5月22日

测试工程师与开发工程师有何区别?应届毕业生如何选择?来看看前辈的经历

刚毕业的电子专业新手们,从学习走向工作,往往对于未来没有过多的认知。因为技术和经验的原因,刚开始找工作可能会到处碰壁,在经济的压力下,往往做出一些没有经过深思熟虑的选择。就比如下面这位工程师:
2017年5月18日

俗话说要有“一技之长”,嵌入式er怎么建立自己的专长呢?

要搞技术,从走出大学的第一天起,甚至在大学毕业之前,就要清楚,自己的“一技之长”究竟应该建立在哪里。只有这样,才能明确奋斗和努力的方向,进而才有机会把握自己命运,主张自己的价值。
2017年5月12日

嵌入式Linux驱动入门!教大家一个Linux驱动开发的套路

熟悉linux平台的朋友都知道。在linux上,所有的设备都可以看成是文件。我们对设备的所有操作基本上都可以简化成open、close、read、write、io
2017年5月11日

一位嵌入式er的5年挨踢经历「下篇」,技术与职业的感悟!

到这里,我也不知道是否已经表达出了我想说的东西,总之在我看来,技术的广度和深度不是两条绝对不相交的平行线,对它们的探索和追求也是交互贯穿在我们的挨踢生涯中的。
2017年5月9日

讲道理!为什么嵌入式系统需要具有实时操作系统的特性?

关注这个时代最火的嵌入式ARM技术、产品,分享嵌入式技术经验、心得。你想要知道的一切都在这里啦~
2017年5月9日

看完惊呆!一位嵌入式er 5年面试挨踢经历

进入正题之前,说明下自己的背景,毕业5年多,至今一直在苏州工作,非985非211,一本本科,自动化专业硕士毕业,毕业后混迹IT圈,目前也顶多只能算是个吃住不愁的状态。好,闲话至此,进入正题。
2017年5月8日

吃鲸!为何四年嵌入式Linux老鸟要转行Android应用开发?

当然这其中也有其他的原因,嵌入式linux感觉是个很老的产业了,就拿我4年的嵌入式linux经验来说,还不如移动互联网1年的工作经验拿的高,要养家糊口,要还房贷,趁着移动互联网的尾巴,能抓则抓吧。
2017年5月2日

精品!这可能是最好的认识嵌入式Linux的文章了!

嵌入式Linux大厦是由很多层组成的,当我们想找一个人时,首先要明确他在那一层楼。同样的,我们遇到问题时,首先要知道是哪个方面的问题,然后才有可能知道到哪里寻找答案。下面我们把这座大厦进行一下拆解。
2017年4月28日

牛人在Ubuntu上模拟ARM开发环境

最终还是采用了一个ARM开发板,开始主要是通过HDMI连接屏幕,当成一个电脑使用。最后发现很多问题,比如WiFi不好用;就得使用有线网,去网上淘了个
2017年4月10日

从面试官的角度,学习下如何完善你的简历!

开发过一个实时操作系统作为练习项目。你工作的团队有多大?15个成员?哦,那么,你实际上负责哪部分的?消息队列?很好!请描述一下一个高优先级的任务向一个低优先级的任务发送消息时会发生什么情况?
2017年4月1日

Linux是否能在8位MCU上运行?结果出乎意料

2.6.34内核。事实上,它甚至可以运行一个完整的Ubuntu栈,包括X(如果你有时间等它启动)和gnome。
2017年3月23日

从宏观的角度讲解U-Boot的设备管理框架

下面我们分析serial_getc函数,其他的函数是类似的。该函数定义在cpu/arm920t/s3c24x0/serial.c文件,从这个路径我们就可以看出这是一个和处理器/平台相关的函数
2017年2月8日

教你简单理解IIC协议「总结篇」

SCL线呈现高电平期间,SDA线上的电平必须保持稳定,低电平表示0(此时的线电压为低电压),高电平表示1(此时的电压由元器件的VDD决定)。只有在SCL线为低电平期间,SDA上的电平允许变化。
2016年12月27日

讲道理,为何Linux系统空循环会导致CPU占有率飙升?

对于CPU来说,它一直是按照固定的频率取指令运行,没有负载高低之说,我们所说的负载高低其实是人感官的说法,比如top查看发现CPU占用率高,系统主要应用进程(如sh)反应慢,我们就说负载高。
2016年12月26日

讲道理!我们为什么要学RTOS?为什么选用FreeRTOS?

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2016年10月24日

嵌入式ARM学习总结(三)--IIC

如果读取的数据长度超过范围,会循环到整个Memory的第一页的第一个字节进行读(注意:在写数据时超过范围只是会循环到当前页的第一字节)。
2016年10月19日

谈谈uCOS和freeRTOS这两种实时系统的结构以及编程思想

好了,我刚开始学51的时候,也是这么写的,其实大家都是这么写的。当然这个还没有包括中断。如果加上中断呢?其实能琢磨RTOS的我想基本都会用中断了吧!但是能理解本质的不一定是全部。我还是画结构吧。
2016年10月9日

单片机软件模拟SPI接口—加深理解SPI总线协议

关注这个时代最火的嵌入式ARM,你想知道的都在这里。
2016年9月12日