foxclever
码龄14年
  • 584,388
    被访问
  • 157
    原创
  • 2,639
    排名
  • 1,613
    粉丝
关注
提问 私信

个人简介:览绝胜于巅峰,漱心神以涤尘;觅悠然而思远,垂江海以渔闲

  • 加入CSDN时间: 2008-01-04
博客简介:

木南创智

博客描述:
惟愿平凡的生活,不以平淡的方式度过!
查看详细资料
  • 5
    领奖
    总分 1,555 当月 136
个人成就
  • 获得818次点赞
  • 内容获得359次评论
  • 获得4,044次收藏
创作历程
  • 9篇
    2022年
  • 29篇
    2021年
  • 46篇
    2020年
  • 40篇
    2019年
  • 47篇
    2018年
  • 11篇
    2016年
成就勋章
TA的专栏
  • PID控制器算法系列
    22篇
  • 外设驱动库开发
    42篇
  • 数字滤波器
    5篇
  • ThreadX
    2篇
  • Modbus协议栈开发
    17篇
  • USB应用开发
    1篇
  • 通讯接口
    4篇
  • 电机驱动技术
    4篇
  • 文件系统
    1篇
  • uCOS_III
    1篇
  • 嵌入式系统IAP
    1篇
  • 基于LL库的STM32应用开发
    5篇
  • 嵌入式开发
    33篇
  • STM32研发
    26篇
  • 以太网
    5篇
  • FreeRTOS
    7篇
  • C语言
    32篇
  • 算法
    34篇
  • 自动控制
    29篇
  • 软件架构
    2篇
  • 加密解密
    3篇
  • Modbus
    14篇
  • CAN通讯
  • 数据库
  • C#语言
    2篇
  • LwIP应用开发系列
    11篇
兴趣领域 设置
  • 人工智能
    深度学习
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

PID参数自整定库之一:继电反馈整定算法

  在前述的篇章中,我们实现了PID控制器并在后续对其进行了改进。但作为经典PID控制器还存在PID参数整定的问题。通常我们可以采取人工整定的办法,但人工整定涉及到比较专业的知识,而且找到合适的参数本身也不是一件容易的事,所以人们探索了一系列适用于不同情况的PID参数自动整定算法。在这一篇中我们就来讨论基于继电反馈的PID参数自整定算法。1、基本原理  若测出了系统的一阶模型,或得出了系统的临界比例增益Kc和振荡周期Tc,则可很容易地设计出PID调节器。1.1、继电反馈自整定过程  继电反馈自整定的
原创
发布博客 2022.05.22 ·
147 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记41:ADS1256 ADC驱动

  我们经常会碰到多通道AD采集的需求,有时候甚至需要高精度的ADC器件。本篇我们将来设计并实现ADS1256模数转换器的驱动。并简单讨论该驱动使用方式。1、功能概述  ADS1256是TI公司推出的一款低噪声高分辨率的24位Sigma-Delta(E-v)模数转换器(ADC)。E-vADC与传统的逐次逼近型和积分型ADC相比有转换误差小而价格低廉的优点,但由于受带宽和有效采样率的限制,E-vADC不适用于高频数据采集的场合。该款ADS1256可适合于采集最高频率只有几千赫兹的模拟数据的系统中,数据输出
原创
发布博客 2022.05.08 ·
564 阅读 ·
1 点赞 ·
0 评论

闪存中的键值对:无文件系统 minINI

  许多嵌入式系统应用需要以持久的方式存储某种数据:校准值、设置或日志信息。对于较少的数据量,使用外部存储器或文件系统是一种过度大材小用。在许多系统中,我使用minINI以“ini-file”的方式存储键值解析,但它需要使用某种文件系统。minINI很棒,效率很高,使获取和存储数据变得非常容易。但对于简单的情况,单个闪存页面或扇区正是我所需要的。相反,直接管理该页面,为什么不在没有文件系统的情况下使用minINI?  例如,我使用上面的电路板驱动多达4个不同的步进电机和霍尔传感器。我需要存储校准偏移量和
