自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 C语言程序环境搭建

Visual C++ 6.0简称VC或者VC6.0,是微软1998年推出的一款C/C++ IDE,界面友好,调试功能强大。VC6.0是一款革命性的产品,非常经典,至今仍然有很多企业和个人在使用,很多高校也将VC6.0作为C语言的教学基础,作为上机实验的工具。VC6.0安装包百度网盘链接:https://pan.baidu.com/s/1Lr8pmCvBXT9J0IyHYN8pHg提取码:0000。

2023-09-08 17:18:50 442 2

原创 K210 定时器

将其调用在串口发送函数中,进行1s一次发送。在串口的基础上加上定时器。

2023-07-18 15:50:06 128 1

原创 K210 串口通讯

【代码】K210 串口通讯。

2023-07-18 15:42:14 418 1

原创 CubeMX IDE TFTLCD代码移植

设置完时钟以及基本外设之后,对TFTLCD屏幕引脚进行配置,这里使用的FSMC来配置,比较方便(我用的是STM32F407最小系统板根据其HAL库代码中的引脚定义进行的配置)使用FROST的时候,大概率会遇到发现搬移代码之后有很多的报错,代码的移植让人头大,不清楚该如何处理。之后找到LCD.c中的引脚定义函数将其删除(因为FSMC中已经定义,所以将这里删除即可)对其所有u8,u16,u32的格式改为uint8_t,uint16_t,uint32_t。然后在LCD中将其找到修改为__IO uint16_t。

2023-07-18 14:47:27 177 1

原创 CubeMX IDE ADC

启动不连续转换模式(查询模式下使用),不连续转换数量一定要设置为1,代表每次只转换一个通道,见单通道实例;配置为独立工作模式,右对齐。扫描工作方式:1.取消连续转换(中断模式下使用);如果要多通道采集AD值,可以采用顺序转换。创建ADC任务,通过LED0来测试ADC。配置PA0,PA6和PA7为模拟输入通道。配置ADC1的IN4即PA4为模拟输入。编写代码,加入AD转换函数。建立文件,将基本外设设置好。

2023-07-11 03:52:04 88

原创 CubeMx IDE串口

STM32中HAL_UART_Transmit()函数本应该实现阻塞赋值的功能,连续发送时,自动会等待上一个函数发送完成,然后进行下一个函数的发送,并不需要Delay.HAL_UART_Transmit参数说明:参数1:使用的串口,2:要发送的数据,3:数据大小,4:发送的超时时间。修改字符串以及字符判断的数据时同时也需要修改主函数中对于串口函数初始化的代码。完成以上步骤,则可以在需要的地方使用printf实现串口数据发送功能。本例以串口接受一个字节为例,讲解在操作系统下,串口的用法。

2023-07-11 03:09:53 182

原创 CubeMX IDE 软件定时器测试

在FREERTOS中常采用软件定时来完成定时相关功能。软件定时器的个数只与单片机的RAM有关,没有个数限制。下面以定时1秒为例说明软件定时器的用法。2.点击Timers and Semaphores,选择add,设置定时器名称,回调函数名称。1.切换到图形配置界面,点击Config parameters,使能软件定时。4.定位到定时器任务创建代码,添加回调函数(实现计数完成时用户的回调功能)此函数就对LED灯1s进行一次状态取反。5.定位到函数体,修改函数内容。3.点击保存,重新生成代码。

2023-07-10 05:07:40 97 1

原创 CubeMX IDE 多按键的使用

完成以上操作即可通过按键对LED的状态进行取反,KEY0控制LED0,KEY1控制LED1。根据前两篇文章的基本外设配置好后进行操作。3、在按键任务中增加按键识别代码。2.声明按键相关私有函数。1.声明按键标志变量。

2023-07-10 04:18:37 62 1

原创 CubeMX IDE LED以及按键的应用

