第一:点灯大师

在这里插入图片描述


环境:keil5

板子:stm32f103c8t6最小系统板

烧录器:USB转TTL(驱动:CH340)

烧录软件:flymcu.exe

一、点亮LED灯

目标:实现LED灯的点亮,间隔一秒闪烁

引脚:

PC13,低电平点亮

步骤:

1、创建固件库

在工程项目下,引入固件库必要文件

2、创建文件

在工程目录下边创建led.c和led.h两个文件

3、编写代码

led.c:

#include "led.h"
#include "stm32f10x.h"		//引入固件库头文件

void LED_Init(void)	
{
	GPIO_InitTypeDef led_init;  //定义结构体
	
	//使能时钟(GPIO的时钟配置都是用这个函数)
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
	
	//配置结构体
	
	led_init.GPIO_Pin   = GPIO_Pin_13;		//需要启用的引脚
	led_init.GPIO_Speed = GPIO_Speed_10MHz;	//频率
	led_init.GPIO_Mode  = GPIO_Mode_Out_PP;	//输出模式为推挽输出
	
	GPIO_Init(GPIOC,&led_init);	//初始化
}
//每个文件最后边要空新行,不然警告

led.h:

void LED_Init(void);	//声明led.c里面的函数
//留新行,不然警告

main.c:

#include "stm32f10x.h" //引入固件库
#include "main.h" 
#include "led.h"	//引入刚刚写的led文件

//延迟函数,单位ms(接近)
void delay(uint16_t time)
{
	uint16_t i = 0;
	while(time--)
	{
		i = 8000;
		while(i--);	
	}
}

int  main()
{
	LED_Init();		//初始化(包括:使能时钟,配置结构体:需要启用的引脚,引脚模式,频率)
	while(1)
	{
		GPIO_ResetBits(GPIOC,GPIO_Pin_13);	//PC13输出低电平:点亮LED灯
        delay(1000);
        GPIO_SetBits(GPIOC,GPIO_Pin_13);    //PC13输出高电平:熄灭LED灯
        delay(1000);
	} 	
}

4、编译烧录

①.烧录的时候需要拔出靠近boot0傍边的跳线(另一个不需要拔出),烧录完成后需要插上boot0靠近0那边的跳线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xwAnPgoM-1676569525036)(C:/Users/LHF15/AppData/Roaming/Typora/typora-user-images/image-20230217012755302.png)]

在这里插入图片描述

④这个时候插上跳线,就可以运行了。看看LED是不是间隔闪烁

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32和迪文串口屏是两个常用的电子元器件,在实际应用中它们通常需要进行通信。本篇文章将简要介绍如何通过串口通信控制STM32来实现点灯和温度显示的功能。 首先,我们需要了解一下串口通信的相关知识。串口通信是一种数据传输方式,在单片机中通常使用USART或UART模块实现。串口通信的特点是传输速率比较慢,但可靠性较高。串口通信需要发送和接收两个端口分别连接到发送和接收设备上。 在使用STM32和迪文串口屏进行通信之前,我们需要先准备好相关的硬件设备和软件环境。硬件方面,我们需要一块基于STM32的开发板和一块迪文串口屏。软件方面,我们需要安装Keil MDK软件和相应的程序库,并进行相应的程序编写和调试。 具体实现的步骤如下: 1、在Keil MDK中创建工程,并添加相应的程序库和头文件。 2、编写程序代码,实现串口通信功能,包括串口初始化、发送和接收数据等操作。 3、连接迪文串口屏,通过串口发送相应的命令,控制迪文串口屏进行相应的操作,如点灯和温度显示等。 4、调试程序,并进行相应的优化和改进。 通过以上步骤,就可以实现STM32与迪文串口屏的通信,从而实现点灯和温度显示的功能。需要注意的是,在实际应用中,需要根据具体的需求对通信协议进行相应的设计和实现。同时,由于串口通信有一定的延迟和传输误差,需要进行相应的优化和调试,以保证通信的稳定性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值