自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

可志嵌入式

STM32 ESP32 ARDUINO开发,物联网云平台搭建,保姆式教程

  • 博客(21)
  • 资源 (32)
  • 收藏
  • 关注

原创 每节课都是一个项目 手把手用STM32打造联网气象站-13-万字讲清SPI接口和相关驱动

SPI=SerialPeripheralInterface,是串行外围设备接口,是一种高速,全双工,同步的通信总线。常规只占用四根线,节约了芯片管脚,PCB的布局省空间。我们日常用的最多的SPI接口包括FLASH,OLED屏幕,AD采样芯片,加速度传感器等。.........

2022-07-28 22:21:42 786 1

原创 每节课都是一个项目 手把手用STM32打造联网气象站-12-万字讲清I2C的来龙去脉

计算机和嵌入式科学中有一个说法,叫做硬件越简单,软件越复杂,硬件越复杂,软件越简单。比如前面讲到的FMSC接口,硬件特别复杂,连线非常多,而软件就很简单,只需要几个管脚进行组合,就可以读出数据。而本节要讲的I2C接口,则是相反的例子硬件非常简单,只需要连接两根线,但是软件缺比较复杂,需要较多的时序组合,才能够形成读写操作。...........................

2022-07-25 20:46:31 2046 1

原创 每节课都是一个项目 手把手用STM32打造联网气象站-11-彻底让你搞懂按键检测

按键检测是我们常常使用的功能。按键检测实现有很多种方法。下面我们详细介绍按键检测的3种方法,然后再深入探讨一下,如何实现单击,双击,短按,长按的按键检测。相信这部分内容值得你学习和记录,也一定在后面项目种会用的上。............

2022-07-18 16:57:59 893

原创 每节课都是一个项目 手把手用STM32打造联网气象站-10-带有屏幕显示的番茄时钟

上面详细讲解了如何搭建开发环境,如何用vscode来编辑代码,使得代码更加美观。2.上面讲解了如何点亮LED和SoftDelay并通过例子讲解了使用和不使用volatile的区别。如果在面试中,别人问到volatile的区别,你能够把这个例子讲出来,相信肯定能够大大加分。3.讲解了GPIO初始化步骤,如何规范的使用头文件,如何避免头文件被反复包含。前面3节比较简单,是为了使得学习曲线不要太陡峭,避免课程变为劝退课。4.第四节课内容开始明显增加,重点讲解了定时器以及中断的使用方法。...

2022-07-17 16:41:42 406

原创 每节课都是一个项目 手把手用STM32打造联网气象站-9-用LCD显示中文英文和图片

一种字体库必须包括字符宽度,字符高度,以及对应ASCII表的地址信息。我们把这些信息放在一起,构建一个结构体。备注上面的typedefstruct_tFont{}sFont这种写法,可以用_tFontfont1这种方式初始化,相当于定义了两种结构体类型,第一种是_tFont,第二种是sFONT,两种可以互换,_tFont就是sFONT,sFONT就是_tFont;如果把_tFont去掉,写成typedefstruct{}sFONT,语法上面也是没有任何问题的。.........

2022-07-17 14:43:37 2034 1

原创 每节课都是一个项目 手把手用STM32打造联网气象站-8-面子工程-学会点亮LCD屏幕

完成了STM32基础三板斧,用这个三板斧完成一些项目,我们接下来需要开始面子工程,点亮LCD屏幕。我们把LCD屏幕的教程提前,主要是使得教程更加有趣味性。我们每个人都会有一段时间,沉迷于某一个游戏之中,不能自拔,连续七八个小时玩游戏,熬夜到两三点,这个可能都是常态。为何游戏有这么大的魔力?游戏的吸引力来自于哪里?我们是否可以学习,让编程也有同等吸引力呢?游戏的魔力主要来自于这样几点:1.及时反馈:游戏总是每隔一段时间,会有一个正反馈,比如刷到某个装备,或者得到某个奖励。玩游戏的人不需要耗费太多的精力,就能够

2022-07-13 21:14:32 3720

