【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2)

这篇具有很好参考价值的文章主要介绍了【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

00. 目录

01. GPIO之LED电路图

电路图示例1

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

电路图示例2

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

02. GPIO之LED接线图

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

03. LED闪烁程序示例

main.c

#include "stm32f10x.h"

#include "delay.h"



 int main(void)
 {	
	 GPIO_InitTypeDef GPIO_InitStruct;
	//使能GPIOA时钟
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
	 
	
	//GPIO初始化
	 GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
	 GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0;
	 GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;
	
	 GPIO_Init(GPIOA, &GPIO_InitStruct);
	 
	 while(1)
	 {
		#if 0
		 //设置为高电平
		GPIO_SetBits(GPIOA, GPIO_Pin_0);
		delay_ms(100);

		 //设置为低电平
		GPIO_ResetBits(GPIOA, GPIO_Pin_0);
		delay_ms(100);
		#endif

		#if 0
		//设置为低电平
		GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_RESET);
		delay_ms(500);

		 //设置为高电平
		GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_SET);
		delay_ms(500);
		#endif
		 
		 
		//设置为低电平
		GPIO_WriteBit(GPIOA, GPIO_Pin_0, (BitAction)0);
		delay_ms(100);

		 //设置为高电平
		GPIO_WriteBit(GPIOA, GPIO_Pin_0, (BitAction)1);
		delay_ms(100);
	 }
	 
	 
	 return 0;
 }

04. LED闪烁程序下载

接线图如下图所示:

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

点击下载,现象为LED闪烁。

05. LED流水灯接线图

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

06. LED流水灯程序示例

main.c

#include "stm32f10x.h"

#include "delay.h"



 int main(void)
 {	
	 GPIO_InitTypeDef GPIO_InitStruct;
	//使能GPIOA时钟
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
	 
	
	//GPIO初始化
	 GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
	 GPIO_InitStruct.GPIO_Pin = GPIO_Pin_All; //初始化所有的引脚
	 GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;
	
	 GPIO_Init(GPIOA, &GPIO_InitStruct);
	 
	 while(1)
	 {
		GPIO_Write(GPIOA, ~0x0001);	//0000 0000 0000 0001
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0002);	//0000 0000 0000 0010
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0004);	//0000 0000 0000 0100
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0008);	//0000 0000 0000 1000
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0010);	//0000 0000 0001 0000
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0020);	//0000 0000 0010 0000
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0040);	//0000 0000 0100 0000
		delay_ms(100);
		 
		GPIO_Write(GPIOA, ~0x0080);	//0000 0000 1000 0000
		delay_ms(100);
	 }
	 
	 return 0;
 }

07. 蜂鸣器接线图

【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2),STM32F103,stm32,学习,笔记,stm32学习笔记,江科大,江科大stm32

08. 蜂鸣器程序示例

main.c

#include "stm32f10x.h"

#include "delay.h"



 int main(void)
 {	
	 GPIO_InitTypeDef GPIO_InitStruct;
	//使能GPIOB时钟
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
	 
	
	//GPIO初始化 PB12
	 GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
	 GPIO_InitStruct.GPIO_Pin = GPIO_Pin_12; //初始化所有的引脚
	 GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;
	
	 GPIO_Init(GPIOB, &GPIO_InitStruct);
	 
	 while(1)
	 {

		 GPIO_SetBits(GPIOB, GPIO_Pin_12);
		 delay_ms(100);
		 
		 GPIO_ResetBits(GPIOB, GPIO_Pin_12);
		 delay_ms(100);
		 
		 GPIO_SetBits(GPIOB, GPIO_Pin_12);
		 delay_ms(100);
		 
		 GPIO_ResetBits(GPIOB, GPIO_Pin_12);
		 delay_ms(700);
	 }
	 
	 
	 return 0;
 }

09. 下载

stm32F103工程模板

01-LED闪烁.rar

02-LED流水灯.rar

03-蜂鸣器示例程序.rar

10. 附录

参考: 【STM32】江科大STM32学习笔记汇总文章来源地址https://www.toymoban.com/news/detail-841607.html

