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

这篇具有很好参考价值的文章主要介绍了普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简介

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

事情发展

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

电路

电路原理图

普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了),嵌入式吧,普中STM32-PZ6806L,stm32,嵌入式硬件,单片机
高电平驱动

实物图

普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了),嵌入式吧,普中STM32-PZ6806L,stm32,嵌入式硬件,单片机

步骤

STM32CubeMX 创建STM32F103CBT6

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

引脚初始化

初始化 PA0~PA7 & PC13 为推挽输出, 下拉;
普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了),嵌入式吧,普中STM32-PZ6806L,stm32,嵌入式硬件,单片机

用户代码

流水灯示例
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 ~ 7
	else
		pin = 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;
		else
			offset = LED_ALL-1;
	}
}

int main(void)
{
...
while (1)
{
	LED_DoFlowAction(100, 1);
}
...
}


代码

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

共赏

普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了)文章来源地址https://www.toymoban.com/news/detail-807830.html

到了这里,关于普中STM32-PZ6806L开发板(有点悲伤的故事续-人灯还未了)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于普中51单片机开发板的温控风扇

    自学单片机也不算很久,刚好遇上了这一门的课程设计,查找了好多的资料发现都不算合适,合适的又要收费,那么最后呢才找到了一个有关我使用的开发板的温控风扇程序,也就是普中单片机开发板,该程序来自--黑51论坛的作者yrx0203,论坛ID号:684871,在此特别鸣谢。话不

    2024年02月11日
    浏览(50)
  • STM32开发 | Clion搭建STM32开发环境

    做嵌入式开发的人对STM32这个平台应该都是非常熟悉的,在国内尤其流行,很多产品里面都是基于这个平台做的方案。多数人在开发STM32的时候用的都是 Keil 这个老牌IDE,很大一部分原因是因为大多数人最初是从51单片机学习过来的,51就是基于Keil去开发的,然后迁移到STM32的

    2023年04月12日
    浏览(47)
  • STM32CubeIDE开发(二十六), STM32的CAN总线开发要点

    目录 一、CAN总线简介         1.1 CAN概述         1.2 CAN总线较其他串行通信优势         1.3 CAN总线通信          1.4 报文种类及格式          1.5 CAN应用 二、CAN工程创建及配置         2.1 工程设计及原理框图          2.2 工程创建接配置 三、代码设计

    2023年04月15日
    浏览(46)
  • STM32CubeIDE开发(二十九), 如何结合FreeRTOS开发STM32程序

    目录 一、STM32CubeIDE使用内置的FreeRTOS 二、创建使用FreeRTOS系统的STM32CubeIDE工程 三、使用FreeRTOS功能 四、编译及测试 一、STM32CubeIDE使用内置的FreeRTOS         不同于STM32CubeIDE使用像RTThread这些第三方物联网系统,STM32CubeIDE在安装时就已经在MiddleWare中间件一栏直接支持了Free

    2024年02月12日
    浏览(46)
  • STM32单片机开发-01 STM32介绍

    通过野火开发板学习单片机 从内核上分有Cortex-M0、M3、M4 和M7 F1 代表了基础型,基于Cortex-M3 内核,主频为72MHZ F4 代表了高性能,基于Cortex-M4 内核,主频180M。 数据手册:用于芯片选型和设计原理图 参考手册:用于编程时查阅 Icode总线 – 该总线讲M3内核的指令总线与闪存指令

    2024年01月21日
    浏览(57)
  • STM32CubeIDE开发(二十二), stm32的RS485/232串口通信开发要点

    目录 一、stm32串口通信         1.1 硬件流控          1.2 软件流控         1.3 串口通信参数 二、新建RS485通信工程         2.1 项目实现背景信息         2.2 项目配置         2.3 代码实现    三、RS485驱动调用及测试         3.1 接口调用        3.2 编

    2024年01月20日
    浏览(52)
  • STM32CubeIDE开发(十一), STM32实时时钟(RTC)写入及读取日历时间开发要点

    目录 一、RTC简介 二、工程创建及配置  三、驱动代码设计实现 四、编译及测试         实时时钟的缩写是RTC(Real_Time Clock),核心是晶振,晶振频率一般为32768 Hz 。它为分频计数器提供精确的与低功耗的实基信号。它可以用于产生秒、分、时、日等信息。为了确保时钟长期

    2024年01月16日
    浏览(42)
  • STM32FreeRTOS任务通知(STM32cube高效开发)

    1、任务通知可模拟队列和信号量 任务通知是FreeRTOS另外一种进程间通信技术。不需要创建任何中间对象,可以直接从任务向任务或ISR向任务发送通知,传递一个通知值任务通知可以模拟二值信号量、计数信号量、或长度为1的消息队列,使用任务通知,一般效率更高,消耗内

    2024年03月13日
    浏览(46)
  • STM32CubeIDE开发(三十一), stm32人工智能开发应用实践(Cube.AI).篇一

    目录 一、cube.AI简介及cubeIDE集成        1.1 cube.AI介绍        1.2 cube.AI与cubeIDE集成与安装         1.3 cube.AI支持硬件平台         1.4 cube.AI应用的好处  二、FP-AI-SENSING1        2.1 FP-AI-SENSING1简介           2.2 FP-AI-SENSING1软件包支持硬件平台 三、FP-AI-SENSING1部署        

    2024年01月22日
    浏览(42)
  • STM32 Linux开发板丨STM32MP157开发板资料手册+实战教程+视频教程

    iTOP-STM32MP157开发板是基于意法半导体STARM双Cortex-A7核加单Cortex-M4核的一款多核异构处理器。Cortex-A7内核提供对开源操作系统Linux的支持,借助Linux系统庞大而丰富的软件组件处理复杂应用。M4内核上运行对于实时性要求严格的应用。 开发板既有A7核,又有M4核,从学习者角度来看

    2024年02月12日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包