原创 每节课都是一个项目 手把手用STM32打造联网气象站-7-诚不欺我,用TIM, GPIO, USART三板斧干项目(挖坑篇)

终于,我们把STM32的入门三板斧的武功讲完了。有了这三板斧,我们就可以完成一些基本的项目了。终于熬出头了,从这一节开始,我们就用这三板斧,来玩不同的项目了。当然。我们的项目不仅仅是玩,每一个项目都至少包含下面元素:1.高耦合低内聚,便于移植,便于重用;2. 不仅仅是好玩,而且有用,在其他项目中常常用得到;敬请收藏,关注,从下面开始,带你做项目带你飞!现代人很容易被各种琐事打扰,一会儿一个微信,一会儿一个电话,一会儿一条手机弹窗,让人们很难真正安静下来,从事写作或者学习。为了解决这个问题,我们利用手边的ST

2022-07-07 21:09:20 952

原创 每节课都是一个项目 手把手用STM32打造联网气象站-6-STM32基础三件套-USART的初始化和使用

STM32基础系列包含了三件套,掌握了这三件套,类似于掌握了程咬金三板斧,就可以开始干项目,创造价值了。毕竟,真正的编程是一项实战性很强的技术,掌握编程主要靠实战,而不是靠知识灌输。STM32的编程三板斧:我们已经完成了前面2板斧,并且完成了一些有趣有用的例子。接下来我们讲解重要的第三板斧:USART串口的使用。 首先我们必须理解,USART串口非常之重要!我们在物联网项目中用到的各类模块:WIFI模块,蓝牙模块,ZIGBEE模块,4G模块,LORA模块,NBIOT模块,全部都是采用串口方式,和MCU进行通

2022-07-07 20:11:39 689

原创 每节课都是一个项目 手把手用STM32打造联网气象站-5-STM32基础三件套-采用TIM定时器,实现无阻塞LED任意占空比和次数闪烁

本节主要目的是:1. 通过项目学编程:通过实现一个小小的项目功能,梳理编码思路;2. 积累代码库:实现的这个小功能,后续可以不断使用并且在多处移植;实现一个LED控制函数,可以控制LED点亮x毫秒,熄灭y毫秒,并重复z次;为了避免阻塞,不能采用任何delay。由于不能使用delay函数,我们只能按照上一节提到的方法,将LED分为两种状态:熄灭状态和点亮状态。在熄灭状态时,设定倒计时时间y,在定时器中自减;自减为0后,点亮LED,并设定倒计时时间x,同样再定时器自减。如此反复z次,即可实现led按照指定占空比

2022-07-06 18:41:19 1272

原创 每节课都是一个项目 手把手用STM32打造联网气象站-4-STM32基础三件套-TIM定时器和SYSTICK初始化

STM32基础系列包含了三件套,掌握了这三件套,类似于掌握了程咬金三板斧,就可以开始干项目,创造价值了。毕竟,真正的编程是一项实战性很强的技术,掌握编程主要靠实战,而不是靠知识灌输。STM32的编程三件套就是:前面详细讲了第一板斧,如何初始化GPIO,顺道讲了如何跟着ST学编程,如何降低代码之间的耦合性。详细可以复习一下下面:(24条消息) 每节课都是一个项目 手把手用STM32打造联网气象站-3-STM32基础三件套-掌握GPIO初始化_可志嵌入式的博客-CSDN博客本节讲解第二板斧,如何使用TIM定时器

2022-07-05 21:23:35 1767 1

原创 每节课都是一个项目 手把手用STM32打造联网气象站-3-STM32基础三件套-掌握GPIO初始化

STM32基础系列包含了三件套,掌握了这三件套,类似于掌握了程咬金三板斧,就可以开始干项目,创造价值了。毕竟,真正的编程是一项实战性很强的技术,掌握编程主要靠实战,而不是靠知识灌输。STM32的编程三件套就是:第二个是TIM定时器,这个很多人不容易理解,毕竟很多教程中,都仅仅用TIM定时器,作为PWM控制LED灯的亮度。但是想象一下,真正项目需求中,哪怕是LED点灯,一般描述也不是"LED闪两下",而是:“LED熄灭0.9S”,然后“LED点亮0.1S”,并且重复3次。也就是:需要非常精准的定时需求。三件套

