随笔分类 -  嵌入式开发

嵌入式开发相关的文章
摘要:在许多嵌入式应用程序中,内存分配必须是静态的,而不是动态的。意味着在应用程序中不应使用对malloc()或free()等内容的调用,因为它们可能会在运行时失败(内存不足、堆碎片)。 但是,当与第三方库甚至 C/C++ 标准库链接时,如何确保不使用动态内存?对于C++对象或对 printf()的简单调 阅读全文
posted @ 2022-12-18 08:47 Moonan 阅读(255) 评论(0) 推荐(0)
摘要:许多嵌入式系统应用需要以持久的方式存储某种数据:校准值、设置或日志信息。对于较少的数据量,使用外部存储器或文件系统是一种过度大材小用。在许多系统中,我使用minINI以“ini-file”的方式存储键值解析,但它需要使用某种文件系统。minINI很棒,效率很高,使获取和存储数据变得非常容易。但对于简 阅读全文
posted @ 2022-04-19 12:48 Moonan 阅读(319) 评论(2) 推荐(1)
摘要:冬天我们大多会关闭门窗,而依靠暖通空调设备来维持室内温度。而在保证居室温度的同时,我们也希望保持居室内大气环境的健康度。鉴于此,我们设计了一个简单的室内空气质量检测器。 1、系统概述 我们依靠暖通空调设备来维持室内温度、湿度和通风水平,以保证居住者的健康和舒适。所以我们希望设计一个小巧的、简单的、低 阅读全文
posted @ 2021-12-11 19:37 Moonan 阅读(478) 评论(0) 推荐(0)
摘要:uCOS-III实时操作系统在MCU平台被广泛使用,在这里我们将简单的记录如何将uCOS-III实时操作系统移植到目标平台上并运行。 1、必要的准备 在开始uCOS-III实时操作系统的移植前,我们还需要做一些必要的准备,如确定目标板、准备目标工程及uCOS-III实时操作系统源码等。 1.1、获取 阅读全文
posted @ 2020-07-12 21:42 Moonan 阅读(3271) 评论(0) 推荐(0)
摘要:前面我们已经完成了LwIP协议栈基于逻辑的基本移植,在这一节我们将以RAW API来实现UDP服务器。 1、UDP协议简述 UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,处于传输层,是IP协议的上层协议。UDP有不提供数据包分组、组装和 阅读全文
posted @ 2019-11-03 20:45 Moonan 阅读(3847) 评论(0) 推荐(0)
摘要:如果供应商为我自己的项目提供了一个起点,那就太好了。工作'眨眼'始终是一个伟大的首发。方便总是有代价,而且“眨眼”就是夸大“切换GPIO引脚”的代码大小。对于具有少量RAM和FLASH的设备,这可能会引起关注:如果'blinky'占用那么多,我的应用程序是否适合该设备?不要担心:可以轻松地修剪掉(或 阅读全文
posted @ 2019-09-08 17:00 Moonan 阅读(2944) 评论(0) 推荐(0)
摘要:现在,TCP/IP协议的应用无处不在。随着物联网的火爆,嵌入式领域使用TCP/IP协议进行通讯也越来越广泛。在我们的相关产品中,也都有应用,所以我们结合应用实际对相关应用作相应的总结。 1、技术准备 我们采用的开发平台是STM32F407和LwIP协议栈。在开始之前,我们需要做必要的准备工作。 首先 阅读全文
posted @ 2019-07-27 15:20 Moonan 阅读(7739) 评论(1) 推荐(1)
摘要:在本次项目中,限于空间要求我们选用了STM32F030F4作为控制芯片。这款MCU不但封装紧凑,而且自带的Flash空间也非常有限,所以我们选择了LL库实现。本篇将说明基于LL实现USART通讯。 1、概述 我们想要实现基于RS485的Modbus通讯实际就是基于USART的通讯。USART使用可编 阅读全文
posted @ 2019-03-31 21:21 Moonan 阅读(4533) 评论(0) 推荐(0)
摘要:在本次项目中,限于空间要求我们选用了STM32F030F4作为控制芯片。这款MCU不但封装紧凑,而且自带的Flash空间也非常有限,所以我们选择了LL库实现。本文我们将说明如何通过LL库实现PWM信号的输出。 1、概述 我们知道STM32的TIM计时器可以输出PWM信号,这测我们也采用STM32F0 阅读全文
posted @ 2019-03-22 22:03 Moonan 阅读(4137) 评论(0) 推荐(0)
摘要:在本次项目中,限于空间要求我们选用了STM32F030F4作为控制芯片。这款MCU不但封装紧凑,而且自带的Flash空间也非常有限,所以我们选择了LL库实现。本篇我们将基于LL库采用模拟I2C接口的方式实现温湿度采集。 1、SHT70简述 SHT70是一款集温湿度测量于一体的传感器,现在对其作简要介 阅读全文
posted @ 2019-03-16 22:14 Moonan 阅读(1379) 评论(0) 推荐(0)
摘要:大多数主机或桌面系统(比如Linux,Mac或Windows)都有一个正常的用例,你可以在早上启动操作系统,然后在晚上关闭它,然后你就离开机器。嵌入式系统是不同的:他们没有参加,他们应该“永远”运行。并非每个嵌入式系统都需要运行操作系统(或者在那个世界中:实时操作系统或RTOS),但这同样适用于:在 阅读全文
posted @ 2019-02-16 20:19 Moonan 阅读(5687) 评论(0) 推荐(0)
摘要:在本次项目中,限于空间要求我们选用了STM32F030F4作为控制芯片。这款MCU不但封装紧凑,而且自带的Flash空间也非常有限,所以我们选择了LL库实现。在本文中我们说明一下,使用LL库实现MS5536C的SPI通讯。 1、MS5536C简述 MS5536C是一个系列的高分辨率工厂校准压力传感器 阅读全文
posted @ 2019-01-11 21:25 Moonan 阅读(2411) 评论(0) 推荐(0)
摘要:本文原文出自MCU on Eclipse网站,作者为Erich Styger,原文网址:https://mcuoneclipse.com/2018/09/30/tutorial-git-with-eclipse/。本人翻译了此篇文章,有些短语难以找到准确表达的中文词语,所以保持了原文。限于个人的知识 阅读全文
posted @ 2018-10-13 21:11 Moonan 阅读(39135) 评论(0) 推荐(2)
摘要:在MCU on Eclipse网站上看到Erich Styger在8月26日发布的博文,一篇关于微控制器单元测试的文章,有很高的参考价值,特将其翻译过来以备学习。原文网址:https://mcuoneclipse.com/2018/08/26/tutorial-%CE%BCcunit-a-unit- 阅读全文
posted @ 2018-09-02 10:39 Moonan 阅读(999) 评论(0) 推荐(0)
摘要:在MCU on Eclipse网站上看到Erich Styger在8月2日发的博文,一篇关于在Amazon FreeRTOS V10中使用运行时统计信息的文章,本人觉得很有启发,特将其翻译过来以备参考。原文网址:https://mcuoneclipse.com/2018/08/02/tutorial 阅读全文
posted @ 2018-08-11 14:29 Moonan 阅读(2551) 评论(0) 推荐(0)
摘要:前段时间由于应用需要对产品授权进行限制,所以研究了一下有关STM32 MCU的唯一ID的资料,并最终利用它实现了我们的目标。 1、基本描述 在STM32的全系列MCU中均有一个96位的唯一设备标识符。在ST的相关资料中,对其功能的描述有3各方面: 用作序列号(例如 USB 字符串序列号或其它终端应用 阅读全文
posted @ 2018-01-20 20:33 Moonan 阅读(5422) 评论(3) 推荐(0)
摘要:最近我们在开发一个项目时,用到了MCU自带的ADC,在调试过程中发现通道之间村在相互干扰的问题。以前其实也用过好几次,但要求都不高所以没有太关注,此次因为物理量的量程较大,所以看到了变化。 首先来说明一下此次的软硬件环境,MCU采用的是STM32F103VET6,ADC采用自带的ADC1,使用通道6 阅读全文
posted @ 2017-12-24 08:57 Moonan 阅读(8184) 评论(0) 推荐(0)
摘要:最近我们在开发臭氧发生器时,需要监测生成的臭氧的浓度,于是想到使用光度计来测量。因为不同浓度的臭氧对管的吸收作用是不相同的,于是检测光照强度的变化就可以得到相应的浓度数据。 1、硬件设计 此次光照度检测我们选用了S1336-5BQ光电点二极管,其光谱响应范围为:190~1100nm范围。而我们的光源 阅读全文
posted @ 2017-12-17 14:01 Moonan 阅读(1672) 评论(0) 推荐(0)
摘要:NTC(Negative Temperature Coefficient)是一种随温度上升时,电阻值呈指数关系减小的热敏电阻。应用广泛,最近我们就采用了NTC来控制加热并测温,并达到了预期的效果。 1、硬件设计 我们使用三极管作为加热元件,通过NTC来控制通过三极管的电流,以起到控制温度的作用,至于 阅读全文
posted @ 2017-11-26 09:59 Moonan 阅读(11712) 评论(0) 推荐(0)
摘要:最近在MCU on Eclipse网站上看到Erich Styger所写的一篇有关在Eclipse中使用Makefile创建项目的文章,文章讲解清晰明了非常不错,所以呢没人将其翻译过来供各位同仁参考。当然限于个人水平,有不当之处恳请指正。原文网址:https://mcuoneclipse.com/2 阅读全文
posted @ 2017-11-25 19:10 Moonan 阅读(4257) 评论(0) 推荐(1)