ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

词汇表(精确版)

词汇表(精确版) 每个术语给出精确定义可回溯到对应章节。加粗 全书高频词。按拼音排序Aaddr2line用 .elf 的调试信息把内存地址翻译成函数名源码行号的工具11.5。abort主动终止程序并进入 panic 的库函数默认配置下 panic 后芯片自动重启ESP_ERROR_CHECK 出错时调用6.4。BBacktrace回溯崩溃时打印的调用链地址:栈指针 列表从当前卡住处逐层往外11.4。bss无初值变量段启动时清零只占 SRAM 不占 Flash5.4。Brake刹车把电机两端短接让反电动势驱动短路电流耗能快速制动9.3。build预处理→编译→汇编→链接 的整套构建流程5.1。CCMake构建系统的规划者读 CMakeLists.txt 生成 build.ninja3.1。Coast滑行电机两端开路反电动势无回路靠摩擦慢慢停9.3。component组件可复用的代码包有自己的 CMakeLists/Kconfig/include 目录用 REQUIRES 声明依赖3.3/17.2。CPU中央处理器执行取指-译码-执行循环0.7。crt0启动代码负责复制 .data 初值、清零 .bss、设栈堆后再进 app_main5.4。Ddata有初值变量段初值存 Flash启动时复制到 SRAM5.4。DCMotor本书的电机控制类8.6。duty占空比高电平时间占周期的比例也是 LEDC 通道的比较值档位7.1/7.4。Eedge边沿信号电平切换的瞬间上升沿低→高下降沿高→低4.4。ESP_ERROR_CHECK检查 esp_err_t非 OK 则打印并 abortpanic 后默认自动重启见 6.4。ESP_RETURN_ON_ERROR 系列ESP_ERROR_CHECK 的温和亲戚家族——ESP_RETURN_ON_ERROR/ESP_RETURN_ON_FALSE出错打印后 return 错误码继续跑ESP_GOTO_ON_ERROR/ESP_GOTO_ON_FALSE出错后 goto 统一收尾清理如 18.2 的 OTA。选谁见 6.6 选择表6.4/18.2。eFuse芯片里一次性熔断的小保险丝只能写、不能擦回存 MAC 地址、密钥摘要、启动配置烧错不可逆量产动它前先读官方文档18.5。esp_err_t错误码类型intESP_OK0负数错误6.4。ESP-IDF乐鑫官方框架驱动FreeRTOS构建系统本书 v6.0.12.2。Ffade 服务LEDC 渐变机制须在 timer/channel 配置后 install全芯片只装一次最后实例才卸载7.6/12.5。factory 分区应用默认分区1MBbootloader 从这里加载程序3.7。Flash浮栅晶体管存储掉电不丢存程序/常量10.1。FreeRTOS芯片上的实时操作系统提供任务、延时vTaskDelay等2.2。GGPIO通用输入输出引脚输出推挽电路主动驱动输入读电平4.1/4.2。GPIO Matrix矩阵外设信号到引脚的交换矩阵信号可路由到多数引脚4.6。Guru Meditation芯片 panic 时的报错标题11.4。GND电路的 0V 公共基准共地 两板共享同一基准0.1。HH 桥H-Bridge4 个晶体管开关组成 H 形控制电机正转/反转/制动8.3。heap堆malloc/free 管理的内存池泄漏只借不还10.4。Iidf.pyESP-IDF 总指挥命令build/flash/monitor/size/menuconfig。IN1/IN2L298N 方向输入管正反转/刹车/滑行8.3。interrupt中断硬件事件打断 CPU 当前流程去执行 ISR常按边沿触发4.4/15.1。ISRInterrupt Service Routine中断服务函数中断来时 CPU 跳去执行的那段函数须守三条硬规则15.1/15.2。KKconfig配置系统menuconfig 界面 sdkconfig.defaults → sdkconfig组件也可自带 Kconfig 给用户开关3.6/17.3。LL298N电机驱动板小信号控制大电流 H 桥换向8.1/8.3。LEDCPWM 硬件模块分频→计数→比较→输出S3 4 定时器 8 通道仅低速模式7.3。link链接把多个 .o 拼成 .elf解析符号、分配地址5.1。Mmain.cpp程序入口启动代码最后调用 app_main()0.7。monitor监视器按波特率收串口帧并显示日志的程序2.7。malloc/free堆内存的申请/释放10.4。NNinja构建系统的执行者按 build.ninja 调编译器3.1。nvs掉电不丢的小数据分区3.7。O优化等级-O0/-Og/-Os/-O2编译器在语义不变前提下改写代码5.2/11.2。Ppartition分区Flash 的逻辑区块nvs/phy_init/factory 等自定义分区表里 app 分区偏移必须 64KB0x10000对齐3.7/18.1。PWM脉冲宽度调制频率1/周期占空比高电平比例平均电压V×duty7.1。PSRAM伪 SRAM内部 DRAM自刷新掉电丢失容量大本板 8MB Octal10.1/10.2。push-pull推挽上管推高、下管拉低的输出电路无需外接电阻4.2。Rregister寄存器能记住数字的电路单元有地址控制硬件写寄存器0.6。REQUIRES / PRIV_REQUIRESCMake 里声明组件依赖影响 include 路径、链接、构建顺序REQUIRES对外可见PRIV_REQUIRES只自己内部用3.3/17.2。resolution分辨率占空比档位数 2^分辨率S3 上限 14 位7.2/7.3。rising/falling edge上升沿/下降沿——电平切换瞬间4.4。Ssdkconfig自动生成的配置defaults 是默认值来源3.6。setSpeedDCMotor 调速函数clamp →若反向换向先能耗制动 死区→方向IN1/IN2→ 占空比ledc_set_duty_and_update立即生效hpoint08.6。SRAM触发器存储快但掉电丢失本板 512KB10.1。stack栈函数调用用 SP 管理的后进先出内存区溢出压过头10.4。串口UART一根线串行传 0/1帧格式起始位数据位停止位0.9。TTAG日志的组件名用于区分来源和按组件开关6.3。text代码指令段存 Flash5.4。timer定时器LEDC 的节拍源分频计数器决定频率和分辨率7.3/7.5。transistor晶体管电压控制的电子开关芯片的一切由它构成0.2。Vvoltage/current电压电势差水位差电流电荷流动水流量0.1。volatile告诉编译器这变量会被中断/硬件外部改动每次都重新读内存只保证每次读内存不保证读-改-写原子15.3。WWi-Fi/蓝牙S3 内置无线功能。第三部分新增术语13~18 章按章节第一、二部分的术语在上面按拼音查这里是进阶掌握部分才出现的新词按章节归拢方便你查了立刻回去看原文。第 13 章FreeRTOS 多任务Task任务一个无限循环的函数各自独立占一份栈被调度器轮流执行任务函数不能 return13.2。像流水线工人每人只管自己那道工序。Scheduler调度器决定这一刻哪个任务占 CPU的那套机制靠时钟节拍tick推进13.3。上下文context代码此刻正穿着谁的鞋——CPU 正在用哪个任务的寄存器/栈现场执行。任务上下文可以阻塞睡眠中断上下文ISR、GPTimer 回调没有这双鞋一阻塞就冻结全局13.3/15.1。上下文切换context switch把当前任务的寄存器/栈保存、换上另一个任务的现场让它接着跑13.3。Queue队列任务之间安全传数据的先进先出管道复制进出xQueueCreate/xQueueSend/xQueueReceive13.5。信号量semaphore二值/计数的令牌用来同步或释放资源xSemaphoreCreateBinary、xSemaphoreGive/Take13.6。互斥锁mutex带优先级继承的独占钥匙专门保护共享资源xSemaphoreCreateMutex13.6。事件组event group等几个条件都满足的位标志集合xEventGroupCreate/SetBits/WaitBits13.7。看门狗WatchdogTWDT/IWDT任务卡死超时就报警/复位的救命机制TWDT 任务看门狗IWDT 中断看门狗13.8。esp_timer微秒级软定时器回调在专用任务里跑不占用硬件定时器13.9/14。第 14 章常用外设GPTimer通用定时器硬件秒表可精确定时/计数/输出 PWMgptimer_new_timer/set_alarm_action/start14.1。ADC模数转换器把电压量化成数字adc_oneshot_new_unit/config_channel/read14.2。衰减attenuation / attenADC 的输入量程挡位ADC_ATTEN_DB_12对应约 0~3.1V量程越大精度略降14.2。I2C两根线SDA/SCL、开漏 上拉带一群设备的低速总线靠 7 位地址点名i2c_new_master_bus14.4。SPI高速四线同步总线含 CS 片选点名支持 DMAspi_bus_initialize/bus_add_device14.5。第 15 章中断与实时性中断interrupt、ISR、volatile 的定义在上面按拼音的 I / V 节。这里补第 15 章专有的几个词。ISR 三条硬规则①要快、尽量短②不调用会阻塞/非中断安全的函数如printf/vTaskDelay③与任务通信只能用...FromISR系列 API15.2。原子操作atomic operation对外要么完全没发生、要么已彻底完成、看不到中间状态的操作像电灯开关没有半开。count是读-改-写三步、不原子任务与 ISR 竞争它就要用原子操作或临界区15.3/15.6。IRAM_ATTR把函数放进指令 RAMIRAM避免 Flash cache 未命中带来的延迟常用于 ISR15.4。Flash cache / MMUCPU 不能直接执行 Flash 里的指令要靠 cache 缓存、MMU以 64KB 为一块做地址映射——“像给远处仓库编本地门牌号”。ISR 怕 cache 未命中15.4、app 分区必须 64KB 对齐18.1根因都是它。FromISR一批专给中断用的 APIxQueueSendFromISR、xSemaphoreGiveFromISR、xSemaphoreTakeFromISR…中断安全、可请求切换任务15.5。临界区critical section一段不能被中断打断的代码进去前先关中断/调度、出来再恢复15.6。第 16 章Wi-FiSTAStation客户端模式芯片作为客户端去连家里的路由器是本书主用的模式16.2。事件循环 / 默认事件循环event loop系统接收 Wi-Fi/IP 事件并分发给你的回调的总调度线程esp_event_loop_create_default16.2。esp_netif网络接口抽象把 Wi-Fi/以太网的 IP、网关等抽象成统一接口esp_netif_init在 esp_netif.hesp_netif_create_default_wifi_sta实际声明在 esp_wifi 的esp_wifi_default.h而esp_netif_defaults.h只有配置宏16 章坑点小节。第 17 章组件化与工程进阶组件component、REQUIRES/PRIV_REQUIRES、Kconfig 见上面按拼音的 C / R / K 节已含第 17 章出处。INCLUDE_DIRS / PRIV_INCLUDE_DIRS组件里对外公开与只自己可见的头文件目录是构建层的封装17.2。esp_driver_*组件拆分v5.x 起笼统的driver组件被拆成esp_driver_gpio/esp_driver_ledc/esp_driver_uart等细粒度组件——REQUIRES driver在 v6 里 include 不到头文件要用新名字17.2。单元测试unit test/ Unity不依赖整机、只测零件纯逻辑换算、边界、状态机的自动化测试ESP-IDF 用 Unity 断言框架TEST_CASETEST_ASSERT_*本工程测试是根目录下的独立小工程17.5。第 18 章发布与 OTA分区partition见上面按拼音的 P 节这里补 OTA 相关的新词。otadata记录下次从哪个 app 分区启动的小分区OTA 状态18.1/18.2。app / data分区 Type 列分区表两大类型——app 放可执行固件factory/ota_0/ota_1offset 必须 64KB 对齐data 放元数据与资源nvs、otadata、phy_init 等4KB 对齐即可。一行一个用途别搞混 SubType 写法18.1。OTAOver-The-Air空中升级通过网络下载新固件写进备用分区、重启切换启动不用插线18.2。回滚rollback新版起不来/校验失败时自动退回旧分区设备不变砖18.2。开启要加CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLEy且新固件确认核心功能正常后尽早调esp_ota_mark_app_valid_cancel_rollback()“签收”否则会被当作启动失败退回。esp_app_desc / PROJECT_VER编译时写进固件头部的身份证结构版本号等esp_app_get_description()-version读它启动日志的App version就是它版本由 CMake 的PROJECT_VER即 menuconfig 的 Project version决定发布前记得更新18.3/18.4。签名密钥 / Secure Boot安全启动idf.py secure-generate-signing-key一次性生成密钥对私钥用idf.py secure-sign-data --version 2给镜像签名bootloader 按 eFuse 里的公钥摘要验签后才放行固件。本书只演示命令——烧 eFuse 是不可逆操作18.2/18.5。缩写表缩写全称含义ADCAnalog-to-Digital Converter模数转换器14.2BEMFBack Electro-Motive Force反电动势9.2CPUCentral Processing Unit中央处理器GPIOGeneral Purpose Input/Output通用输入输出GPTimerGeneral Purpose Timer通用硬件定时器14.1I2CInter-Integrated Circuit两线同步串行总线14.4ISRInterrupt Service Routine中断服务函数IWDTInterrupt Watchdog Timer中断看门狗13.8LEDCLED ControllerPWM 硬件模块OTAOver-The-Air空中升级通过网络更新固件18.2PSRAMPseudo Static RAM伪静态随机存储器PWMPulse Width Modulation脉冲宽度调制RAMRandom Access Memory随机存取存储器SPISerial Peripheral Interface高速四线同步串行总线14.5SRAMStatic RAM静态随机存储器STAStationWi-Fi 客户端模式连路由器的角色16.2TWDTTask Watchdog Timer任务看门狗13.8UARTUniversal Asynchronous Receiver/Transmitter通用异步收发器用法看书遇到不懂的词 → 来此查定义 → 回对应章节看详细讲解。
返回列表