2022-07-04 17:44:44 731

原创 每节课都是一个项目 手把手用STM32打造联网气象站-2-从点灯到volatile

通过实例,展示volatile在MCU中起到的作用

2022-07-03 11:55:22 360

原创 每节课都是一个项目 手把手用STM32打造联网气象站-1-安装开发环境

工欲善其事必先利其器,我们为了打造一个可以联网的智能气象站,先得把集成开发环境IDE整利索。我们这个教程的集成开发环境包括了2部分。第一部分是常见的KEIL,本文会讲解KEIL的安装和使用。第二部分是更加常见的vscode,本教程后续主要代码将在vscode中编写。vscode中做代码编辑,显示效果更好一些,而且搜索,查找等功能也更加强大。另外,当我们后续切换为其他编辑环境时,可以方便的继续使用vscode编辑代码,而可以用不同的编译工具进行项目编译。接下来分为两部分,讲解搭建开发环境。 下面将细细道来,一

2022-07-02 21:35:43 1485

原创 Cadence全家桶Capture+Allegro流程-5-编辑焊盘并制作封装

Cadence作为专业绘图工具,在高速设计领域是王者一般的存在。但是从易用性角度来说,比AD还是有些差距。接下来我们从Padstack焊盘编辑器讲起,把Allegro的使用讲解一遍,并结合实际的一个小项目的案例进行详细讲解。同样,我们这个教程不是针对专业LAYOUT工程师,而是针对智能硬件工程师。因此我们的教程会讲解原理;讲解样品制作过程;但是并不会讲解cadence的各种细节,因为作为智能硬件工程师,往往并不需要掌握cadence的方方面面。作为专业layout工程师,可能需要掌握的更多。

2022-06-13 18:10:46 3751

原创 Cadence全家桶Capture+Allegro流程-5-画完原理图后必做的几件事

完成原理图后,必须做这样几件事情,否则设计可能前功尽弃。第一:DRC检查,检查设计中的一些单端网络,或者其他简单错误;第二:输出原理图,用来调试时候方便查看;第三:导出BOM,用来物料采购;第四:导出网表,用来在allegro中绘图;第五:处理网表导出过程中的一些错误;......

2022-06-07 21:59:52 3015

原创 Cadence全家桶Capture+Allegro流程-4-带你从头开始画原理图

从头开始画一张原理图,让你学会用Capture画原理图的神奇操作。

2022-06-03 21:51:39 1356

原创 Cadence全家桶Capture+Allegro流程-3-熟悉Capture CIS

本节介绍了Capture CIS的基本界面功能,原理图库的管理,如何将新期间放置到原理图库中,如何管理我们的日常库,原理图库和PCB库是如何交互的。

2022-06-02 22:40:02 2658

原创 Cadence全家桶Capture+Allegro流程-2-创建PCB和元器件封装

上一节完成了原理图库创建,我们顺利完成了ESP32-WROOM-E的原理图的制作过程,并且把这个库放在了SCH目录下。

2022-06-02 21:15:37 770

原创 Cadence全家桶Capture+Allegro流程-1-创建原理图库和元器件库

虽然AD非常普及,也很方便,但是对于高端设计,Cadence全家桶还是必不可少的。此文档记录用Cadence Capture绘制原理图和allegro绘制PCB的流程。

2022-06-02 16:37:25 3264

原创 保姆级教程手把手教你使用Arduino开发ESP32-2-熟悉常用示例

在真正玩转开发板和创新设置之前,我们得先熟悉一下常用的示例。如果说后面的各个创意设计是大餐,那么前面的常用示例,就是前菜。好像也不对,前面的创意设计应该是各种食材。熟悉各种食材的属性,才能够进行不同的搭配。

2022-06-02 14:35:36 4454

原创 保姆级教程手把手教你使用Arduino开发ESP32-1-搭建开发环境

