使用Proteus 8.9仿真STM32F103流水灯实验
keil5-MDK程序
STM32流水灯程序非常简单,在我的实验中使用GPIOC的引脚连接流水灯。主要程序如下:
LED初始化:led.h
#ifndef __LED_H
#define __LED_H
#include "sys.h"void LED_Init(void); //初始化
#endif
led.c
#include "led.h"//LED IO初始化
void LED_Init(void)
{RCC->APB2ENR|=1<<4; //使能PORTC时钟GPIOC->CRL&=0X00000000;//清零GPIOC->CRL|=0X33333333;//推挽50MHz输出GPIOC->ODR=0X00FF; //输出高
}
main主函数:
#include "sys.h"
#include "led.h"void delay(uint32_t m)
{uint32_t i_cnt,j_cnt;for(i_cnt=0;i_cnt<454000;i_cnt++);for(j_cnt=0;j_cnt<m;j_cnt++);
}
int main(void)
{int i;Stm32_Clock_Init(9);//系统时钟设置LED_Init();//初始化与LED连接IO口while(1){for(i=0;i<8;i++){GPIOC->ODR=~(1<<i);//输出低delay(500);}}
}
编译生成hex文件即可,接下来绘制仿真电路。
Proteus仿真电路
打开Proteus
点击新建工程。
我将工程保存至 D:\仿真 文件夹中,可以给工程重命名,点击下一步。
从选中的模板中创建原理图,选择DEFAULT(默认),点击下一步。
不创建PCB布版设计,直接下一步。
如果创建固件项目并且安装了编译器,则可以在Proteus中直接给STM32F103R6芯片编写程序。
因为我已经用keil编好流水灯程序了,所以选择不创建固件项目,点击下一步。
确认信息,点击完成,即可建立空白项目。
添加STM32芯片,点击左上角设备选择器的“P”键。
在左上角“关键字”中输入:STM32。即可显示所有的仿真芯片,Proteus 8.9版本可以支持部分F4系列芯片的仿真。
右上为芯片原理图,右下为芯片PCB封装,我选择STM32F103R6芯片,双击芯片即可将芯片添加到设备选择器中。
同理,搜索关键字添加电阻(RES)和LED元件,最后点击右下角确认。
在元件列表中选择元件,再在原理图中左键单击即可选择元件位置,右键取消选择,再次单击鼠标左键放置元件。
总原理图如下:(不用连外部晶振电路,双击芯片弹出页面可以直接设置晶振频率)
电源VDD使用左侧终端中的POWER,芯片引脚连接使用DEFAULT。
放置元件,双击元件命名为VDD、PC0~7即可通过网络标号连接。
总原理图中没有给芯片供电的电源,因为仿真芯片有默认的电源引脚没有显示出来。
点击设计中的配置供电网。
弹出以下窗口,设置VCC/VDD电压为3.3,点击确定。
仿真电路就完成了,接下来下载程序即可实现仿真。
双击STM32芯片,弹出窗口。
点击Program File的文件夹图标,将之前keil编译生成的hex文件添加进来。并修改晶振频率Crystal Frequency为8MHz,点击确定。
点击左下角按钮开始仿真。
可以看到程序正常运行,LED逐个点亮。
最后保存所有工程文件,实验完毕。
使用发现延时时间并不准确,只能仿真出个大概,无法仿真太复杂的外设电路;而且仿真运行时很占CPU,可能就是这个原因导致仿真时间过慢。
使用Proteus 8.9仿真STM32F103流水灯实验相关推荐
- 1、Proteus仿真STM32流水灯实验例程、详细步骤。
一.创建工程 (实验keil和proteus所用文件工程百度网盘链接,提取码为0f7c ,以下为链接:所用keil和proteus文件工程 ) 1.点击创建新工程,输入工程名.安装路径. 2.选择从选 ...
- Proteus仿真运行流水灯程序
文章目录 一.protues画出流水灯图架 1.项目工程的创建 2.画图 二.程序的实现 源代码 效果演示 三.小结 四.资料引用 一.protues画出流水灯图架 1.项目工程的创建 打开软件,点击 ...
- PROTEUS电子仿真软件的使用——流水灯
实验二 熟悉PROTEUS电子仿真软件的使用 一.实验目的 1. 掌握RPROTEUS电子仿真软件的安装过程: 2. 掌握RPROTEUS电子仿真软件的使用方法: 3. 掌握创建电子仿真原理图的过程: ...
- 【紫光同创国产FPGA教程】【第二章】LED流水灯实验及仿真
原创声明: 本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处(http://www.alinx.com). 适用于板卡型号: PGL22G/PG ...
- 流水灯c语言实验报告心得,嵌入式流水灯实验心得体会.docx
嵌入式流水灯实验心得体会 嵌入式流水灯实验心得体会 篇一:嵌入式流水灯实验 实验三 GPIO输出控制实验 一. 实验目的 熟悉LPCXX系列ARM7微控制器的GPIO输入控制. 二.实验设备 ? 硬件 ...
- 基于FPGA实现的流水灯实验
版权声明:如需转载,请注明出处 https://blog.csdn.net/chengfengwenalan/article/details/79606351 基于FPGA实现的流水灯实验 一.开发环 ...
- 单片机led流水灯实验c语言程序,单片机LED流水灯实验及流程图源代码详解
利用实验室提供的单片机实验开发板的最小系统电路模块.流水灯电路模块,以及Protues仿真软件搭建电路,实现I/O口循环流水灯演示效果. LED流水灯控制电路如图2-1所示,八个LED灯D0-D7(可 ...
- 流水灯实验报告c语言,PLC流水灯实验报告.pdf
PLC流水灯实验报告 基于WinPAC 的流水灯实验 实验目的 1.掌握PLC编程的基本流程,学会在ISaGRAF环境下编程和仿真. 2.学会在ISAGRAF创建工程.下载程序.调试方法. 3.掌握L ...
- 单片机原理及应用流水灯实验
1.实验目的 (1)学习编译与仿真环境使用 (2)学习 P3 口的使用方法 (3)学习延时子程序的编写 2 实验内容 (1)通过对 P3 口地址的操作控制 8 位 LED 流水点亮,从而认识单片机的接 ...
- 51单片机 | 点亮第一个LED | LED 闪烁实验 | LED流水灯实验
文章目录 一.51单片机GPIO介绍 1.GPIO概念 2.GPIO 结构框图与工作原理 2.1 P0端口 2.2 P1端口 2.3 P2端口 2.4 P3端口 2.5 要点 二.LED简介 三.硬件 ...
最新文章
- 【CV实践】图像检索从入门到进阶
- 浙江发布数字化改革标准化体系建设方案,将于2025年底建成
- Flash中文字体嵌入终极解决方案
- 查询mysql上传大小限制_解决数据库phpmyadmin中上传最大限制:2,048 KB
- MongoDB Windows环境安装及配置
- Python:构造函数和析构函数
- python把c语言的.h文件转为c++的.cpp和.h文件
- 排序算法-05简单选择排序(python实现)
- 使用tomcat8下的websocket进行web前后端通信
- Spark Structured Kudu : RejectedExecutionException: Worker has already been shutdown
- 2.2 理解 mini-batch 梯度下降法
- mysql 5.7.29下载安装_deepin20 离线安装 MySQL5.7.29
- linux中,添加cvs用户,实质就是添加linux用户 (extssh 连接方式)。 (添加时,注意是否要分组。)
- docker search oracle,Docker search 命令
- 修改dns服务器转发器,域服务器dns设置转发器
- 传奇世界修改服务器时间,《传奇世界手游时长版》测试结束公告
- 手机内存不够用,蒲公英X1让U盘秒变私有云
- 高端网站建设策划方案有哪些
- SIP穿越NAT SIP穿越防火墙
- mysql 截断日期_数据截断:错误的日期时间值:“