原创
发布博客 2022.04.19 ·
139 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记40:AT25xxx外部存储器驱动

  我们在前面开发过AT24CXX系列EEPROM存储器,它使用的是I2C接口。不过有时候我们也会使用SPI接口的EEPROM存储器。在这一篇我们将来讨论AT25XXX系列EEPROM存储器的驱动设计、实现及使用。1、功能概述  AT25XXX系列EEPROM存储器采用SPI接口,因其操作简单且性价比高,常用于数据保存。出于开发面向AT25XXX系列EEPROM存储器操作的驱动目标,我们先来了解一下AT25XXX系列EEPROM存储器的基本情况。1.1、硬件描述  AT25XXX系列EEPROM存储
原创
发布博客 2022.04.05 ·
438 阅读 ·
2 点赞 ·
0 评论

外设驱动库开发笔记39:按键操作驱动

  按键在我们的项目中是经常使用到的组件。一般来说,我们都是在用到按键时直接针对编码,但这样每次都做很多重复性的工作。所以在这里我们考虑做一般性抽象得到一个可应用于按键操作的通用性驱动程序。1、功能概述  按键操作在我们的产品种经常用到,一般都是在特定的应用环境中直接有针对性的操作。但这些按键的操作往往有很多的共性,这就为代码复用提供了可能。1.1、按键的定义  在开始考虑按键操作之前,我们先来分析一下究竟什么是按键。按键一般来讲就是用于信号输入的按钮,通过响应它的操作我们可以实现想要的功能。但我们
原创
发布博客 2022.03.20 ·
613 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记38:RTD热电阻测温驱动

  我们已经讨论过多种温度检测方式,但我们尚未关注热电阻温度检测,但热电阻测温在工业环境中是非常常见的。尽管有很多集成的数字式的热电阻接口元器件,但这些器件不但成本较高,灵活性也大打折扣。所以我们有时会使用更简单灵活的电路来驱动RTD。而在这一篇中,我们将讨论如何设计并实现RTD热电阻测温的驱动。1、功能概述  RTD热电阻是常用的测温元件。RTD的英文全称为“Resistance Temperature Detector”,因此准确来说,它应该翻译为“电阻温度检测器”。RTD是一种特殊的电阻,其阻值会
原创
发布博客 2022.03.06 ·
188 阅读 ·
1 点赞 ·
0 评论

软件设计开发笔记1:基于状态机的程序设计

  在编码实现的过程中,我们会经常使用到条件判断结构,而且使用起来很方便。但是在需要转移的状态比较多,或是条件比较复杂时,我们就可能需要很长的条件判断结构来处理。不过,过于复杂的条件判断结构会给代码的编写和维护带来很大的困扰,所以我们希望探索其他的方法来简化这类条件结构。1、原理概述  条件判断在代码实现中非常有用,有时候甚至是必不可少的。但过于复杂的条件结构却会让程序逻辑变得冗长而繁琐,而在某些情况下我们希望采取方法避免这一情况出现。1.1、问题提出  在项目开发中经常会遇到if/esle语句以及
原创
发布博客 2022.02.19 ·
311 阅读 ·
1 点赞 ·
0 评论

PID控制器改进笔记之六:改进PID控制器之参数设定

  前面我们发布了一系列PID控制器相关的文章,包括经典PID控制器以及参数自适应的PID控制器。这一系列PID控制器虽说实现了主要功能,也在实际使用中取得了良好效果,但还有很多的细节部分可以改进以提高性能和灵活性。这篇中我们来讨论改进PID控制器参数设置的问题。1、问题提出  在前面的文章中我们曾推导过PID控制器的公式,并且对其进行了离散化以适用于程序实现,具体的离散化公式如下:  在编写程序时,我们将比例项的系数设定为Kp、积分项的系数设定为Ki、微分项的系数设定为Kd,其中:  这其中T
原创
发布博客 2022.02.06 ·
611 阅读 ·
1 点赞 ·
0 评论

新春快乐,虎年大吉!祝新的一年,事事如意,人人遂意!

发布动态 2022.02.01