Arduino简单,易学,好用,资料全,特别适合小白新手上路。ESP32频率高,价格低,内置蓝牙WIFI,支持语音识别LVGL等,是国产芯片中神一样的存在,大有取代STM32的趋势,再不学就晚了。但是原生的ESP_IDF确实对新手不太友好。ESP32+ARDUINO强强联手,价格便宜量又足,功能强大,界面友好,创意多多。接下来自己挖坑自己填,用ESP32+

2022-06-01 20:42:04 29701

番茄时钟串口移植的指令测试

1.内容概要: 测试通过串口获取番茄时钟的硬件,软件版本 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-21

通过串口获取完成的番茄个数

1.内容概要: 通过串口读取记录番茄个数的全局变量,并进行打印 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-21

按键检测代码,实现短按,长按,连续按下检测功能。全程通畅无阻塞。 详细说明见博客: http://t.csdn.cn/DP43e

1.内容概要: 按键检测代码,实现短按,长按,连续按下检测功能。全程通畅无阻塞。 详细说明见博客: http://t.csdn.cn/DP43e 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: http://t.csdn.cn/DP43e

2022-07-20

通过串口控制单个番茄时钟时长

1.内容概要: 实现串口指令控制番茄时钟时长 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-19

番茄时钟通过移植增设串口通信,并通过串口环回测试

1.内容概要: 番茄时钟通过移植增设串口通信,并通过串口环回测试 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-19

串口收发指令代码,实现用指令获取硬件版本号与软件版本号

1.内容概要: 串口收发指令代码,能对接收的串口数据进行判断,实现用指令获取硬件版本号与软件版本号,具体见博客https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-19

按键检测代码,利用定时器实现按键防抖,全程无阻塞方式。

1.内容概要: 按键检测代码,利用定时器实现按键防抖,全程无阻塞方式。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: http://t.csdn.cn/DP43e

2022-07-19

按键检测代码,采用delay_ms方式,进行延时防抖。优点是不需要等到按键弹起就可以检测,缺点是会产生delay阻塞。

1.内容概要: 按键检测代码,采用delay_ms方式,进行延时防抖。优点是不需要等到按键弹起就可以检测,缺点是会产生delay阻塞。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: http://t.csdn.cn/DP43e

2022-07-19

实现番茄时钟暂停功能,设置番茄时钟结构体替代取代控制番茄时钟的全局变量,详情见博客

1.内容概要: 实现番茄时钟暂停功能,为方便调试,已经将一分钟设置为6秒时长,可在定时器中断中进行修改 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 2. 使用说明: 可作为代码块,方便后续使用 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-19

摩尔斯电码,实现将摩尔斯电码通过串口进行打印,通过蜂鸣器进行发送,具体详情见博客

1.内容概要: 内含摩尔斯电码与字符的对照表 具体详细见博客:https://blog.csdn.net/book_drabit/article/details/125666502 作为代码块,方便后续使用。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法

2022-07-19

按键检测代码,采用while循环方式,死等按键弹起。优点是稳定且实现了按键防抖,缺点是while循环在按键卡死状态下,会导致系统

1.内容概要: 按键检测代码,采用while循环方式,死等按键弹起。优点是稳定且实现了按键防抖,缺点是while循环在按键卡死状态下,会导致系统死机。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: http://t.csdn.cn/DP43e

2022-07-18

番茄时钟,可以通过串口改变番茄时钟时间,完成一个番茄时间后,单片机会通过串口将完成的番茄个数发送给串口上位机

1.内容概要: 番茄时钟,可以通过串口改变番茄时钟时间,完成一个番茄时间后,单片机会通过串口将完成的番茄个数发送给串口上位机。调用GPIO、串口、定时器。有一套完整的串口协议。 作为代码块,方便后续使用。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 详情见博客: https://blog.csdn.net/book_drabit/article/details/125666502?spm=1001.2014.3001.5502

2022-07-18

摩尔斯电码,实现将字符转为摩尔斯电码的主体功能,能将摩尔斯电码通过串口上位机进行显示