HAL_GPIO_TogglePin的含义可以通过单词Toggle来理解,Toggle的含义为翻转,那TogglePin即可理解为引脚口电平翻转。2.在函数中添加HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)整体即为:输出的LED1的值(LED的亮灭)是通过读取按键KEY0的状态来决定的,当按键按下的时候,LED1亮,反之则灭。HAL_GPIO_WritePin函数中Write为写,即可理解为输出。4.点击锤子工具,编译项目。

2023-07-10 03:38:49 115 1

原创 CubeMX IDE GPIO的初始化以及一些简单配置

7、切换到图形化界面,点击Advanced setting,选择USE_NEWLIB_REENTRANT,配置为Enable,再点击保存,将自动生成代码。2.输入项目名称,项目保存位置(一般在安装时会提醒你是否默认文件保存位置,调整过文件保存位置后即可不再做变动,方便文件查找)1.这里我使用的是正点原子的STM32mini板,所以芯片型号选择STM32F103RCT6,选择之后点击next。6、项目创建完成,点击IDE左上角的保存按钮。弹出如下警告,点击否。为了方便使用,把自带的外设进行配置,便于操作。

2023-07-10 03:17:53 404 2

原创 51单片机蓝牙温度检测风扇

1.蓝牙串口的使用图中有两个同名的串行口缓冲寄存器,其中一个为发送寄存器SBUF,另一个为接收寄存器SBUF,两个寄存器便于单片机进行全双工方式进行通信。串行发送数据时:SBUF写入数据。串行接收数据时:SBUF发送数据。当发送或接收完毕时,系统会自动产生中断信号,TI(发送中断)或RI(接收中断)。串口的相关寄存器波特率设置:首先需要使用定时器1来设置波特率(在特定的时钟触发下,串行数据完成逐位传输的过程)。定时器1通常设置为8位自动重载定时器。

2022-12-09 00:08:57 1057 1

原创 51单片机按键控制流水灯

抖动是机械按键存在的现象,是必须要进行处理的。一般处理有两种方式:一种是硬件消抖,另一种是软件消抖。硬件消抖不仅会增加开发成本,而且有时不稳定。一般都会选择软件消抖。KEY)的含义:因为按键默认高电平,所以!KEY的值为0,当按下按键电平变为低电平,!KEY的值也就变为"非0";这样我们就知道按键上电的默认电平为高电平。所以我们只需要控制按键按下时给一个低电平0,不按下时默认高电平1就行。按键所对应的引脚为P3的0、1、2、3引脚口,并且这里总共有四个独立按键,它们公共的一段都接到了。

2022-11-26 12:14:44 23089

原创 51单片机LED流水灯、走马灯的实现

图中主要包括51单片机芯片和流水灯模块,流水灯模块接在了单片机的P2口,500欧电阻是用来保护电路的。由原理图可以知道,我们可以看到LED的左边接了电源(高电平),在P2口给一个低电平即可点亮LED灯。相反,如果要LED灯熄灭,就要把P1口的电平变为高电平即可。要实现流水灯功能,我们只要将LED1~LED8依次点亮、熄灭,以此类推,8只LED变回一亮一暗的做流水灯了。上图是仿真软件proteus的软件仿真图,可以通过仿真来对硬件进行操作。

2022-11-25 21:29:07 3831

原创 定时器笔记

定时器笔记:用于计时和提高CPU运行效率(代替延时函数)我用的是STC89C52BC的芯片,所以有3个定时器,分别是T0,T1,T2定时器本质就是对脉冲计数,你可以对脉冲发出的时间进行定时1s或1ms发出一次脉冲。定时器介绍:定时器分别有定时器1和定时器0,这里用定时器0。此为定时器0和定时器1的相关寄存器:TCON寄存器(可位寻址):TF0:定时器T0溢出的中断标志。T0被允许计数后,会从初值一直加1加到65535后置0。TR0:定时器T0的运行控制位。TR=0是允

2022-05-10 15:15:26 180

空空如也

空空如也

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

TA关注的人

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