外设驱动库开发笔记37:S1336-5BQ光敏二极管作为光度计驱动

  光敏二极管能够实现很多应用,用于光度检测即是其一。我们在一些产品中就曾使用S1336-5BQ光敏二极管进行光度值检测。所以在本篇中,我们将讨论如何设计并实现S1336-5BQ光敏二极管用于光度检测的驱动。1、功能概述  根据相关的资料,光电二极管S1336-5BQ的光谱响应范围为:190~1100nm范围,最灵敏的波长是960nm。而且光电二极管S1336-5BQ每100lx的光照对应有5μA的电流。于是我们可以据此设计一个电路,将电流的变化改变为电压变化,具体原理图设计如下:  上图中R5是采
原创
发布博客 2022.01.09 ·
262 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记36:NTC负温度系数热电阻测温驱动

  在嵌入式产品中,温度检测非常常见。在成本比较敏感而精度要求较低时,NTC电阻是个不错的选择。在这一篇中,我们将讨论如何和设计并实现一个通用的NTC驱动,以便在后续的项目中更方便的复用。1、功能概述  NTC是指随温度上升电阻呈指数关系减小、具有负温度系数的热敏电阻现象和材料。NTC热敏电阻是以锰、铜、硅、鈷、铁、镍、锌等金属氧化物为主要材料,采用陶瓷工艺制造而成的,其电阻率和材料常数随材料成分比例、烧结气氛,烧结温度和结构状态不同而变化。现在还出现了以碳化硅、硒化锡、氮化钽等为代表的非氧化物系NTC
原创
发布博客 2021.12.26 ·
479 阅读 ·
1 点赞 ·
0 评论

快速实现一个室内空气质量检测仪

冬天我们大多会关闭门窗,而依靠暖通空调设备来维持室内温度。而在保证居室温度的同时,我们也希望保持居室内大气环境的健康度。鉴于此,我们设计了一个简单的室内空气质量检测器。
原创
发布博客 2021.12.11 ·
2857 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记35:迪文触摸屏驱动

  有些时候嵌入式系统也需要显示更为复杂的图形,需要更丰富的数据展示。为此,我们需要更大,色彩更丰富,带触屏的显示屏,当然性价比更高就最好了。在我们的项目中遇到此类需求,我们有时会选择DWIN触摸屏。在本篇中,我们就来设计并实现DWIN触摸屏的驱动。1、功能概述  我们这里所说的是迪文的串口屏,该屏有多种接口类型,有使用RS485接口的屏,也有可通过跳线实现TTL接口或RS232接口的屏。但不论什么接口均采用相同的通讯协议。迪文串口屏采用的通讯协议的完整指令结构如下图所示:  其中,CRC校验不包括
原创
发布博客 2021.12.05 ·
597 阅读 ·
2 点赞 ·
0 评论

外设驱动库开发笔记35:迪文触摸屏驱动

  有些时候嵌入式系统也需要显示更为复杂的图形,需要更丰富的数据展示。为此,我们需要更大,色彩更丰富,带触屏的显示屏,当然性价比更高就最好了。在我们的项目中遇到此类需求,我们有时会选择DWIN触摸屏。在本篇中,我们就来设计并实现DWIN触摸屏的驱动。1、功能概述  我们这里所说的是迪文的串口屏,该屏有多种接口类型,有使用RS485接口的屏,也有可通过跳线实现TTL接口或RS232接口的屏。但不论什么接口均采用相同的通讯协议。迪文串口屏采用的通讯协议的完整指令结构如下图所示:  其中,CRC校验不包括
原创
发布博客 2021.12.05 ·
597 阅读 ·
2 点赞 ·
0 评论

外设驱动库开发笔记34:OLED显示屏驱动

  现在OLED显示屏在嵌入式系统中应用的越来越多。对于一些显示信息不太复杂,以显示信息为主的需求,我们一般会选择OLED显示屏。在这一篇中,我们将讨论OLED显示屏驱动的设计与实现。1、功能概述  从使用的情况来说,较为常用的是0.96英寸的OLED128x64的显示屏。这种OLED屏多采用象SSD1306这类驱动芯片,所以我们对OLED屏的操作实际就是对控制芯片的操作。  对于0.96英寸的OLED128x64的显示屏,其像素点为128x64个,对应在显示RAM中的128x64个位。在显存中,这些
