用proteus实现STM32仿真
目录
- 1、创建工程绘制原理图
- 2、使用Keli进行编程
- 3、仿真
- 总结:
1、创建工程绘制原理图
1、打开proteus8.9,点击左上角的“文件”->“新建工程”
然后输入工程名和路径, 点击下一步:
然后选择“从选中的模板中创建原理图”(DEFAULT),点击下一步
然后选择“不创建PCB布板设计”,点击下一步,
然后选择“关键固件项目”,系列, Controller的选择如图所示:
然后点击下一步,点击完成就建好工程了。
在原理图绘制上就出现了STM32器件
2、首先为STM32器件配置好所需的电源。
然后在元器件库中找到黄色的LED灯和电阻,连接好电路如图所示:
(电阻的阻值不宜过大,过大使通过的电流小而不发光。)
2、使用Keli进行编程
首先需要下载外设库:这里给出GitHub的网址,官网的话需要注册;
https://github.com/2414466154/seven
然后新建一个工程:(此工程的路径要与下载外设库的路径一致)
然后选择对应的芯片,在上面用的是STM32103R6,然后继续添加与外设库对应的组:
右击“Target1”,然后添加对应的组,并点击右下角添加文件把下载的外设库文件添加到对应的组中,注意,在添加文件的时候要把文件类型改为“AllFile”,不要只添加.c文件,否则外设库添加不全。
然后点击“Option for…”进行一些修改:
选择“c\c++”,在Define中填入如下内容
然后继续点击下方的IncludePath的三个点,手动输入:
最后在“Output”栏中选中要生成的HEX文件,点击OK完成。
点击新建文件,输入以下代码:
#include "stm32f10x.h"
GPIO_InitTypeDef GPIO_InitStructure;
void delay_ms(uint32_t ms)
{uint32_t i_cnt,j_cnt;for(i_cnt=0;i_cnt<3000;i_cnt++);for(j_cnt=0;j_cnt<ms;j_cnt++);}
uint32_t i;
int main(void)
{RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_Init(GPIOC, &GPIO_InitStructure);GPIOC->BSRR=0xff;while (1){for(i=0;i<8;i++){delay_ms(99000);GPIOC->BRR=(1<<i); delay_ms(99000);GPIOC->BSRR=(1<<i);}for(i=0;i<8;i++){delay_ms(99000);GPIOC->BRR=0x000000ff;delay_ms(99000);GPIOC->BSRR=0x000000ff;}}
}
保存后进行编译得到如下的结果:
表示没有错误并且生成了HEX文件。
3、仿真
接下来把生成的HEX文件添加到STM32103R6中,并且把频率改为8M
如图所示:
然后点击确认并进行仿真:
结果为:每个灯单独轮流亮一次,然后所有灯一起亮。
总结:
本次使用两个软件制作的流程与之前的不是很一样,会有外设库的涉及,虽然我不知道为什么要下载外设库的作用,然后在一些外设库的引入的方面也是很棘手,虽然是按照教程来的, 但是过程基本上是不知道的,这也使得自己对STM32一些的使用有了进一步的设计。
用proteus实现STM32仿真相关推荐
- Proteus VSM STM32仿真原理图绘制与设置
Proteus VSM STM32仿真原理图绘制与设置 相关篇<Proteus VSM Studio建立代码工程与调试全过程> 新建STM32仿真工程步骤 新建工程: 工程名字:根据需要自 ...
- Proteus STM32仿真学习板
一 全球IC爆冷,价格猛涨,ST系列单片机更是一马当先,贵到你怀疑人生.这个时候想学习STM32的基础去购买开发板是很不划算的,而且用完就搁置了,吃灰到永远,能半价甩卖就已经很好了. 为了让大家方便快 ...
- (1)Proteus 8.9上的STM32仿真系列(HAL)---流水灯
** (1)Proteus 8.9上的STM32仿真系列-流水灯 此系列面向新手,不使用自定义的库文件,只过一遍STM32的大部分功能. ** 环境:Proteus8.9+STM32CubeIDE 1 ...
- 基于 Proteus 的单片机仿真
最近又要用proteus进行仿真51单片机-- 1.元器件的放置: 里面都是些英文,找起来头大,下面的一些表都是常见的单片机仿真使用的原件,很方便的就能找到了. 2.电源和地的放置 反正我在元件库中找 ...
- proteus 8 打开proteus 7版本仿真文件的两个方法
Proteus版本一直在更新,其中常见的大版本Proteus 7 和Proteus 8兼容是有问题的,Proteus是向上兼容的,高版本可以打开低版本的仿真,低版本打不开高版本的. Proteus 7 ...
- proteus怎么运行c语言,Proteus软件的仿真调试方法
目录 共有3种调试方法,分别是: 直接用扩展名为HEX的十六进制文件调试: 源代码级调试: Keil与Proteus联合调试. 第一种方法比较简捷,不论是用汇编语言,还是用C语言,都要在Keil下,连 ...
- Arduino UNO + Proteus串口通讯仿真实验
Arduino UNO + Proteus串口通讯仿真实验 准备工作 需要借助虚拟串口软件(Virtual Serial Port Driver),创建2个虚拟串口 具体软件下载和教程:http:// ...
- 51单片机俄罗斯方块游戏+Proteus在线模拟仿真
51单片机俄罗斯方块游戏+Proteus在线模拟仿真 Proteus在线模拟仿真 主程序代码 //--------------------------------------------------- ...
- Proteus内部编程仿真STM32(附程序)
目录 一.背景 二.STM32开发简介 三.STM32实例简述 四.Proteus内部寄存器编程 1.时钟函数Clock_Init() 2.GPIO函数 LED_Init() 3.延时函数 delay ...
最新文章
- react native连接mysql_react-native上手之环境搭建及连接模拟器
- python杂记-RSA加解密实现(4)-加解密消息及文件
- Activiti 接收任务活动
- 20175221 2018-2019-2 《Java程序设计》第一周学习总结
- Cannot find executable for CFBundle 解决办法
- 哔哩哔哩2019秋招笔试试题二——脸滚键盘
- ICC图文流程——(六)可造性设计Chip finishing
- joda-time 使用详解
- 微信小程序用户昵称包含表情图片的解决方案
- 用MFC做漂亮界面之美化对话框
- 如何提升 Java 技术
- 好用的revit软件:MEP绘制管道风管时,提示不可见如何解决?
- 配置gurobi到python(anaconda)
- 我所理解的高通UEFI之display的流程和移植
- PCB上电源走线注意
- 腾达n4怎么设置虚拟服务器,腾达(Tenda)N4无线路由器怎么设置
- android有nfc功能吗,nfc功能是什么_哪些手机有nfc功能 - 全文
- RivaTuner如何使用,RivaTuner使用教程
- 腾讯云运维考试题及答案
- win7c盘空间越来越小_系统盘空间越来越小,清理垃圾也没用,怎么办?