备注:关注我!免费领完整版资料,免费咨询软硬件、产品/UI设计、测试、运维。还能学Java/PHP/C/Go、大数据、AI干货,获取软件团队从0到1搭建方法,拆解IPD/瀑布/敏捷项目管理流程,教你选对模式避坑,不浪费时间金钱!

第一部分   电路的基本原理与组件

1.1零欧姆电阻的 12 种作用
调试:在电路中没有任何功能,只是在 PCB 上为了调试方便或兼容设计等原因。
跳线:可以做跳线用,如果某段线路不用,直接不贴该电阻即可
参数匹配:在匹配电路参数不确定的时候,以 0 欧姆代替,实际调试的时候,确定参数,再以具体数值的元件代替。
测试耗电流:想测某部分电路的耗电流的时候,可以去掉 0ohm 电阻,接上电流表,这样方便测耗电流
1.2压敏电阻
定义:压敏电阻"是一种具有非线性伏安特性的电阻器件(无极性),主要用于在电路承受过压时
进行 电压钳位 ,吸收 多余的电 流以保护 敏感器 件。英文 名称叫“Voltage Dependent
Resistor”简写为“VDR”, 或者叫做“Varistor"。
工作原理:压敏电阻是一种限压型保护器件。利用压敏电阻的非线性特征,当过电压出现在非线性压敏电阻两端时,压敏电阻可以将电压钳位在一个相对固定的电压值,从而实现对后级电路
的保护。
主要作用:压敏电阻主要应用于雷击、浪涌等的瞬态过电压保护
1.3电阻在电流检测中的应用
电流检测技术:电流检测技术常用于高压短路保护、电机控制、DC/DC 换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流检测等场景。
电流检测技术分类:测量电流时,电流检测技术分为高端检测和低端检测。将测量电阻放在电源与负载之间的这种测量方法称为高端检测。将测量电阻放在负载和接地端之间的这种测量方法称为低端电流检测。
1.4电容器的这三种用途:
储能作用、去耦作用、耦合作用。
穿心电容主要应用:
穿心电容主要应用于:馈通滤波器、低通滤波器、EMI 滤波器、信号滤波器、滤波电容器、焊接
式馈通滤波器、螺纹式馈通滤波器。
1.5电感
差模电流与共模电流:
差模电流:在一对差分信号线上,大小相同,方向相反的一对信号,一般是电路中的工作电流,
对于信号线就是信号线与信号地线之间流动的电流。
共模电流:在一对差分信号线上,大小相同,方向相同的一对信号(或噪音)。在电路中,一般对
地噪音一般都是以共模电流的方式传输的,所以又称为共模噪声。
1.6二极管、三极管、mos 管相关

第二部分   嵌⼊式

1.嵌入式组成:

2.单⽚机(Microcontroller, MCU)

单⽚机是⼀种集成电路,它将微处理器核⼼与所需的内存(RAM、ROM)、输⼊/输出接⼝(I/O)、模数转换器(A/D 转换器)、数模转换器(D/A 转换器)、串⾏接⼝(如UART、SPI、I2C 等)等功能集成在

⼀块单独的芯⽚上。这种集成程度的提⾼带来的好处包括:尺⼨减⼩;功耗降低;成本降低;可靠性提⾼。

32 位嵌⼊式微处理器

单⽚机的组成

单⽚机的输⼊/输出(I/O)接⼝是单⽚机与外界通信的桥梁。它们允许单⽚机发送控制信号到外部设备(输出),以及从外部设备接收信号(输⼊)。

STM32 微控制器

STM32 微控制器(MCU)系列采⽤了ARM Cortex-M 体系结构。ARM Cortex-M 是⼀种 32 位的精简指令集计算机(RISC)体系结构,专⻔设计⽤于低功耗、实时嵌⼊式系统。

