173 2438 5004
KEROS加密芯片——品牌直销 | 免费样品 | 技术支持
当前位置:网站首页 > 资讯中心 正文 资讯中心

stm32用proteus点亮小灯

keros@mark 2023-03-19 资讯中心

proteus 发光二极管怎么找

1,首先需要打开电脑的Proteus8.6软件。

2,点击菜单栏file,找到New Project,单击。

3,修改工程名字和工程路径。

4,单击next直到finished并完成建立工程。

5,在键盘上按字母P或者找到工作区的P按钮,跳出搜索元器件界面,输入STM32F103R6、RES和LED-RED找到对应的器件,双击。

6,在工作区,完成STM32电路连接,并双击StM32F103R6,设置晶振为8M。

7,并设置Proteus电源,避免运行出现错误。

扩展资料:

Proteus功能特点

Proteus软件具有其它EDA工具软件(例:multisim)的功能。这些功能是:

1.原理布图

2.PCB自动或人工布线

3.SPICE电路仿真

革命性的特点

1.互动的电路仿真

用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。

2.仿真处理器及其外围电路

可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境。

参考资料:百度百科-Proteus

proteus按键和小灯怎么同时连接

1、首先打开proteus,在元器件选择框输入LED灯。

2、然后放置一个电阻,一端连接至按键端,一段连接至小灯连接口。

3、最后同时连接后按键断开时,LED点亮,当按键闭合时,LED熄灭。

在一个 STM32 点亮 LED 的程序中,部分代码如下?

①配置所需的GPIO管脚,也就是PA2和PA3。

②从程序来看,高电平点亮,低电平熄灭。

单片机proteus 的8位流水灯,LED灯不亮,只是旁边的小点亮,怎么回事啊?求大神指教啊

图画错了。

1.二极管支路中的电阻,阻值太大了,应改成 470欧姆~1K左右。

2.二极管,你画的方向,是向右的,那么,左边就不应该接地了,应该接上+5V。

proteusstm32利用独立按键数码管显示数字

proteusstm32利用独立按键数码管显示数字

实验环境

本次实验是通过Proteus+MDK一起模拟完成的。Proteus模拟实际电路,MDK编译代码。Proteus版本是8.13,MDK版本是5.21。需要注意的是,Proteus需要安装8.8以上版本,器件库里面要支持STM32F103C6。

• 实验目的

通过一个按键控制数码管0~9循环显示,并且把对应数字发给串口。通过接收串口数据,控制数码管0~9循环显示。实验目的,学会按键检测方法,这边用的是开源库multi_button,学会串口怎么用。

Proteus硬件电路

虚拟串口示意

• 主控:

STM32F103C6(本来想用C8的,但是Proteus只有C6,本质上只有Flash和SRAM大小的区别,所以没有必要纠结)

• 时钟:

没有用外部晶振,因为Proteus只支持一种时钟树,所以这里采用内部晶振,做实验够了,内部晶振配置为40MHz。

• 复位电路:

复位电路如图,包含了上电复位电路一个10K电阻(图上用的是100K实际应该都是可以的)+一个100nF电容。按键复位电路,包含了一个自复位按键,按下后,RST管脚就会短路到GND,MCU就会复位。

•电路上还要接一个Proteus虚拟串口,在自己电脑上也要用虚拟串口软件虚拟一对串口出来,上图所示,PC端我们用的是COM5,那么Proteus端我们用COM4。

• IO说明:

→ 我们利用PA0~PA6来控制7段数码管,高电平点亮;

→PB0用作LED的控制,指示程序状态;

→PB4作为按键输入状态读取;

→PA9,PA10是串口输入输出;

2.代码概述

目录结构

• 代码目录概述:

→APP文件夹:主要包含应用函数的.C文件。

→BSP文件夹:主要包含底层硬件驱动的.C文件。

→MDK-ARM文件夹:主要包含STM32的启动的.S文件。

→StdPeriph_Driver文件夹:主要包含ST官方提供的标准外设驱动.C文件(不是HAL库哦)。

→CMSIS文件夹:系统内核配置文件,标准库自带的。

→按键驱动使用的是multi_button。

→串口接收0x09这个代码1次就会反转数码管1次,0~9循环。

→按键按1次就会反转数码管1次,0~9循环。

→按键按下LED灯亮,松开灭。

【不用开发板学习STM32】串口收发+按键控制数码管显示(文末获取代码及工程文件)

stm32点亮led灯用到的模块

,模块如下:

1

把工程项目模板重新复制一份,改名为“点亮一个LED灯”

在USR文件夹下创建led文件夹

led文件夹下面新建以下两个文件

bsp_led.c

bsp_led.h

2

然后我们用keil打开这个工程项目

点击如下图圈上的图标

3

新建一个led文件夹

然后我们把刚新建的文件导入到led文件夹

4

在bsp_led.h文件里

#ifndef __BSP_LED_H__

#define __BSP_LED_H__

#include "stm32f10x.h"

#define LED1_GPIO_CLK RCC_APB2Periph_GPIOB

#define LED1_GPIO_PORT GPIOB

#define LED1_GPIO_PIN GPIO_Pin_5

void LED_GPIO_Config(void);

#endif

5

在bsp_led.c文件里

#include "./led/bsp_led.h"

void LED_GPIO_Config(void)

{

GPIO_InitTypeDef GPIO_InitStruct;

//打开外设时钟

RCC_APB2PeriphClockCmd(LED1_GPIO_CLK,ENABLE);

//配置初始化结构体

GPIO_InitStruct.GPIO_Pin = LED1_GPIO_PIN;

GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStruct.GPIO_Speed = GPIO_Speed_10MHz;

//调用外设初始化函数,把配置好的结构体成员写到寄存器里面

GPIO_Init(LED1_GPIO_PORT,GPIO_InitStruct);

}

6

在main.c文件里

#include "./led/bsp_led.h"

void delay(uint32_t count);

int main(void)

{

LED_GPIO_Config();

while(1)

{

GPIO_SetBits(LED1_GPIO_PORT,LED1_GPIO_PIN);

delay(0xfffff);

GPIO_ResetBits(LED1_GPIO_PORT,LED1_GPIO_PIN);

delay(0xfffff);

}

}

void delay(uint32_t count)

{

for (;count!=0;count--);

}

本文标签:stm32用proteus点亮小灯

产品列表
产品封装
友情链接