NSSine™ MCU如何重塑数字电源与电机开发 | 纳芯微首次亮相RT-Thread开发者大会

NV MCU与SoC的交互 MCU通过IST_REQ信号触发SoC执行IST,由IST_DONE_N通知完成,SOC_RESET_N由MCU控制。MCU与SoC间通过通信通道(如以太网)传输IST结果。热/电压监测通过I2C实现,阈值由MCU初始设置、SoC动态更新,异常可中止IST。客户应用可在检测严重错误时通过IST管理器中止IST,相关原因与状态将被记录。 阅读详情

在刚结束的2026 RT-Thread 20周年庆典暨开发者大会,“芯片与生态”论坛上,纳芯微电子市场总监宋昆鹏带来了一场聚焦于高实时性控制的技术分享,向开发者深度解析了其NSSine™系列实时控制MCU/DSP如何为数字电源与电机控制应用提供兼具性能与性价比的国产化核心方案。随着RT-Thread在行业头部客户中广泛的渗透,纳芯微积极响应开发者生态需求,积极适配RT-Thread,携手为高实时性控制场景提供更开放、更高效的国产化平台支持。

定位清晰

不止于通用MCU,更是实时控制专用平台

纳芯微开宗明义,强调其NS800RT系列产品是为实时控制场景量身定制的“专用芯片”,而非通用MCU。其目标应用直指对实时性要求苛刻的领域:

  • 数字电源:光伏储能、服务器电源、充电桩、车载充电机(OBC)等。

  • 电机控制:工业伺服、变频器、汽车空调压缩机及主驱电机等。

旨在通过对标国际主流DSP的架构,降低开发者迁移门槛,同时依托完整的本土供应链,提供可靠保障。

性能解析

全栈优化的实时信号链是关键

演讲深入分享了从入门级RT1到高端RT7系列的产品矩阵。其性能优势不仅在于搭载的Arm® Cortex®-M7内核主频(200MHz至双核400MHz),更在于对整个实时信号链的深度优化:

  1. eMath硬件加速器:将三角函数、开方、FFT等算法硬件化,相比软件库实现,运算速度提升最高达3.5倍,极大解放CPU资源。

  2. 极速信号链:实测从中断响应、完成算法运算到更新PWM输出的全链路时间,RT7系列仅需1.5微秒,RT5系列约2.5微秒,为高频高精度控制奠定基础。

  3. 高精度外设:配备采样率达5Msps的ADC、响应时间20纳秒的快速比较器,以及分辨率达100皮秒的高精度PWM(HRPWM)。

应用落地

从单芯片多电机到完整方案

纳芯微展示了多个极具说服力的落地方案:

  • 4 PMSM 电机控制方案:实现四电机的FOC控制,在20kHz控制频率下总耗时仅15微秒,CPU负载率低于30%。

  • 6.6 kW车载充电器:基于NS800RT5039的单相双向6.6kw OBC方案,PSHB DCDC 效率>94%@峰值效率点。

  • 汽车空调压缩机方案 Turn Key:基于NS800RT3025的汽车空调压缩机方案,转速范围500~12000rpm,峰值工况7.5kW@20Arms。

开发生态

降低开发者门槛

为助力开发者快速上手,纳芯微提供了全面的工具链支持,并积极适配RT-Thread,更是加入了RT-Thread高级会员合作伙伴计划,展开从底层技术适配到生态共建的全方位深度合作。在2026 RT-Thread 20周年庆典暨开发者大会上,纳芯微不但带来了精彩演讲,还带来了方案展示,在展位吸引众多开发者交流互动。

图片

图片

图片

想要在RT-Thread平台或社区投放内容?

或想参与相关直播活动及赛事?

RT-Thread已开放对接窗口,

请通过邮件与我们取得联系,期待合作!

合作邮箱: tongfangyi@rt-thread.com 

点击“阅读原文”

盘点那些好用的SAP FIORI App(二) -上传凭证Upload Journal Entry SAP FICO运维问题及解决方案分享 阅读详情

相关推荐

【S32K】S32K144入门笔记(3) SPI(lpspi组件)

0. 引言 与第二篇can对应,第三篇本来想写lin的,毕竟都是车身上常用的总线。但是lin比较麻烦,所以先拖后一下,先把SPI记录一下。 SPI在我们的系统架构中是S32K和ADAS之间做数据传输用的,毕竟速率够高,数据量能传的比较大。 1. 准备 1.1 SPI基础知识 1.2 开发环境 1.2.1 软件开发环境 1.2.2 硬件环境 SPI 2. Demo ...

YoYo的桃子树 2万+

FT61FC21B是什么芯片?2K程序+10位ADC+5路PWM,8位MCU芯片解析