在STM32 系列中,常⻅的ARM Cortex-M 内核包括:

 ARM Cortex-M0: Cortex-M0 是ARM 的基本⼊⻔级内核,具有较低的功耗和成本,适⽤于低功耗、资源有限的应⽤。它提供了较为基本的指令集和外设集成。

 ARM Cortex-M3: Cortex-M3 是⼀种更强⼤的内核,具有较⾼的性能和更多的外设集成。它⽀持更复杂的应⽤和操作系统,具备较⼤的存储器地址空间和更多的调试和异常处理能⼒。

 ARM Cortex-M4: Cortex-M4 在Cortex-M3 的基础上增加了数字信号处理(DSP)扩展指令集和单精度浮点运算⽀持,使其适⽤于更多的信号处理和计算密集型应⽤。

 ARM Cortex-M7: Cortex-M7 是ARM Cortex-M 系列中性能最强⼤的内核。它具有更⾼的时钟频率、更⾼的指令执⾏效率和更丰富的外设集成。Cortex-M7 可应对更复杂的实时应⽤和⾼性能计算需求。

数电基础

⻔电路

基本⻔电路

⾮⻔(NOT Gate)

与⻔(AND Gate)

或⻔(OR Gate)

或⻔有两个或更多输⼊,只要⾄少有⼀个输⼊为⾼电平,输出就为⾼电平。

异或⻔(XOR Gate)同为 0,异为 1

触发器的结构

地址位带

Cortex-M3 架构

Cortex-M3 是⼀个 32 位处理器内核。内部的数据路径是 32 位的,寄存器是 32 位的,存储器接⼝也是

32 位的。

 内核:Cortex-M3 是⼀个 32 位的处理器内核。

  数据路径:能够在⼀个周期内同时处理、传输或操作 32 位的数据。


 寄存器:Cortex-M3 的通⽤寄存器是 32 位的,包括程序计数器、堆栈指针和状态寄存器等。 

  存储器接⼝:存储器接⼝也是 32 位的,意味着它在访问内存时能够⼀次读写 32 位数据。

串⼝通信

数据格式

在串⾏通信中,数据是按照⼀个定义好的帧结构发送的,这个结构通常包括:

 起始位:数据帧的开始标志,当⼀个⾼电平到低电平(逻辑 0),告诉接收设备⼀个新的数据帧开始。 

  数据位:紧随起始位之后的是数据位,通常是 8 位(⼀个字节),⽤来表示实际的数据内容。对于

ASCII 字符 A ,其ASCII 码是 65,⼆进制表示为 (在数据帧中反过来 )。

数据格式

在串⾏通信中,数据是按照⼀个定义好的帧结构发送的,这个结构通常包括:

 起始位:数据帧的开始标志,当⼀个⾼电平到低电平(逻辑 0),告诉接收设备⼀个新的数据帧开始。 

  数据位:紧随起始位之后的是数据位,通常是 8 位(⼀个字节),⽤来表示实际的数据内容。对于

ASCII 字符 A ,其ASCII 码是 65,⼆进制表示为 (在数据帧中反过来 )。

C 语言基础

1、 语言排行榜C——java——objective-C 

2、 进制:

进制:进位机制。用普通的话讲,应该为人为的定义一种度量来标识一样东西。计算机常用的进制有:十进制、二进制、八进制和十六进制。

Ø  十进制:0-9(十个指头)(进制表示基数:10)

Ø  二进制:0,1(基数为 2)

Ø  八进制:0-7(基数为 8)

Ø  十六进制:0-9,A-F(基数为 16)

可以有很多进制,比如分钟为 60 进制等等。

基本数据类型

记忆基本数据类型的时候,这样记——三大类:

Ø  字符:

(关键字)char :字符型  占字节:1 = 8 位 写得出来的都是字符’1’ ‘2’ ‘A’ 。对应十进制 0~255 之间任意 任意一个数都可以表示,但是>256 的不能存储。

Ø  整型:

(关键字)short 短整型 : 字节:2 = 16 位 0~65535

(关键字)int 整型 : 字节:4 = 32 位 0~2^33-1

(关键字)long 长整形 : 字节:8 或 4(C 语言没有给一个明确的数字,而是这样定义的,long 型的数不小于 int 型的数。Int 型的数不小于 short 型的数)

Ø  浮点:

(关键字)float 单精度浮点型 : 字节:4

(关键字)double 双精度浮点型 : 字节:8

 常量

不可改变的量。

如: 719,‘A’‘a’等等。

7、 变量

变量:变量相当于一个容器或位置.

//定义一个变量

//整型

int num1 = 10;

//短整型

short s1=111;

//长整型

long l1=123456789;

//浮点型(单精度)

float f1=1.2;

//浮点型(双精度)

double d1=2.22;

//字符型

char c1= '1';

