单片机、嵌入式的大神都平时浏览什么网站?

作为一名摸爬滚打十余年的嵌入式开发老兵,经常有初学者问我:"大神们平时都看什么网站啊?"今天就借这个机会,全面梳理一下我和同行们常年收藏的"干货网站"。这些网站就像我们的"武器库",在不同开发阶段各显神通。废话不多说,直接上干货!

一、芯片厂商官方资源:硬核知识的源头

很多初学者总想着找二手资料,却忽视了最权威的官方网站。身为嵌入式工程师,芯片厂商的官网是必须要啃下来的硬骨头

1. ST(意法半导体)官网

作为STM32系列单片机的东家,ST官网是我几乎每天都要打开的网站。别看界面朴素,但里面的技术资料堪称宝库:

  • Reference Manual(参考手册):这是研究单片机的"圣经",详细描述了每个外设的寄存器定义和功能。记得有次凌晨三点,我为一个SPI通信问题焦头烂额,最后还是在RM的角落里找到了那个被我忽略的标志位。
  • Datasheet(数据手册):包含芯片的电气特性、引脚定义等基本信息。
  • Application Notes(应用笔记):这些是解决特定应用问题的实用指南,常常能给你打开新思路。
  • Errata Sheet(勘误表):记录芯片已知的bug,可能会救你于水火之中。记得有个项目,莫名其妙的系统死机,排查一个月后发现是芯片的已知错误,早看Errata就不会这么痛苦了。

官网还提供了大量的例程代码、开发工具和HAL库文档。我的经验是:与其到处问这问那,不如先把官方文档吃透

2. Microchip(微芯)官网

收购了Atmel后,Microchip旗下囊括了PIC单片机和AVR单片机(包括Arduino使用的ATmega系列)。他们的官网组织得非常清晰,技术文档质量也很高。特别是他们的应用笔记涵盖了从基础到高级的各种主题,对于理解单片机的工作原理非常有帮助。

3. NXP官网

NXP的ARM Cortex-M系列(如LPC、i.MX RT系列)、S32K汽车级MCU都相当优秀。他们的官网特色是提供了大量针对特定应用的解决方案文档,比如电机控制、无线充电、车载网络等。我曾经基于他们的参考设计快速完成了一个充电桩控制模块的开发,节省了至少一个月的时间。

4. 其他值得关注的芯片厂商官网

  • TI(德州仪器):MSP430系列单片机以及丰富的模拟器件资源
  • Cypress(赛普拉斯,现已被Infineon收购):PSoC系列可编程片上系统
  • Espressif(乐鑫):ESP8266/ESP32系列WiFi+蓝牙芯片
  • Nordic:nRF系列蓝牙低功耗芯片
  • Renesas(瑞萨):RL78/RX系列单片机

对这些官网,我的使用心得是:先收藏索引页面,建立知识地图;遇到具体问题再深入查阅。不要试图一次性读完所有内容,那样效率太低。

二、技术社区与论坛:集体智慧的结晶

官方资料解决不了的问题,往往在社区中能找到答案。以下这些社区论坛承载了无数工程师的经验和智慧:

1. 国际通用社区

Stack Overflow:这几乎是所有程序员的必备网站。嵌入式相关的问题可以通过标签如[embedded]、[stm32]、[freertos]等筛选。上面有不少业内大牛,解答质量普遍较高。有一次我遇到了FreeRTOS调度的诡异问题,Stack Overflow上一位匿名用户的回答让我恍然大悟,后来发现他是FreeRTOS的核心开发者之一。

Embedded.com:老牌嵌入式网站,提供大量专业文章和设计案例。虽然更新不是很频繁,但积累了20多年的内容,很多经典设计模式和技巧都能在这里找到。我常在解决具体问题后,到这个网站上找相关知识,补充理论基础。

Reddit的r/embedded、r/ECE等子版块:讨论氛围比较自由活跃,经常能看到业界最新动态和技术讨论。每次新工具或技术出现,这里通常是最早有人分享使用体验的地方。

EmbeddedRelated:专注于嵌入式系统的博客和论坛网站,内容质量较高,讨论也比较深入。

