
32位单片机开发
32位单片机开发
雨中来客
一枚普通的嵌入式软件开发工程师,10年优快云菜鸟,喜欢瞎折腾,热衷走弯路,一起共勉。
展开
-
32单片机串口数据接收、空闲IDLE中断详解
一开始写单片机程序的时候不太清楚空闲中断这个东西,每次用串口接收数据,都要再开一个定时器,在定时器内进行倒计时,每次接收数据就重置计时时间,计时结束就触发中断,再判断所有接收的数据,当然这种方法也并不过时,因为不是所有单片机都有空闲中断这个东西的,空闲中断实际是为开发者串口接收数据提供了部分便利而已,无论是用定时器还是空闲中断原理实际都是一样的。这里我只对比两款常用单片机的空闲中断,只是为了说明不同品牌实现空闲中断的方式也不同,但作用都是差不多的。原创 2024-12-20 09:39:23 · 723 阅读 · 0 评论 -
[C语言]自己实现sprintf,printf函数
自己实现sprintf,printf函数原创 2024-07-25 11:43:53 · 1080 阅读 · 0 评论 -
32单片机RTC时间接续,掉电时间保存
首先要实现RTC掉电之后时间还能继续走,RTC电池是必要的,设备第一次启动需要初始化配置RTC,但当二次启动再重新配置RTC会导致RTC计数器置零,所以传统的程序流程是不行的,我们需要知道设备是第一次启动还是二次启动,来判断是否需要重新初始化配置RTC。另外RTC电池会给RTC功能部分供电不代表会给MCU供电,即使是二次启动不需要再初始化RTC,并不代表就不需要初始化MCU了,MCU的部分RTC相关的功能还是需要进行配置才能获取到RTC时间。原创 2024-01-16 12:55:51 · 3031 阅读 · 0 评论 -
晟元协议指纹头,单片机开发踩坑指南
晟元协议指纹头单片机开发踩坑原创 2022-08-30 15:30:15 · 1995 阅读 · 1 评论 -
合泰BS8116A-3触摸芯片开发踩坑指南
合泰BS8116A-3开发踩坑原创 2022-08-29 14:04:15 · 4933 阅读 · 5 评论 -
单片机串口时序与TTL电平
串口是一个广义的概念,这是单讲单片机的串口UART,以及单片机的TTL电平,主要是记录一下自己忘了还能再看一下。1、TTL电平标准输出 L: <0.8V ; H:>2.4V。输入 L: <1.2V ; H:>2.0VTTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限就只有(0.8-0)/2=0.4V,高电平的噪声容限为(5-2.4)/2=1.3V。2、UART通信时序原创 2022-01-22 15:43:59 · 4733 阅读 · 0 评论 -
[GD32]关于GD32F103单片机官方库在Keil5中编译出错
从官网下载官方库后按照STM32环境的流程,把需要的文件都添加进项目中了。编译报错缺少两个文件:core_cmInstr.h 和 core_cmFunc.h.\Core\core_cm3.h(176): error: #5: cannot open source input file "core_cmInstr.h": No such file or directory.\Core\core_cm3.h(177): error: #5: cannot open source input fi原创 2022-01-18 09:50:12 · 2435 阅读 · 2 评论 -
[HC32]关于Keil5中使用C语言位域的问题
在华大32位m0 内核单片机平台开发中,遇到使用华大官方的标准库示例程序却不能启动单片机模块,调试程序发现,某些函数在执行位操作的时候会把前面设置的寄存器值全部清空再设置自己的,注意到这些函数通常都是在操作位域的时候出现的问题,于是我只能修改官方库,改为用C语言位运算来操作寄存器,但是这样很不方便,改起来也很麻烦,后来将arm编译器版本改为 v5版本就好了,注意到我原来使用版本是arm compiler v6.15。我不能确定是单片机的问题还是编译器的问题,有遇到同样问题的小伙伴改下编译器版本设置就好了原创 2022-01-15 09:20:36 · 719 阅读 · 0 评论