赋值运算符:=   可以给一个变量赋值。

//赋值运算符:=,可以给一个变量赋值。

//交换两个变量中的值。

int number1=10; int number2=20;

//备另一个变量,用于临时存放

int temp=0;

printf("number1:%d \n",number1); printf("number2:%d \n",number2)

temp=number1; number1=number2; number2=temp

printf("number1:%d \n",number1); printf("number2:%d \n",number2);

算术运算符

算数运算符,主要是看什么,主要是看+,-,*,/  ,++,--,这几个运算符的用法,+,-,*就不说了,/(除法)主要是要看除数不能为 0,虽然计算机不报错(因为语句都符合 C 语言的标准,程序会执行。) 但是在运行后,给出的结果不正确。

++和—运算比较特殊,应该这样记:++在前则先++,++在后则后++。--和++一样。

//n1=30

int n1 = 10+20;

//n2=40;

int n2 = n1+10;


马老师拥有10年+技术深耕经验,兼具大厂开发实战与团队管理背景,技术能力覆盖开发、管理、设计、测试、运维多维度,具体如下:
 
1. 多语言开发与全栈落地
 
精通Java、C语言、Python、Go语言四大主流开发语言,能熟练运用Vue(前端框架)、Flutter(跨平台开发) 实现从前端界面到后端服务的全栈项目落地,可独立完成Web应用、移动端App的开发与部署。
 
2. 硬件开发与机器人技术
 
熟悉硬件开发全流程,包括嵌入式硬件选型、电路设计基础、硬件驱动开发;深入掌握ROS机器人开发(机器人操作系统),能完成机器人运动控制、传感器数据融合、机器人应用场景落地(如工业巡检、家庭服务机器人),同时具备硬件与软件协同调试的实战经验。
 
3. 产品设计与UI交互
 
深谙产品设计逻辑,从用户需求分析、产品功能规划到产品原型设计(Axure等工具)均有丰富经验;精通UI交互规范,能结合用户体验(UX)设计原则,指导设计团队完成符合行业标准的界面设计,确保产品“好用”且“好看”,实现设计与开发的无缝衔接。
 
4. 核心技术领域实战
 
在高并发、大数据、DevOps、AI四大核心领域有扎实积累:
 
- 电商高并发架构:可设计并搭建支持百万级用户访问的电商系统架构,解决峰值流量、数据一致性、系统高可用问题;
 
- 大数据处理:熟练运用Hadoop、Spark等大数据框架,完成海量数据的采集、清洗、分析与可视化;
 
- DevOps运维体系:搭建自动化部署(Jenkins)、监控告警(Prometheus/Grafana)、容器化(Docker/K8s)运维体系,实现开发与运维高效协同;
 
- AI技术应用:能将AI技术(如机器学习算法、自然语言处理)落地到实际项目,如智能推荐系统、用户行为分析模型开发。
 
5. 测试体系搭建与质量保障
 
具备完整的测试模块经验,可搭建覆盖“单元测试-接口测试-自动化测试-性能测试-硬件兼容性测试”的全流程测试体系:
 
- 开发阶段:指导团队编写单元测试(JUnit、Pytest),提前规避代码逻辑问题;
 
- 集成阶段:设计接口测试用例,使用Postman、JMeter等工具完成接口自动化测试;
 
- 上线前:开展性能测试(压测系统峰值承载能力)、硬件兼容性测试(确保软硬件适配稳定),保障产品上线后质量与稳定性。
 
6. 团队管理与平台搭建
 
拥有团队管理实战经验,能统筹技术团队分工、制定开发流程规范;同时具备代码平台搭建能力,可搭建Git代码托管、代码审查(Code Review)、文档管理(Confluence)一体化平台,提升团队协作效率。
 
我始终相信,过往在技术与管理上的沉淀,既能为团队创造更多价值,也期待获得与自身能力、经验相匹配的回报——这既是对十年深耕的认可,也是持续输出专业价值的动力。
 
欢迎来到马老师大课堂! 一堂课带您系统掌握所有软硬件课程(含Java、C、Python、Go、ROS机器人开发、Vue、Flutter等),从开发、设计、测试到硬件落地全流程覆盖,帮您快速成长为复合型技术人才,避免被行业淘汰。现在报名,仅需199元,即可吃透全体系技术,开启高效提升之路!
 

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