2. 国内技术社区

电子发烧友论坛:国内历史最悠久的电子技术论坛之一,资源丰富,尤其是单片机、FPGA等嵌入式开发相关的版块非常活跃。很多国内第一手资料和中文教程都是从这里流出的。不过需要注意的是,这个论坛里鱼龙混杂,需要具备一定的辨别能力。

正点原子/野火/ST/周立功等厂商论坛:这些开发板厂商的论坛往往有大量针对其开发板的实例和教程,对于刚入门的开发者很有帮助。记得我最初学STM32就是靠正点原子的教程入门的,虽然现在看来有些啰嗦,但对初学者非常友好。

EEWORLD论坛:工程师社区,讨论质量普遍较高,涵盖硬件设计、单片机、嵌入式Linux等领域。

RTThread社区:国产实时操作系统RT-Thread的官方社区,有大量关于RTOS应用的讨论和实例。他们的技术分享和文档质量都很高,而且社区氛围友好,对新手提问很有耐心。

开源中国:虽然不专注于嵌入式,但其中有不少嵌入式开源项目和讨论。

V2EX:程序员交流社区,虽然主要是软件开发者,但也有不少硬件和嵌入式的话题。

我在使用这些社区时,通常会先搜索历史帖子,很多问题其实已经有人讨论过了。如果确实是新问题,再发帖提问,并确保把问题描述清楚,附上必要的代码和日志。好的提问往往能得到更好的回答,这是在所有技术社区通用的真理。

三、代码宝库:开源平台与代码托管网站

现代嵌入式开发离不开大量开源资源和代码复用,以下这些网站堪称"代码的宝库":

GitHub:无需多言,这是全球最大的代码托管平台。几乎所有值得关注的开源嵌入式项目都在GitHub上有仓库。一些我常关注的优质项目包括:

  • FreeRTOS:最流行的嵌入式实时操作系统之一
  • LwIP:轻量级TCP/IP协议栈
  • libopencm3:开源的STM32外设库
  • RT-Thread:国产实时操作系统
  • Zephyr Project:可扩展的实时操作系统
  • Arduino核心库及各种外设库
  • mbed-os:ARM官方的物联网操作系统

使用GitHub的一个小技巧是,不要只看代码,还要关注Issue区和Pull Request,那里往往有最新的讨论和问题解决方案。我有次遇到一个USB驱动的问题,在代码中找不到答案,但在Issue讨论中发现了解决方法。

Gitee(码云):国内的代码托管平台,访问速度更快,也有不少国内优质的嵌入式开源项目。

Bitbucket:另一个代码托管平台,某些企业项目会选择使用它。

SourceForge:老牌开源软件托管网站,虽然现在风光不再,但仍有一些历史悠久的嵌入式项目在上面更新。

代码平台的使用建议:不要只是复制粘贴,而是要理解代码的工作原理。我见过太多工程师只会"拿来主义",遇到问题就束手无策。真正的高手是能够读懂并修改开源代码以适应自己需求的人。

四、博客与自媒体:经验与见解的分享

除了官方文档和社区讨论,个人博客常常包含最有价值的经验和见解。以下是一些值得关注的博客和自媒体平台:

1. 国际知名技术博客

Jack Ganssle的博客:嵌入式系统领域的泰斗级人物,他的博客包含了大量关于嵌入式设计、开发流程和最佳实践的文章。我特别推荐他关于代码质量和可靠性的系列文章,对提升开发水平很有帮助。

Embedded Artistry:专注于嵌入式系统架构和设计模式的博客,文章质量很高。

Interrupt Blog:由Memfault团队维护,专注于嵌入式系统调试和性能优化,内容非常专业。

Embedded.fm:不仅有博客,还有播客节目,邀请业内专家讨论嵌入式技术和趋势。

Hackaday:虽然偏向电子DIY,但有很多创新的嵌入式项目和技术分析。

2. 中文技术博客与公众号

泰晓科技:专注于嵌入式Linux,文章质量很高。