1.内容概要: 实现将字符转为摩尔斯电码的主体功能,能将摩尔斯电码通过串口上位机进行显示。部分字符转码为摩尔斯电码功能需要完善,将摩尔斯电码滴答发送功能需要完善 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-17

用来演示无阻塞方式按键防抖代码开发 1. 完成了TIM, USART, LED GPIO初始化,从这里开始修改代码

用来演示无阻塞方式按键防抖代码开发 1. 完成了TIM, USART, LED GPIO初始化,从这里开始修改代码 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-17

STM32创建黑白图片和彩色图片,在TFT LCD上实现显示。详细说明见博客:http://t.csdn.cn/SofN7

演示图片显示的详细内容: 1. 用PS将彩色图片修改为灰度图片,再修改为单色图片; 2. 采用PC2LCD工具,创建单色图片字模; 3. 采用3个for循环嵌套,实现单色图片输出; 4. 用IMG2LCD工具,创建彩色图片; 5. 用for循环,一次写入2byte,实现彩色图片输出; 6. 讲解字节序,以及如何判断字节序; 详细说明见博客: http://t.csdn.cn/SofN7 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-17

演示讲解从头开始创建中文字库,并完成中文显示的过程:1. 创建中文mini字库2. 在中文mini字库中查找字符

演示讲解从头开始创建中文字库,并完成中文显示的过程: 1. 创建中文mini字库 2. 在中文mini字库中查找字符 3. 中英文混合显示 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客 https://blog.csdn.net/book_drabit/article/details/125703402

2022-07-15

1.1创建中文字;1.2将中文字创建为中文字库;1.3中文字库的显示;1.4按照顺序显示中文;

1.内容概要: 演示讲解从头开始创建中文字库,并完成中文显示的过程: 1.1创建中文字; 1.2将中文字创建为中文字库; 1.3中文字库的显示; 1.4按照顺序显示中文; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-14

实现了番茄时钟的25分钟计时,开机后led闪烁25次,每过1分钟闪烁次数递减一次。计时结束后,蜂鸣器蜂鸣25次。

1.内容概要: 实现番茄时钟基本计时功能,调用了GPIO、定时器、蜂鸣器、LED。 具体详细见博客; 作为代码块,方便后续使用。 2. 使用说明: 通过修改宏定义可以修改番茄时钟计时时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-14

实现LCD显示,详细介绍了LCD驱动,并介绍了LCD绘制直线和绘制长方形的工作原理,并且给出了对应的DEMO;

1.内容概要: 实现LCD显示,详细介绍了LCD驱动,并介绍了LCD绘制直线和绘制长方形的工作原理,并且给出了对应的DEMO; 具体详细见博客; 作为代码块,方便后续使用。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-13

实现串口环回,实现printf,实现SendString等函数;具体详细见博客;作为代码块,方便后续使用。

1.内容概要: 实现FMSC模拟8080接口,ILI9341初始化,英文字符输出,英文字符串输出 具体详细见博客; 作为代码块,方便后续使用。 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-07

STM32 TIM6和USART2同时使能,并通串口发送HI。 用来示例NVIC分组配置过程; 增加环回功能,增加LED点亮熄灭

1.内容概要: STM32 TIM6和USART2同时使能,并通串口发送HI。 用来示例NVIC分组配置过程; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-07

STM32 TIM6和USART2同时使能,并通串口发送HI。 用来示例NVIC分组配置过程;

1.内容概要: STM32 TIM6和USART2同时使能,并通串口发送HI。 用来示例NVIC分组配置过程; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-07

STM32, TIM定时器时间分钟,小时计时,并且通过LED闪烁方式显示出来。

1.内容概要: 采用类似typedef struct SysTimer { uint32_t SysCounter; uint32_t SysFlag; uint8_t min; uint8_t hour; }SysTimer_TypeDef的方式,定义系统时间结构体类型,用结构体类型设置时间参数,来进行计时; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-06

采用类似GPIO_TypeDef的方式,定义Led_TypeDef结构体类型,用结构体类型设置led参数,用固定占空比闪烁