到了这里,关于【STM32】STM32学习笔记-LED闪烁 LED流水灯 蜂鸣器(06-2)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • STM32F103C8T6定时器实现led的周期闪烁及PWM实现流水灯

    通过定时器Timer方式实现时间的精准控制,相当于给CPU上了一个闹钟,CPU平时处理其它任务,当定时时间到了以后,处理定时相关的任务。请设置一个5秒的定时器,每隔5秒从串口发送“hello windows!”;同时设置一个2秒的定时器,让LED等周期性地闪烁。 使用TIM3和TIM4,分别输

    2024年01月23日
    浏览(41)
  • STM32第二课:灯的亮灭、流水灯、有源蜂鸣器

             STM32的第二课,我们来学习如何使用STM32控制等的亮灭,使用多重控制制作我们自己的流水灯,然后再了解一下有源蜂鸣器的用法,创造出不一样的声音。         首先开头包含STM32的头文件#include \\\"stm32f10x.h\\\",这个头文件包含STM32众多的重要驱动,一定要把这个头文

    2024年01月24日
    浏览(30)
  • Stm32f103c8t6(proteus仿真)学习——1.点亮LED流水灯

    软件准备:keil uVsion 5 和 proteus 8.15 打开proteus8.15 - 新建项目 - 改名 - 一直next 鼠标右键 - 放置 - 元件 - From Libraries 搜索Stm32 - 选择stm32f103c8 画出点亮一个LED灯的原理图 提示,各元器件搜索: 主控芯片:stm32 电阻:res LED灯:led 鼠标右键 - 放置 - 元件 - From Libraries 地和VCC 在左侧

    2024年02月08日
    浏览(48)
  • STM32单片机 超入门项目:流水灯(不同闪烁模式和速度)

    流水灯通过交替闪烁实现灯光流动的效果,本篇将分析如何采用STM32单片机实现流水灯。 STM32单片机(STM32F103RCT6)、发光二极管 4(我用的是七彩快闪,用红绿蓝LDE自行搭配也可)、1k电阻 4、面包板飞线等自备。 打开STM32CubeMX,选择型号STM32F103RCT6,配置调试器PinoutConfigurati

    2023年04月09日
    浏览(30)
  • STM32F103之点亮LED流水灯

    目录 一、设计分析及代码思路 1.实现流水灯步骤 2.代码设计过程 二、创建项目 1.新建项目 2.编写代码 三、仿真运行 四、连接电路 1.器件连接 2.程序烧录 五、代码烧录及实现 1.烧录实现 2.流水灯实现 六、总结  配置时钟使能寄存器 配置端口寄存器 设置输出模式 实物连接及

    2024年04月25日
    浏览(25)
  • FPGA 学习笔记:Verilog 实现LED流水灯控制

    在初步了解 Xilinx Vivado 的使用后,开启了FPGA Hello World 程序:LED 流水灯控制 在嵌入式MCU中,流水灯需要延时来实现,FPGA的延时,使用外部晶振来实现 实现 3个 LED 流水灯控制,也就是循环依次点亮, LED 低电平亮, 高电平灭,FPGA 有一个40MHz的外部晶振,作为系统时钟输入开

    2023年04月08日
    浏览(24)
  • 【蓝桥杯嵌入式】点亮LED灯,流水灯的原理图解析与代码实现——STM32

    🎊【蓝桥杯嵌入式】专题正在持续更新中,原理图解析✨,各模块分析✨以及历年真题讲解✨都在这儿哦,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏 🪔本系列专栏 -  蓝桥杯嵌入式_勾栏听曲_0的博客 🍻欢迎大家  🏹  点赞👍  评论📨  收藏⭐️ 📌个人主

    2024年02月03日
    浏览(36)
  • 51单片机学习--LED流水灯

    延时代码可通过软件生成,系统频率要和开发板的晶振频率相对应。  

    2024年02月16日
    浏览(39)
  • 【51单片机】:闪灯、流水灯(从左往右)、流水灯(从右往左)、蜂鸣器。

            言归正传,一切都回归本源,从51再来一次,首先就是最简单的点灯大师。         这么些年从51 到  32  再到  arduino  再到  ESP  等等,都是从点灯大师开始的。 于是介绍如下: 闪灯 流水灯(从左往右) 流水灯(从右往左) 蜂鸣器         LED灯的原理:LED是发

    2024年02月11日
    浏览(32)
  • FPGA学习分享--01 led流水灯的实现

    需求 : 博宸电子的ZYNQ7020DEV开发板 Vivado 2018.3 一定的verilog语言基础 博主目前学习的是 博宸电子的ZYNQ7020DEV开发板 ,下面是关于本次分享led流水灯的原理图 图1 涉及本次led流水灯的电路 首先,从图1来看,每个led端口都和一个阻值为4.7k的电阻和一个发光二极管相连,并且发光

    2024年02月04日
    浏览(23)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包