嵌入式Linux知识库:提供大量嵌入式Linux开发相关的教程和文章。

21ic中国电子网专栏:有不少行业专家的技术文章。

单片机教程网:虽然名字听起来很基础,但有一些深度内容。

电子技术应用单片机与嵌入式系统应用等杂志的公众号:定期推送优质技术文章。

Embedfire(野火)正点原子等厂商的公众号:有很多实用教程。

个人技术博客:国内也有不少嵌入式工程师维护着高质量的个人博客,可以通过搜索引擎或技术社区发现。

对于博客内容,我的阅读策略是:选择性阅读,重点关注有原创见解和实际经验分享的文章。纯粹的教程类内容,官方文档往往更准确;而经验分享和问题解决类文章,个人博客则更有价值。

五、在线学习平台:系统化学习的途径

系统学习新技术时,以下这些平台提供了结构化的课程和教程:

Udemy:有很多高质量的嵌入式开发课程,从入门到高级都有。我特别推荐FastBit的STM32课程,讲解深入浅出,对HAL库的使用讲解得很清楚。

Coursera:有一些知名大学提供的嵌入式系统课程,如华盛顿大学的"嵌入式系统"专项课程。

edX:同样有一些大学课程,如德克萨斯大学的"嵌入式系统"系列课程。

bilibili:国内视频平台上有不少嵌入式开发的教学视频,质量参差不齐,需要筛选。我常看正点原子、野火电子、洋桃电子等开发板厂商的官方账号,教程质量有保障。

慕课网中国大学MOOC等国内平台也有一些嵌入式相关课程。

在线课程的选择建议:看评价,试听一小部分,确认教学风格和内容深度符合自己需求后再投入大量时间。好的课程应该不仅教你"怎么做",还要解释"为什么这么做",帮助你建立系统性理解。

六、参考手册与标准规范:基础设施

嵌入式开发涉及大量协议和标准,以下网站提供了这些基础知识:

1. 协议标准网站

IEEE标准协会:提供多种通信和电子工程标准。

USB-IF:USB接口标准组织,提供USB规范文档。

Bluetooth SIG:蓝牙技术联盟,提供蓝牙规范。

W3C:虽然主要是Web标准,但随着物联网发展,Web技术也越来越多地应用于嵌入式系统。

MIPI联盟:移动设备接口标准,对于开发带显示和摄像头的嵌入式设备很重要。

2. 技术文档查询

Alldatasheet:电子元器件数据手册搜索引擎,找芯片datasheet的好去处。

Keil.com的文档中心:有大量ARM和Cortex-M相关的技术文档。

ARM开发者网站:提供ARM架构相关的详细文档和指南。

工作中,我常常需要参考这些标准文档,特别是在设计与外部设备接口时。例如,开发USB设备时,必须严格按照USB规范实现,否则可能在不同主机上出现兼容性问题。我会把常用的标准文档下载到本地,并做好标记和笔记,以便快速查阅。

七、元器件资源与工具网站:实用工具箱

嵌入式开发离不开硬件,以下网站提供了元器件信息和设计工具:

1. 元器件网站

Digikey、Mouser、Element14等电子元器件分销商网站:不仅可以采购元器件,其产品页面还包含详细的技术参数和应用资料。

LCSC立创商城:国内电子元器件采购平台,也有大量元器件资料。

Findchips:电子元器件搜索引擎,可以比较不同供应商的价格和库存。

2. 设计工具网站

立创EDA:在线PCB设计工具,对个人项目很方便。

CircuitLab:在线电路仿真工具。

WolframAlpha:强大的计算引擎,可以解决各种工程计算问题。

Online GDB:在线编译和调试工具,对于简单的代码测试很方便。

Calculator.net:提供各种专业计算器,如欧姆定律计算器、RC时间常数计算器等。

这些工具极大地提高了我的工作效率。比如,在选择滤波电容时,我会使用在线计算器快速计算不同频率下的阻抗;在设计PCB前,我会使用在线仿真工具验证关键电路的可行性。

八、行业资讯与趋势网站:把握发展方向

