
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
OS的作用是解决软件和底层硬件之间的耦合度,避免应用层软件直接操作底层硬件。学习单片机裸机开发的时候,学习80C51和学习89C51以及IAP15,我们写程序时要操作IO所要调用的接口都是不一样的,这样学习和使用起来所要掌握的接口就特别多,也就特别复杂,记起来也特别麻烦:在80C51中我们需要先设置IO为普通IO模式还是外设模式,上拉还是下拉,然后才能操作IO;在89C51中,我们可以直接操作IO

三种查询方式总结回调函数查询内存开销小,但查询效率相对较低;全缓冲查询的查询效率高,但是内存消耗大;字节缓冲查询兼具查询效率和低开销。(优先使用第三种查询方法)sqlite实现C语言自定义函数封装由于数据库提供的API接口过于复杂,使用的过程顺序也很繁琐,所以对于原生态的API在实际工作开发中,会进行一层封装,减少调用传参,减少调用次数,增加代码可读性,提高开发效率。可封装如下:包括创建数据库、建

DS18B20 是由 DALLAS 半导体公司推出的一种的“一线总线(单总线)”接口的温度传感器。与传统的热敏电阻等测温元件相比,它是一种新型的体积小、适用电压宽、与微处理器接口简单的数字化温度传感器。DS18B20 温度传感器具有如下特点:1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电。很少这样操作,一般直接用电源供电。2、独特的单线接口方式,DS18B

一是项目需要,随着产品 要实现的功能越来越多,单纯的裸机系统已经不能够完美地解决问题,反而会使编程变得 更加复杂,如果想降低编程的难度, 我们可以考虑引入 RTOS 实现多线程管理, 这是使用 RTOS 的最大优势。这种方法各有利弊,如果是做产品,好处是可以快 速的实现功能,将产品推向市场,赢得先机,弊端是当程序出现问题的时候,因对这个 RTOS 不够了解,会导致调试困难,焦头烂额,一筹莫展。如果

学习C++的意义可以帮助巩固和复习C语言,了解面向结构和面向对象语言之间的区别与联系帮助快速学习其他语言以面向对象的思想帮助系统的设计及架构面向对象带来的好处易维护和易扩展:由于封装和模块化,每个对象都有清晰的接口和功能,易于维护和扩展。可复用:通过继承和组合可以重用代码。模块化:将一个大系统分解成相互合作的小模块。真实映射:面向对象可以更自然的映射真实世界的事物与概念。高内聚低耦合:每个对象只关

前面讲解 priority_queue 容器适配器时,还遗留一个问题,即当头文件提供的排序方式(std::less 和 std::greater)不再适用时,如何自定义一个满足需求的排序规则。首先,无论 priority_queue 中存储的是基础数据类型(int、double 等),还是 string 类对象或者自定义的类对象,都可以使用函数对象的方式自定义排序规则。//函数对象类class c

前面在讲解如何创建 map、multimap、set 以及 multiset 容器时,遗留了一个问题,即如何自定义关联式容器中的排序规则?实际上,为关联式容器自定义排序规则的方法,已经在 《STL priority_queue自定义排序方法》一节中做了详细的讲解。换句话说,为 Priority_queue 容器适配器自定义排序规则的方法,同样适用于所有关联式容器。总的来说,为关联式容器自定义排序规

这段始终无法输出到上位机,于是我想到应该是FLASH读写出现问题了,首先我把sf_WriteBuffer注释掉,发现串口打印信息正常,于是我把问题锁定到了sf_WriteBuffer这个写入FLASH函数上。最近用STM32F429做智能家居项目,在使用SPI读写W25Q128保存智能门锁的密码时,发现写入FLASH时程序卡死。4、到启动文件中,将堆区和栈区空间都改大(如果文件写保护,先通过修改文

三种查询方式总结回调函数查询内存开销小,但查询效率相对较低;全缓冲查询的查询效率高,但是内存消耗大;字节缓冲查询兼具查询效率和低开销。(优先使用第三种查询方法)sqlite实现C语言自定义函数封装由于数据库提供的API接口过于复杂,使用的过程顺序也很繁琐,所以对于原生态的API在实际工作开发中,会进行一层封装,减少调用传参,减少调用次数,增加代码可读性,提高开发效率。可封装如下:包括创建数据库、建

在2023年第十四届蓝桥杯单片机的竞赛中,蓝桥杯组委会官方将赛点资源包的iic、onewire和ds1302模块驱动文件做了更改,缺失了引脚定义和头文件包含。本期是我总结出来的新的驱动程序使用方法。








