普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了)

简介

继上篇 普中STM32-PZ6806L开发板(有点悲伤的故事) 说到 关于 普中STM32-PZ6806L开发板的LED流水灯也被烧坏掉了,再也无法玩流水灯, 内心充满了只会流水灯的不甘, 流水灯就是单片机的Hello World,怎么能没有呢?

事情发展

好巧不巧想起最近电磁炉坏掉啦,这不是《歇后语》省略…, 拆掉了电磁炉上的四个数码管, LED灯10个,又可以玩LED灯啦…

电路

电路原理图

在这里插入图片描述
高电平驱动

实物图

在这里插入图片描述

步骤

STM32CubeMX 创建STM32F103CBT6

不说太多, 参考简介说到的上篇, 画葫芦吧

引脚初始化

初始化 PA0~PA7 & PC13 为推挽输出, 下拉;
在这里插入图片描述

用户代码

流水灯示例
main.c

typedef enum {LED_OFF,LED_ON,
}LED_Status;typedef enum {LED1,LED2,LED3,LED4,LED5,LED6,LED7,LED8,LED_ALL
}LED_Number;/***
* LED_LightControl : LED控制
*	num : LED1 ~ LED8 / LED_ALL
* status: LED_ON/LED_OFF
***/
void LED_LightControl(LED_Number num, LED_Status status)
{uint16_t pin = 0;if (num == LED_ALL)pin = 0xFF; // 引脚0 ~ 7elsepin = 0x01<<num;HAL_GPIO_WritePin(LED_PORT, pin, status==LED_ON ? GPIO_PIN_SET:GPIO_PIN_RESET);
}/***
* LED_DoFlowAction : 流水灯效果实现
*	num : LED1 ~ LED8 / LED_ALL
* delay_ms: 延时, 亮灭的间隔
* time : 执行的次数
***/
void LED_DoFlowAction(uint32_t delay_ms, uint16_t time)
{int i = 0;int offset = 0;int ledNum = 0;LED_LightControl(LED_ALL, LED_OFF);while (time--){for (i = LED1; i < LED_ALL; ++i){ledNum = offset > 0 ? ( offset - i ) : i; LED_LightControl((LED_Number)ledNum, LED_ON);HAL_Delay(delay_ms);LED_LightControl((LED_Number)ledNum, LED_OFF);HAL_Delay(delay_ms);}if (offset)offset = 0;elseoffset = LED_ALL-1;}
}int main(void)
{
...
while (1)
{LED_DoFlowAction(100, 1);
}
...
}

代码

上面都提供了,不需要下载

共赏

普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/325081.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

紫光展锐5G扬帆出海 | 欧洲积极拥抱更多5G选择

和我国一样&#xff0c;欧洲不少国家也在2019年进入5G商用元年&#xff1a;英国在2019年5月推出了5G商用服务&#xff0c;该国最大的移动运营商EE(Everything Everywhere)最先商用5G&#xff1b;德国在2019年年中推出5G商用服务&#xff0c;德国电信、沃达丰和 Telefonica是首批…

mysql之数据类型、建表以及约束

目录 一. CRUD 1.1 什么是crud 1.2 select(查询) 1.3 INSERT(新增) 1.4 UPDATE(修改&#xff09; 1.5 DELETE(删除) 二. 函数 2.1 常见函数 2.2 流程控制函数 2.3聚合函数 三. union与union all 3.1 union 3.2 union all 3.3 具体不同 3.4 结论 四、思维导图 一. CRUD 1.1…

Mac Parallels19.1.0 Install CentOS7.9

0、资源准备 # centos7.9镜像一份 链接: https://pan.baidu.com/s/1acIjUnsTGhk_2cYCZLSoGg?pwd6666 提取码: 6666 --来自百度网盘超级会员v7的分享1、打开PD 2、选择镜像进行安装 指定镜像名称 创建 进行密码设置 安装目的地点开后直接点击完成 网络和主机名称 开…

DS|图(连通与生成树)

题目一&#xff1a;DS图 -- 图的连通分量 题目描述&#xff1a; 输入无向图顶点信息和边信息&#xff0c;创建图的邻接矩阵存储结构&#xff0c;计算图的连通分量个数。 输入要求&#xff1a; 测试次数t 每组测试数据格式如下&#xff1a; 第一行&#xff1a;顶点数 顶点…

Html5实用个人博客留言板模板源码

文章目录 1.设计来源1.1 主界面1.2 认识我界面1.3 我的日记界面1.4 我的文章列表界面和文章内容界面1.5 我的留言板界面 2.演示效果和结构及源码2.1 效果演示2.2 目录结构2.3 源代码 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151…

30分钟快速搭建并部署一个免费的个人博客

前言 现如今网上有许多完善的博客平台&#xff0c;如博客园、掘金、思否、知乎等。有人会说为什么现在网上有这么多成熟的博客平台&#xff0c;你还要浪费时间搭建一个自己的博客系统呢&#xff1f;首先我相信每一个程序员都会想要拥有一个属于自己的博客系统&#xff0c;其次…

K8S陈述式管理

命令行&#xff1a;kubectl命令行工具 优点&#xff1a;90%以上的场景都可以满足 对资源的增&#xff0c;删&#xff0c;查比较方便&#xff0c;对改不是很友好 缺点&#xff1a; 命令比较冗长&#xff0c;复杂&#xff0c;难记 声明式&#xff1a; K8S当中的yaml文件来实…

MR实战:词频统计

文章目录 一、实战概述二、提出任务三、完成任务&#xff08;一&#xff09;准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录 &#xff08;二&#xff09;实现步骤1、创建Maven项目2、添加相关依赖3、创建日志属性文件4、创建词频统计映射器类5、创建词频统计归并…

【CMake】1. VSCode 开发环境安装与运行

CMake 示例工程代码 https://github.com/LABELNET/cmake-simple 插件 使用 VSCode 开发C项目&#xff0c;安装 CMake 插件 CMakeCMake ToolsCMake Language Support &#xff08;建议&#xff0c;语法提示) 1. 配置 CMake Language Support , Windows 配置 donet 环境 这…

遥感影像-语义分割数据集:山体滑坡数据集详细介绍及训练样本处理流程

原始数据集详情 简介&#xff1a;该遥感滑坡数据集由卫星光学图像、滑坡边界的形状文件和数字高程模型组成。该数据集中的所有图像&#xff0c;即770张滑坡图像&#xff08;红点&#xff09;和2003张非滑坡图像&#xff0c;都是从2018年5月至8月拍摄的TripleSat卫星图像中截取…

windows下使用PowerShell切割大数据文件

测试文件为24.4G文件 打开PowerShell窗口&#xff0c;使用以下命令 $filePath 为指向文件路径 $outputPath 输出到指定文件夹 $chunkSize 单个文件控制切割大小 将命令修改完后&#xff0c;直接粘贴到powershell窗口&#xff0c;点击回车即可进行切割 $filePath "D:\…

【力扣算法日记】无重复字符的最长子串

最近刷了很多算法题&#xff0c;这些解题过程也拓展了自己的思路&#xff0c;是个适合记录的素材。所以决定在继技术知识点详解的【一文系列】之后&#xff0c;开启新坑——【力扣算法系列】&#xff0c;来记录力扣刷题过程。 分享题目不确定&#xff0c;目前打算只分享我认为…