技术在不断发展,及时了解行业动态和新技术至关重要。以下网站提供了嵌入式行业的最新资讯:

EE Times:电子工程领域的权威媒体,报道行业新闻和技术趋势。

EDN:电子设计新闻网站,有大量技术文章和行业动态。

电子工程专辑:EE Times的中文版,关注中国电子行业。

Embedded Computing Design:专注于嵌入式计算领域的新闻和分析。

CSDN:虽然良莠不齐,但也有一些有价值的嵌入式技术资讯。

各大厂商的官方博客:如ARM Community、ST Blog等,通常会发布新产品和技术动态。

我通常会每周抽出一些时间浏览这些网站,了解行业动向。这种"技术雷达"意识帮助我多次提前布局新技术,在团队中起到了引领作用。比如,几年前我通过这些渠道了解到RISC-V架构的发展潜力,提前学习和储备了相关知识,现在正好派上用场。

九、垂直领域专业网站:深度专业知识

根据不同的应用领域,还有一些专门的垂直网站值得关注:

1. 物联网方向

IoT For All:物联网技术和应用案例分享。

IoT World Today:物联网行业新闻和分析。

MQTT.org:MQTT协议官方网站,提供协议规范和实现指南。

2. 汽车电子方向

AutoElectronics:汽车电子技术网站。

Vector官网:提供汽车总线(CAN、LIN、FlexRay等)的协议栈和工具。

AUTOSAR官网:汽车开放系统架构联盟,提供汽车软件架构标准。

3. 工业控制方向

Control.com:工业控制和自动化论坛。

PLCopen:PLC标准组织网站。

Modbus.org:Modbus协议官方网站。

4. 航空航天方向

NASA软件:美国航空航天局的开源软件仓库。

DO-178C相关资源:航空电子设备软件认证标准。

根据自己的专业方向,有针对性地关注这些垂直领域网站,可以获取更深入的专业知识。我在转向汽车电子领域时,就花了很多时间学习AUTOSAR架构和汽车总线协议,这些垂直网站提供的资料帮了大忙。

十、电子书与学术资源:知识的深海

虽然网络资源丰富,但系统性的书籍和学术论文仍然是深入学习的重要途径:

1. 电子书资源

O'Reilly Safari:提供大量优质技术图书,包括嵌入式系统相关的经典著作。

ScienceDirect:有不少嵌入式系统和电子工程的专业书籍。

Packt、Apress等技术出版社的官网:经常有特价电子书。

2. 学术论文资源

IEEE Xplore:电气电子工程师学会的数字图书馆,包含大量嵌入式系统研究论文。

ACM Digital Library:计算机协会的数字图书馆,有很多嵌入式软件相关研究。

arXiv:预印本服务器,可以找到一些最新的研究成果。

Google Scholar:学术论文搜索引擎,使用关键词可以找到相关研究。

我的经验是,虽然日常开发多参考网络资源和文档,但系统学习新领域时,精读1-2本该领域的经典书籍是最高效的方式。例如,学习RTOS时,阅读《µC/OS-III: The Real-Time Kernel》给了我系统的理解;研究ARM架构时,《ARM System Developer's Guide》提供了深入的技术细节。

十一、资源整合与使用技巧:化繁为简

面对如此多的资源,如何高效利用是关键。以下是我多年来总结的一些技巧:

1. 建立个人知识管理系统

使用NotionOneNoteObsidian等工具建立个人知识库,按主题整理收集的资料和笔记。我使用Obsidian建立了一个包含近3000条笔记的知识库,采用标签和双向链接组织内容,检索非常方便。

2. 使用RSS订阅关键网站

通过FeedlyInoreader等RSS阅读器订阅重要网站的更新,每天花15-30分钟浏览,保持对行业动态的了解。

3. 使用浏览器插件提高效率

PocketInstapaper:保存稍后阅读的文章。

Evernote Web Clipper:直接将网页内容保存到笔记中。

Tampermonkey:通过自定义脚本增强网站功能,比如自动下载Datasheet或移除阅读障碍。

4. 善用搜索引擎高级技巧

使用引号精确匹配:"stm32f4 usb device example"

