STM32-电灯,仿真

目录

前言:

[一. 配置vscode](#一. 配置vscode)

[二. 新创建软件工程](#二. 新创建软件工程)

[三. 仿真](#三. 仿真)

1.新建工程想到,选择名称和路径

2.从选中的模板创建原理图

3.不创建PCB布版设计

4.选择没有固件项目

5.完成

四.源码

[五. 运行效果](#五. 运行效果)

[六. 总结](#六. 总结)



前言:

这篇主要是配置vscode和创建仿真,和点灯的完整代码,欢迎大家的评论,点赞,和关注

一. 配置vscode

http://t.csdnimg.cn/BvCLx

扩展工具:

安装 C/C++ Extension Pack

安装 Embedded IDE

安装 Keil MDK

配置路径

二. 新创建软件工程

在Embedded IDE页面,点击新建项目.然后点击空项目.

下拉找到对应的stm32F1 Quickstart

输入项目名字, 之后会弹出来选择位置页面,选择项目所在文件夹即可

三. 仿真

一路新建就行

1.新建工程想到,选择名称和路径

2.从选中的模板创建原理图

3.不创建PCB布版设计

4.选择没有固件项目

5.完成

按照上面的步骤,选择相应的就可以了.

然后选择原件STM32F103R6

一共包含了三个元件

STM32F103R6, -- 单片机

RES, --电阻

LED-BLUE --Led灯
电阻连接到led上

led连接到PB0;

右键stm32,选择编辑属性

在ProgramFil里面选择hex文件,CrystalFrequency输入8m.这样准备工作就完成了

四.源码

cpp 复制代码
#include "led.h"

//LED 初始化程序
void led_init(void)
{ 
  GPIO_InitTypeDef  GPIO_LED; //定义GPIO结构体变量
  	
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //使能GPIOB端口的时钟
  	
  GPIO_LED.GPIO_Pin = GPIO_Pin_0;		  //LED端口配置
  GPIO_LED.GPIO_Mode = GPIO_Mode_Out_PP;  //推挽输出
  GPIO_LED.GPIO_Speed = GPIO_Speed_2MHz;  //IO口速度为2MHz
  GPIO_Init(GPIOB, &GPIO_LED);			  //根据设定参数初始化GPIOB0
  
  GPIO_SetBits(GPIOB,GPIO_Pin_0);	//GPIOB0输出高电平,初始化LED灭
}
cpp 复制代码
#ifndef __LED_H
#define __LED_H

#include "main.h"

void led_init(void);

#endif
cpp 复制代码
#ifndef __MAIN_H
#define __MAIN_H

//标准头文件
#include "stm32f10x.h"

//用户自定义头文件
#include "led.h"

#endif
cpp 复制代码
#include "main.h"

int main(void)
{
  led_init(); //LED初始化
  while(1)
  {
    GPIO_ResetBits(GPIOB,GPIO_Pin_0);	 //点亮LED
  }	
}

五. 运行效果

1.点击调试

2.点击运行仿真

3.就可以看到LED亮起

六. 总结

以下是关于 STM32 控制电灯仿真的总结:

STM32 特性

  • 强大的处理能力和丰富的外设资源。

电灯控制要点

  • 通过控制引脚的输出状态来点亮或熄灭电灯。
  • 可能涉及到对亮度的调节(如采用 PWM 控制)。

仿真过程

  • 在仿真软件中搭建 STM32 模型和电路环境。
  • 配置相关引脚为输出模式。
  • 编写代码实现对电灯状态的控制逻辑。

实现方式

  • 简单的开关控制:直接设置引脚高低电平。
  • 亮度调节控制:利用 PWM 实现不同亮度等级。

代码逻辑

  • 初始化部分包括引脚配置等。
  • 控制函数根据需求改变电灯状态。

仿真优势

  • 可以提前验证控制逻辑的正确性。
  • 方便调试和优化代码。

应用场景

  • 智能家居系统中的灯光控制。
  • 工业自动化中的照明控制等。

总之,通过 STM32 进行电灯的仿真,能让我们更好地理解和掌握其控制原理及编程方法,为实际硬件开发奠定基础。同时,根据不同需求可灵活选择控制方式,以满足各种应用场景的要求。

相关推荐
Mortal_hhh15 分钟前
VScode的C/C++点击转到定义,不是跳转定义而是跳转声明怎么办?(内附详细做法)
ide·vscode·stm32·编辑器
深圳市青牛科技实业有限公司28 分钟前
【青牛科技】应用方案|D2587A高压大电流DC-DC
人工智能·科技·单片机·嵌入式硬件·机器人·安防监控
Mr.谢尔比1 小时前
电赛入门之软件stm32keil+cubemx
stm32·单片机·嵌入式硬件·mcu·信息与通信·信号处理
LightningJie1 小时前
STM32中ARR(自动重装寄存器)为什么要减1
stm32·单片机·嵌入式硬件
鹿屿二向箔2 小时前
STM32外设之SPI的介绍
stm32
西瓜籽@2 小时前
STM32——毕设基于单片机的多功能节能窗控制系统
stm32·单片机·课程设计
远翔调光芯片^138287988724 小时前
远翔升压恒流芯片FP7209X与FP7209M什么区别?做以下应用市场摄影补光灯、便携灯、智能家居(调光)市场、太阳能、车灯、洗墙灯、舞台灯必看!
科技·单片机·智能家居·能源
极客小张5 小时前
基于STM32的智能充电桩:集成RTOS、MQTT与SQLite的先进管理系统设计思路
stm32·单片机·嵌入式硬件·mqtt·sqlite·毕业设计·智能充电桩
m0_739312878 小时前
【STM32】项目实战——OV7725/OV2604摄像头颜色识别检测(开源)
stm32·单片机·嵌入式硬件
嵌入式小章8 小时前
基于STM32的实时时钟(RTC)教学
stm32·嵌入式硬件·实时音视频