🔹 1路增强型捕捉/比较/PWM(ECCP):支持单PWM、半桥、全桥模式,带死区控制,半桥下还能扩展出3对带死区的互补输出,外加单脉冲模式——三相无刷电机、半桥驱动、全桥H桥,一颗小芯片就能玩。FT61FC21B-DRB属于FT61FC2x系列,基于EEPROM的8位RISC架构,37条指令,2T/4T可选,主频最高16MHz(VDD≥2.5V时)。🔹 真正的10-bit ADC:7+1通道,500kHz ADC时钟下依然保持10位精度,内部2V/3V基准可选,还支持外部VREF。

主要分享电源芯片/MOS管/IGBT模块/MCU单片机资讯 464

总结:知识图谱KG+大模型LLM

知识图谱KG+大模型LLM

安静的软件工程师 4201

芯片适配快讯:合兴软件 ISDT 完成对芯驰 E3系列 MCU 的适配

芯片适配快讯:ISDTx芯驰E3系列MCU。合兴软件HXSC-ISDT(嵌入式软件时间分析工具)完成对芯驰E3系列MCU的适配,助力跨域融合控制器的实时性能分析。

合兴软件的博客 163

uniapp: err = err.replace(this._UNI_INPUT_DIR_REG, ‘UNI_TypeError: err.replace is not a function问题修复

问题:uniapp的依赖包出现了问题,需要升级解决办法:升级uniapp依赖包,下载"semver"和”@dcloudio/uni-i18n“两个包,本地锁定postcss为7版本,就解决了。

py_boy的博客 1452

线上专利申请(超详细)| 签名确认

在【法人登录】页面点击【证书登录】按钮,弹出证书登录提示框,点击【确 认】按钮,进入到输入证书密码页面,点击【取消】按钮,取消本次操作。企业在提交申请时,需要增加签名,如使用企业账户点击提交,会弹出“法人、代理机构不能签名,请使用经办人签名”,这个时候就需要换个账号了。在需要签名时,将专利官网的登录方式点击法人登录,选择扫码登录,使用移动端经办人账户的扫一扫功能扫描登录。登录完成后,再点击签名,使用移动端扫一扫功能,扫描签名,输入证书号,确认签名,并提交。最后,祝大家的申请都成功!

weixin_62112323的博客 9109

串口实验-11

① 显示串口0接收到的数据② 串口0每隔3秒发送“waitting for serial data”信息COM30IDE 右上角 …三个点打开 串口监视器,选择波特率 115200在串口监视器 消息 位置 输入:hello esp32s3,会打印输出使用串口1来实现 串口数据回显功能方便大家后面用到串口接口的模块时,能知道使用方法COM26。

智能机器人产学研基地 22

boost::circular_buffer缓行缓冲区

1、circular_buffer实现了一个环形缓冲区,空间大小是固定的,当到达容器末尾时,将自动利用容器另一端的位置空间。 2、当程序需要容纳大量的元素,但多数情况下仅保存较少数量元素时可以使用circular_buffer_space_optimized,他可以有效的减少内存的占用,提高程序的运行效率。 3、主要接口: 4、实现一个生产者---消费者模式示例: #inc...

小米的修行之路 790

【保姆级教程】单片机离线 IAP 升级:从架构设计到避坑指南(基于 AT32L021 & CAN 总线)

本文详解基于AT32L021与CAN总线的离线IAP升级方案,采用“EEPROM中转”架构解决小容量Flash下固件校验与写入难题。通过分区管理、双核协同、跳转清场及关键避坑指南(如开漏I2C、页写回卷、32位Flash写入、变量溢出等),实现稳定可靠的离线升级。结合速度优化策略,将传输时间从83秒降至45秒,适用于工业控制等现场部署场景。

l1461697501的博客 357

想使用dify实现docx文档的自动生成?试了一圈,感觉还是根据python-docx更靠谱

在软件开发过程中,需求文档、设计文档等材料的编写是每个开发者都绕不开的工作。最近笔者接到一个需要批量生成标准化需求文档的任务,尝试了目前热门的低代码工具Dify后,发现对于稍微复杂格式的文档生成需求(例如文本居中这么简单的需求),最终还是回归到基于python-docx库的解决方案。本文将分享两种技术路线的对比实践。

xiezhipu的博客 2547

自定义载板RK3588HDMI输入配置完整解决方案

✅ HDMI输入信号检测✅ 自动时序识别(支持1080p@60Hz等标准格式)✅ V4L2视频设备接口✅ 实时视频流捕获✅ H.264编码录制✅ HDCP内容保护支持问题根因识别:发现了hdmim1模块资源冲突的本质问题硬件设计理解:明确了Orange Pi 5 Plus的真实硬件设计意图功能实现:成功启用HDMI输入功能,替代了无法使用的HDMI1输出完整验证:建立了从硬件检测到视频录制的完整测试流程。

梁俊星的博客 1271

XZ6273H 100V低功耗高压LDO硬件设计与实测体验

这款LDO提供SOT23-3、SOT89-3和TO92三种通用封装,不同场景下可以灵活选择:做小型化的PCB节点时用SOT23-3,板卡面积能控制得非常小;常规工业板卡选SOT89-3,贴片焊接方便,自带的焊盘也能提供基础散热能力;从实际落地的情况来看,它最适配两类场景:一类是汽车电子里的休眠值守子模块,车辆熄火后仍能保持极低的待机功耗,不会过度消耗电瓶电量;另一类是户外无人值守的通信远端节点,长期运行下的低功耗表现能大幅降低设备的供电维护成本。

koce13544100678的博客 220

LeRobot — 基于 PyTorch 的真实世界机器人学习框架(一)- 核心框架模块解析

LeRobot 是一个开源的机器人学习框架,由 Hugging Face 开发,旨在降低机器人学的准入门槛。该框架提供完整的机器学习流程支持,包括数据采集、训练、评估和部署。核心模块涵盖数据集标准化、策略算法、硬件抽象和强化学习组件,采用模块化设计实现灵活扩展。通过集成 Hugging Face Hub,用户可以轻松共享数据集和预训练模型。LeRobot 特别注重真实世界的机器人应用,支持多种前沿算法如模仿学习、视觉语言动作模型等,并提供统一的硬件接口和仿真环境适配。

熊猫小妖的AI世界 170

认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇12

本文针对32.768kHz晶振应用进行系统设计验证:通过计算增益裕量(10>5)确认电路稳定性;外接电容取15pF满足负载需求;驱动功率0.07μW远低于最大允许值0.5μW,无需外接电阻;最终频率精度预算达±48ppm,建议通过实测调整匹配电容以实现±10ppm的标称精度。

一只天天被叨叨的小可爱 862

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇14

本文系统阐述了STM32晶振电路设计要点,强调负载电容匹配与R_Ext必要性需基于计算验证,指出PCB寄生参数对振荡精度影响显著。重点提出振荡器PCB设计规范:缩短走线、加地保护环、分离地平面、避免串扰,并说明焊接工艺与环境防护对稳定性的重要性。同时解析内部时钟不可用于USB因温漂大,且PLL不放大ppm误差。最后推荐使用MEMS振荡器替代传统晶振,实现低功耗、小体积与高可靠性。

一只天天被叨叨的小可爱 288

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

从FT 93k测试机角度看如何测试芯片的VOH/VOL/VIH/VIL,通俗易懂的方式介绍

FT 93k测试中,VIH/VIL与VOH/VOL的核心是验证芯片“听清”与“说清”的能力。VIH/VIL测试芯片输入灵敏度,通过施加边界电压并观察功能响应;VOH/VOL则在负载下测量输出电平,模拟真实工作状态。测试需严格遵循规格书的负载电流条件,确保信号可靠传输,避免灰色地带干扰。本质是精准复现测试条件,实现“听话的对话者”与“挑剔的听众”的双重角色。

Wang20122013的博客 208

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

中断程序-8

让CPU打断正常程序的运行,转而处理紧急程序,就叫中断中断要快进快出,否则影响主程序正常运行。ESP32S3的中断按中断来源可分为外部中断和内部中断外部中断(外部中断源引发中断):电平触发类型中断边沿触发类型中断NMI中断内部中断(CPU内部产生的中断):定时器中断软件中断解析中断外部中断是硬件中断的一种,由微控制器外部的事件触发。具有外部中断功能的引脚会对特定事件的发生做出响应。ESP32S3所有引脚都可设置为外部中断引脚。

智能机器人产学研基地 71

Arduino-MEGA-ESP单片机理论课笔记-06温湿度-07时间-延时定时-2026

本文解析了DHT11温湿度传感器的Arduino代码,逐行讲解了库引入、引脚定义、传感器初始化及数据读取流程。重点说明了delay(1000)导致阻塞的问题,并提出使用millis()实现非阻塞定时,将采样间隔改为2秒,提升程序响应性。同时建议增加isnan()错误检测、优化串口输出格式,确保数据稳定可靠。

zhangrelay的专栏 327

认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇16

VBUS检测用于识别USB主机是否存在,自供电设备强制检测,采用PA9引脚(5V耐压)通过分压或MOSFET方案实现。分压电阻取高阻值(如82k+33k),确保分压后电压≤4V,符合GPIO输入电平要求;当GPIO耐压条件不足时,改用N沟道MOSFET(如2N7002)检测,适用于高电压场景(如5–48V)。三电阻加焊桥可覆盖1.8V/3.3V双档,但量产建议使用标准封装。需避免MCU未上电时5V VBUS接入PA9,以防损坏器件。

一只天天被叨叨的小可爱 190

哪些国产单片机厂家提供FAE技术支持?英锐恩等对比

大厂FAE资源通常优先服务大客户,中小批量项目往往只能找代理商或看论坛。如果你需要,推荐:收到请求当日或次日回复,必要项目24小时内工程师到场,还能组织芯片研发工程师一起评审问题。生态成熟、资料丰富;通过代理商体系提供支持。

2601_95079068的博客 203

单片机同步降压稳压器输出最低1V,关断时损耗3uA

DCM/CCM模式运行可为对噪声敏感的应用提供极低的输出纹波电压。开关频率内部设定为600kHz,允许使用小型表面贴装电感和电容。凭借0.925V反馈参考电压,可轻松支持低输出电压。空载时的工作电流为200uA,关断时降至3uA。4V至32V的输入电压范围使GS2983非常适合无线和DSL调制解调器。100%占空比可提供低压差工作,延长便携式系统的电池寿命。140/90m低导通电阻内部MOSFET。带hiccup模式的短路保护。输出可调范围从0.925V起。宽4V至32V工作输入范围。

mk015的博客 245

使用模板lwip工程,tcp测试板子硬件,跑通

路(IP层)已经修通了(能Ping),但你要找的房间(端口7)目前只接待“TCP”客人,不接待“UDP”客人。建议你先按第二步用Telnet测试一下TCP端口7,这能立刻证明你的板子网络是健康的。然后,根据你的实际需求,选择是继续使用TCP,还是将代码改造为第三步所示的UDP服务器结构。那个“EMAC”的警告,可以按第一步顺手修复,让工程更清爽。太棒了!祝贺你,网络通信的最难关卡已经被你彻底打通了!🎉看到这张截图,作为老师我特别开心。你看上面的日志:你发送了hello,成功收到了hello。

AlibabaApple的博客 252

STM32F4xx 中断管理机制(IRQ、NVIC、MSI)

片内外设:TIM 定时器、USART 串口、SPI、ADC、DMA 等;外部引脚:GPIO 引脚电平变化,对应 EXTI 外部中断。每一个支持中断的硬件单元,都引出一根专属IRQ Line(中断请求信号线),这条线路硬件直连内核 NVIC 的输入通道。中断两道闸门:外设本地中断开关(控制 IRQ 输出)+ NVIC 通道开关(控制 IRQ 上报 CPU);IRQ(Interrupt Request,中断请求):外设向 NVIC 传输中断事件的信号载体;

tym23081329的博客 343

用 UDP 做一条“可靠“的控制通道

本文阐述了在实时控制场景中,为何选择UDP构建“可靠”控制通道:不追求每帧必达,而确保每项操作均有确定结果(成功、拒绝或超时)。通过TTL防旧指令、序号防重放、MAC防篡改、双向心跳判活、租约控权及请求-应答机制,实现安全性与确定性。结合三层状态机与四条工程纪律,弥补UDP无保障的缺陷。相比TCP的无限重传导致延迟不可控,该方案以应用层设计达成“及时有效”,适用于设备控制等对时效敏感的场景。核心理念:不是保证送达,而是保证不留悬案。

qq_35803412的博客 545

Linux入门第二部分(ARM裸机篇) 第三章 汇编LED驱动实验

本文基于正点原子教程,详细讲解了I.MX6ULL裸机开发中LED驱动的实现。通过配置时钟、引脚复用(MUX)、电气属性(PAD)及GPIO方向与数据寄存器,使用汇编语言完成GPIO1_IO03引脚的初始化,实现低电平点亮LED0。程序经交叉编译、链接生成.bin文件,并借助imxdownload工具添加IVT/DCD头部,烧写至SD卡后,开发板上电启动即可点亮LED,完整演示了裸机程序从编写到烧写的全流程。

Zevalin的博客 501

Arduino-MEGA-ESP单片机理论课笔记-04-05编程语言-2026

依托 C/C++、IDL、XML、状态机等不同表达形式,在多层抽象里描述引脚、寄存器、中断、时序与通信契约。课程结合 Arduino Mega、ESP32、Gazebo-ROS、OLED 调光、手机电源键等案例,对比 AVR 固定优先级中断与 ARM GICv3 可编程中断,强调中断编写铁律,提倡用状态机替代 delay,重视数据手册、引脚映射与接口一致性。同时倡导批判式查阅教材,依靠串口、逻辑分析仪、话题工具提升可观测性,理解硬件时序是软件的底层约束,做好异常兜底,认识到嵌入式编程本质是用代码约束物理硬件

zhangrelay的专栏 343
上一篇: 纳芯微加入RT-Thread高级会员合作伙伴计划 | 战略新篇
下一篇: 正式发布:RT-Thread首款双核低功耗AI语音产品
RT-Thread物联网操作系统
博客等级 码龄6年 2万+粉丝 392原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值