STM32
janet2013t
这个作者很懒,什么都没留下…
展开
-
构建驱动模块1--STM32F4 DS18B20温度采集驱动
构建驱动模块1---STM32 DS18B20温度采集 一般常见的STM32的关于DS18B20的例程都是针对一个IO口进行操作,若要实现多个IO口读取温度,需要写多个DS18B20相同的驱动,不方便管理。这个代码就是针对这种情况完善的单总线管理,移植简单,把相关的单总线操作集成在一起。 DS18B20初始化函数,实现设备挂载,把DS18B20与单总线进行连接。void ds...原创 2018-10-30 15:45:59 · 2812 阅读 · 0 评论 -
构建驱动模块2--STM32模拟IIC访问 (AT24C02)EEPROM 操作
构建驱动模块2-- STM32模拟IIC访问 (AT24C02)EEPROM 操作 模拟IIC接口可以使用任意两个IO口实现,不受芯片引脚限制,而且硬件IIC在通信出错后,无法自行恢复,模拟IIC则可以迅速恢复;通过调整延时参数,可以调节访问速度。本程序把模拟II2C封装成一个模块,AT24C02只需要调用该模块即可。1、初始化EEPROM设备。调用...原创 2018-10-30 16:50:12 · 1684 阅读 · 0 评论 -
构建驱动模块3--STM32 NandFlash yaffs2文件系统移植
构建驱动模块3--基于STM32 Nand Flash yaffs2文件系统移植 Yaffs(Yet Another FlashFile System)文件系统是专门针对NAND闪存设计的嵌入式文件系统,目前有YAFFS和YAFFS2两个版本,两个版本的主要区别之一在于YAFFS2能够更好的支持大容量的NAND FLASH芯片。本程序实现YAFFS2的移植。一、硬...原创 2018-10-30 17:33:16 · 5814 阅读 · 7 评论 -
构建驱动模块4--STM32 spiflash W25Q128 驱动
构建驱动模块4--STM32 spiflash W25Q128 驱动一、硬件接口 W25Q128 将 16M 的容量分为 256 个块(Block),每个块大小为 64K 字节,每个块又分为 16个扇区(Sector),每个扇区 4K 个字节。 W25Q128 的最少擦除单位为一个扇区,也就是每次必须擦除 4K 个字节。操作需要给 W25Q128 开辟一个至少 4K 的缓存区...原创 2018-10-30 20:13:51 · 2374 阅读 · 0 评论 -
构建驱动模块5--STM32 蜂鸣器驱动
构建驱动模块5--STM32 蜂鸣器驱动 一、硬件原理图: 蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。主要分为有源和无源,注意,这里的“源”不是指电源,而是指震荡源。有源的蜂鸣器里面带有驱动电路,只要通电就响,而无源蜂鸣器需要特有频率驱动,本程序设计一个最简单的有...原创 2018-10-30 20:50:28 · 3114 阅读 · 0 评论 -
构建驱动模块6--STM32 缓冲队列
构建驱动模块6--STM32 缓冲队列 缓冲区常常用于临时保存数据,特别是在通讯过程中,先把数据接收下后,后期等待任务空闲在进行处理,这样避免接收数据中处理数据而造成数据丢失。缓冲队列里经常使用为环形缓冲队列,环形队列是一个头尾相接的队列,一般定义当入队操作为缓冲写操作,而出队则定义为缓冲读。当一个数据或者一组消息来到时,进行入队操作;当需要解析消息时才有出队操作。针对该思想编写一个最...原创 2018-10-30 21:37:08 · 648 阅读 · 0 评论 -
TFTP 实现上传和下载数据 以及固件升级
TFTP 实现上传和下载数据 以及固件升级 TFTP协议全称为简单文件传输协议,它是以UDP为基础的应用层协议。在实现TFTP服务器之前,需要详细理解协议。目前很多介绍TFTP协议的书籍都是参照RFC1350,比如著名的《TCP/IP详解》。然而RFC1350已经被后来RFC2347、RFC2348、...原创 2019-09-04 11:33:47 · 2358 阅读 · 0 评论