限定网站范围:site:community.st.com stm32 dma

限定文件类型:filetype:pdf "embedded systems security"

排除无关结果:stm32 timer -arduino

5. 建立信息过滤机制

不是所有信息都值得关注,需要建立自己的评估标准。我通常会看:

  • 内容的时效性(发布日期)
  • 作者的专业背景
  • 内容的实用性和深度
  • 社区反馈和评价

这样可以避免被低质量内容占用时间。

6. 循序渐进的学习策略

我通常按照这个顺序学习新技术:

  1. 首先通过行业网站了解基本概念和应用场景
  2. 然后阅读官方文档掌握基础知识
  3. 通过社区和论坛了解实际应用中的常见问题
  4. 查看开源项目学习实现方式
  5. 动手实践,解决问题
  6. 回到更深入的资料,理解底层原理

这种螺旋式的学习方法既能快速上手,又能逐步深入。

十二、总结与思考:真正的高手之路

浏览网站获取知识只是手段,真正的目的是提升技术能力,解决实际问题。在这个信息爆炸的时代,不是缺乏资源,而是如何有效利用资源。

一位真正的单片机和嵌入式"大神",不是靠囤积多少网站和资料,而是能够:

  1. 有目的地获取知识:知道自己需要什么,去哪里找,如何验证其正确性。
  2. 系统性地组织知识:将零散的信息整合成体系化的能力。
  3. 批判性地思考:不盲从任何资料,总是带着疑问和自己的判断。
  4. 创造性地应用:将不同领域的知识融会贯通,创造新的解决方案。
  5. 持续学习的习惯:技术日新月异,持续更新知识是唯一生存之道。

最后,分享一个我的观察:真正的技术高手往往不是资料收集狂,而是善于提炼和专注的实践者。他们可能只用很少的几个网站,但能深入理解并灵活应用这些资源提供的知识。

与其盲目收藏一大堆永远也看不完的网站,不如找到最适合自己的几个核心资源,深入使用,并在实践中检验和内化这些知识。正如一位老工程师告诉我的:"工程师是用成品说话的,不是用收藏夹里的链接数量。"

希望这份清单能对你有所帮助,但更希望你能找到自己的学习方法和资源体系。毕竟,每个人的学习方式和职业发展路径都是独特的,最好的资源是最适合你自己的那些。

祝各位在嵌入式的道路上越走越远!


本文首发于知乎,欢迎关注我获取更多嵌入式开发经验分享。

另外,想进大厂的同学,一定要好好学算法,这是面试必备的。这里准备了一份 BAT 大佬总结的 LeetCode 刷题宝典,很多人靠它们进了大厂。

刷题 | LeetCode算法刷题神器,看完 BAT 随你挑!

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

推荐阅读:

欢迎关注我的博客:良许嵌入式教程网,满满都是干货!

相关推荐
꧁坚持很酷꧂36 分钟前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
凉、介1 小时前
PCI 总线学习笔记(五)
android·linux·笔记·学习·pcie·pci
电鱼智能的电小鱼1 小时前
EFISH-SBC-RK3588无人机地面基准站项目
linux·网络·嵌入式硬件·机器人·无人机·边缘计算
电鱼智能的电小鱼1 小时前
基于 EFISH-SBC-RK3588 的无人机环境感知与数据采集方案
linux·网络·嵌入式硬件·数码相机·无人机·边缘计算
小诸葛的博客2 小时前
详解Linux中的定时任务管理工具crond
linux·运维·chrome
一默19912 小时前
CentOS 7.9升级OpenSSH到9.9p2
linux·运维·centos
keep intensify3 小时前
Linux常用指令
linux·服务器·php
带电的小王3 小时前
sherpa-ncnn:Linux(x86/ARM32/ARM64)构建sherpa-ncnn --语音转文本大模型
linux·语音识别·实时音视频·sherpa-ncnn
沧浪之水!3 小时前
【Linux网络】:套接字之UDP
linux·网络·udp
BranH3 小时前
Linux系统中命令设定临时IP
linux·运维·服务器