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. 1、Proteus仿真STM32流水灯实验例程、详细步骤。

    一.创建工程 (实验keil和proteus所用文件工程百度网盘链接,提取码为0f7c ,以下为链接:所用keil和proteus文件工程 ) 1.点击创建新工程,输入工程名.安装路径. 2.选择从选 ...

  2. Proteus仿真运行流水灯程序

    文章目录 一.protues画出流水灯图架 1.项目工程的创建 2.画图 二.程序的实现 源代码 效果演示 三.小结 四.资料引用 一.protues画出流水灯图架 1.项目工程的创建 打开软件,点击 ...

  3. PROTEUS电子仿真软件的使用——流水灯

    实验二 熟悉PROTEUS电子仿真软件的使用 一.实验目的 1. 掌握RPROTEUS电子仿真软件的安装过程: 2. 掌握RPROTEUS电子仿真软件的使用方法: 3. 掌握创建电子仿真原理图的过程: ...

  4. 【紫光同创国产FPGA教程】【第二章】LED流水灯实验及仿真

    原创声明: 本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处(http://www.alinx.com). 适用于板卡型号: PGL22G/PG ...

  5. 流水灯c语言实验报告心得,嵌入式流水灯实验心得体会.docx

    嵌入式流水灯实验心得体会 嵌入式流水灯实验心得体会 篇一:嵌入式流水灯实验 实验三 GPIO输出控制实验 一. 实验目的 熟悉LPCXX系列ARM7微控制器的GPIO输入控制. 二.实验设备 ? 硬件 ...

  6. 基于FPGA实现的流水灯实验

    版权声明:如需转载,请注明出处 https://blog.csdn.net/chengfengwenalan/article/details/79606351 基于FPGA实现的流水灯实验 一.开发环 ...

  7. 单片机led流水灯实验c语言程序,单片机LED流水灯实验及流程图源代码详解

    利用实验室提供的单片机实验开发板的最小系统电路模块.流水灯电路模块,以及Protues仿真软件搭建电路,实现I/O口循环流水灯演示效果. LED流水灯控制电路如图2-1所示,八个LED灯D0-D7(可 ...

  8. 流水灯实验报告c语言,PLC流水灯实验报告.pdf

    PLC流水灯实验报告 基于WinPAC 的流水灯实验 实验目的 1.掌握PLC编程的基本流程,学会在ISaGRAF环境下编程和仿真. 2.学会在ISAGRAF创建工程.下载程序.调试方法. 3.掌握L ...

  9. 单片机原理及应用流水灯实验

    1.实验目的 (1)学习编译与仿真环境使用 (2)学习 P3 口的使用方法 (3)学习延时子程序的编写 2 实验内容 (1)通过对 P3 口地址的操作控制 8 位 LED 流水点亮,从而认识单片机的接 ...

  10. 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简介 三.硬件 ...

最新文章

  1. 【CV实践】图像检索从入门到进阶
  2. 浙江发布数字化改革标准化体系建设方案,将于2025年底建成
  3. Flash中文字体嵌入终极解决方案
  4. 查询mysql上传大小限制_解决数据库phpmyadmin中上传最大限制:2,048 KB
  5. MongoDB Windows环境安装及配置
  6. Python:构造函数和析构函数
  7. python把c语言的.h文件转为c++的.cpp和.h文件
  8. 排序算法-05简单选择排序(python实现)
  9. 使用tomcat8下的websocket进行web前后端通信
  10. Spark Structured Kudu : RejectedExecutionException: Worker has already been shutdown
  11. 2.2 理解 mini-batch 梯度下降法
  12. mysql 5.7.29下载安装_deepin20 离线安装 MySQL5.7.29
  13. linux中,添加cvs用户,实质就是添加linux用户 (extssh 连接方式)。 (添加时,注意是否要分组。)
  14. docker search oracle,Docker search 命令
  15. 修改dns服务器转发器,域服务器dns设置转发器
  16. 传奇世界修改服务器时间,《传奇世界手游时长版》测试结束公告
  17. 手机内存不够用,蒲公英X1让U盘秒变私有云
  18. 高端网站建设策划方案有哪些
  19. SIP穿越NAT SIP穿越防火墙
  20. mysql 截断日期_数据截断:错误的日期时间值:“

热门文章

  1. 在Windows上安装TeXLive
  2. mysql 存储 海量图片_数据库中存储大量图片设计
  3. 新零售电商O2O模式解析
  4. 坐标拾取器App上线
  5. python读pdf文件字体大小_如何使用python中的pyPDF2更改pdf文件中的字体
  6. SCRUM敏捷开发教程
  7. lcx 通过端口转发实现内网穿透
  8. java cropper 上传_基于cropper.js的图片上传和裁剪
  9. 一句话总结行测资料分析八大速算技巧
  10. 融云即时通讯云学习笔记