原创
发布博客 2021.11.21 ·
713 阅读 ·
2 点赞 ·
0 评论

滤波器开发之五:基于算术平均的限幅滤波器

  通过AD采集数据时,我们总是希望采集到的数据是纯净而真实的,而实际上环境中存在太多的干扰信号,为了让我们得到的数据尽可能地接近实际值,我们需要降低这些干扰信号的影响。所以软件实现的数字滤波器应运而生,这一篇我们就来讨论基于中值算术平均的平滑滤波器。1、问题的提出  在我们通过AD采集获取数据时,不可避免会受到干扰信号的影响,而且很多时候我们希望尽可能的将这种影响减到最小。为实现这一目的,人们想了很多办法,有硬件方面的,也有软件方面的。在硬件难以改变或者软件能够达到相应效果时,我们一般采用软件方法来实
原创
发布博客 2021.11.07 ·
200 阅读 ·
1 点赞 ·
0 评论

LwIP应用开发笔记之十一:LwIP带操作系统UDP服务器

  我们已经实现了在FreeRTOS系统上的LwIP的移植工作,但只是简单的在系统平台上跑了起来。我们还希望能做更多的事情,这一节我们就在FreeRTOS系统上实现基于LwIP的UDP服务器。1、UDP协议简述  UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,处于传输层,是IP协议的上层协议。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。  UDP协议的主要作用是将网
原创
发布博客 2021.10.30 ·
196 阅读 ·
1 点赞 ·
0 评论

滤波器开发之四:基于算术平均的中值滤波器

  在信号采集系统中,除了我们感兴趣的数据外,难免会有一些来自于环境的干扰信号。但我们总希望我们得到的数据是纯净而真实的,为了达到这个目标,我们不得不想办法去除这些干扰信号,于是滤波器就成为我们必不可少的帮手。这一篇我们就来讨论如何通过软件实现基于中值平均算术平均算法的中值数字滤波器。1、问题的提出  在我们通过AD采集获取数据时,不可避免会受到干扰信号的影响,而且很多时候我们希望尽可能的将这种影响减到最小。为实现这一目的,人们想了很多办法,有硬件方面的,也有软件方面的。在硬件难以改变或者软件能够达到相
原创
发布博客 2021.10.23 ·
205 阅读 ·
2 点赞 ·
0 评论

外设驱动库开发笔记33:LCD1602液晶显示屏驱动

  LCD1602是一种工业字符型液晶,能够同时显示16x02即32个字符。LCD1602液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,即可以显示出图形。在这一章我们就来讨论LCD1602液晶显示屏驱动的设计与实现。1、功能概述  LCD1602液晶又被称作1602字符型液晶,这是一种只用来显示字母、数字、符号等的点阵型液晶模块。LCD1602里面存储器一般有三种:CGROM、CGRAM、DDRAM。其中DDRAM(Display Data RAM)就是显示数据RAM,用来寄存待显示
原创
发布博客 2021.10.10 ·
1418 阅读 ·
1 点赞 ·
0 评论

外设驱动库开发笔记32:HLPM025K3 PM2.5传感器驱动

  现在人们对大气环境及室内环境都比较关注。PM2.5在生活中也是常见的词汇。在有些产品中就要求检测PM2.5的数值。检测PM2.5的手段多种多样,在要求不高时我们通常可以采用激光模块。在这一篇中,我们将讨论HLPM025K3 PM2.5传感器驱动的设计与实现。1、功能概述  HLPM025K3传感器采用激光散射原理。即令激光照射在空气中的悬浮颗粒物上产生散射,同时在某一特定角度收集散射光,得到散射光强随时间变化的曲线。通过稳定的气 体对流系统,使外界空气均匀的通过自主研发设计的风路,同时在风路中设有多
原创
发布博客 2021.09.25 ·
96 阅读 ·
1 点赞 ·
0 评论
加载更多