1.内容概要: 采用类似GPIO_TypeDef的方式,定义Led_TypeDef结构体类型,用结构体类型设置led参数,用固定占空比闪烁; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-06

STM32无阻塞控制LED,可以设置LED占空比和闪烁次数,采用TIM精确定时,采用宏定义定义数字,全局变量在头文件中声明。

1.内容概要: STM32无阻塞控制LED,可以设置LED占空比和闪烁次数,采用TIM精确定时,采用宏定义定义数字,全局变量在头文件中声明,采用静态全局变量避免变量暴露; 2. 使用说明: 通过修改宏定义可以修改开关时间; 通过查看头文件可以方便移植到不同硬件上; 3. 适合人群: 适合STM32学习者,或者STM32从业人员,便于积累功能模块,了解无阻塞设计方式;掌握静态全局变量,全局变量使用方法 4. 其他说明: 更加详细说明见博客

2022-07-06

STM32中,采用定时器6,实现无阻塞0.5HZ LED闪烁;全程宏定义软编码,方便移植。具体见博客。

1. STM32中,采用定时器6; 2. 实现无阻塞0.5HZ LED闪烁; 3. 全程宏定义软编码,方便移植。 4.详细描述见博客部分;

2022-07-05

led点灯代码。代码简单,主要用来验证开发环境。开发环境采用vscode+keil,详见博文

工欲善其事必先利其器,我们为了打造一个可以联网的智能气象站,先得把集成开发环境IDE整利索。 我们这个教程的集成开发环境包括了2部分。第一部分是常见的KEIL,本文会讲解KEIL的安装和使用。第二部分是更加常见的vscode,本教程后续主要代码将在vscode中编写。vscode中做代码编辑,显示效果更好一些,而且搜索,查找等功能也更加强大。另外,当我们后续切换为其他编辑环境时,可以方便的继续使用vscode编辑代码,而可以用不同的编译工具进行项目编译。 ———————————————— 版权声明:本文为CSDN博主「可志嵌入式」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/book_drabit/article/details/125575238

2022-07-03

STM32F103C8T6 AM2320单总线驱动

AM2320单总线驱动,SDA连接PB7, SDL需要拉低,确保工作在单总线状态。上电即可稳定工作,方便项目开发中应用。AM2320.C和AM2320.H单独编写为驱动程序,方便项目移植。 数据通过串口输出,方便查看

2018-12-10

程序运行过程中,调用__WFI();命令,即可进入睡眠模式。WFI可以通过任意中断唤醒,这里采用按键中断唤醒

随着电池供电的应用场景越来越对,非常有必要深入理解和应用STM32的低功耗设计。程序运行过程中,调用__WFI();命令,即可进入睡眠模式。WFI可以通过任意中断唤醒,这里采用按键中断唤醒。唤醒后,程序从WFI下一行开始执行。

2018-12-08

STM32通过RTC从休眠模式,定时唤醒。 主程序中,在当前时间,设置30S后RTC唤醒,然后就进入休眠状态。RTC在30S后自动唤醒,从头开始运行主程序。

1. 主循环中,当sec达到15s时,设定15s后闹钟,然后进入待机模式Sys_Enter_Standby; 2. RTC中断定时中,清中断。RTC定时中断中,不需要做其他操作。定时到达后,RTC定时会自动唤醒MCU; 3. 注意:standby唤醒后,程序会重头开始执行, standby之后语句执行不到。 通过RTC设置系统进入待机模式,并定时唤醒,是一个非常省电而且非常可靠的方法。

2018-11-18

STM32 RTC使用,包括初始化,后备寄存器,RTC定时,年月日设置和读取等

资源内容包括: RTC初始化;RTC设置和读取(RTC_Set,RTC_Get),RTC闹钟设置和读取(RTC_Alarm_Set)RTC周的计算(RTC_Get_Week),RTC中断配置(RTC_NVIC_Config,RTC_IRQHandler)等RTC综合灵活的应用方式 具体介绍见: https://blog.csdn.net/book_drabit/article/details/83934153

2018-11-18

单片机解码EV1527程序

单片机解码EV1527,采用汇编,效率较高。

2012-12-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除