0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Keil仿真调试STM32与LED

撞上电子 2023-11-30 08:00 次阅读

今天给大家分享一下STM32 流水灯简单的仿真吧,我感觉这个提供有用的,但是自己也是第一次使用,主要是感觉曲线很高级。在PWM中查看脉宽很有用。

code: led.c

#include "led.h"#include "delay.h"/*GPIO的控制寄存器的配置1、配置输出引脚2、打开对应的输出的寄存器的时钟3、配置引脚输出的模式:强上拉、推完、开漏输出4、配置输出的速度。*/void Led_funcing(){GPIO_DeInit(LED_GPIO_PORT);// 注意这里的函数非常的重要,这里是将对应的GPIO端口初始化成默认的样子,因为这个端口可能在以前使用过,其他的配置可能发生了改变GPIO_InitTypeDef GPIOC_LED_Init; // 定义GPIO的结构体,也就是外设的结构体RCC_APB2PeriphClockCmd( LED_GPIO_CLK,ENABLE); //打开对应的GPIO的时钟,注意这里不同的外设可能挂载的时钟不同,所以需要开原理图,GPIOC_LED_Init.GPIO_Pin=LED_GPIO_PIN ; // 配置需要使用的引脚GPIOC_LED_Init.GPIO_Mode=GPIO_Mode_Out_PP; //配置引脚的输出的模式GPIOC_LED_Init.GPIO_Speed=GPIO_Speed_50MHz; // 配置输出的频率,这个在输入的时候不需要配置GPIO_Init(LED_GPIO_PORT,&GPIOC_LED_Init); // 使用初始化函数初始化刚刚定义的结构体,以及对应的GPIO端口}

code: mian.c

#include "stm32f10x.h"#include "led.h"#include "delay.h"/*功能的实现,注意在KEIL5中不要使用中文的空格这样将会出现错误。重点,重点,重点*/int main(){Led_funcing();// int k=5;while(1){GPIO_SetBits(LED_GPIO_PORT, LED_GPIO_PIN ); // 将对应的GPIO端口对应的引脚设置为高电平delay(10000);//延时GPIO_ResetBits(LED_GPIO_PORT, LED_GPIO_PIN); // 将对应的GPIO端口对应的引脚设置成低电平delay(10000);//延时,}}


总结:
1、在进行不同功能函数的编写的时候,最好在USER文件夹下面建一个对应的文件,注意有C文件,那么就一定有H文件。
2、在编译C文件的时候,首先在配中找到对应的H文件的文件夹目录。
3、不同的芯片对应的库函数具有一定的差异,所以在进行引入库的时候,可能会出错误。
4、如果在编译的时候出现相关的库函数文件无法正常的打开,那么首先需要查看是否指定相关的路径。
5、在魔术棒中的文件的输出最好都定义到自己的文件夹中,这样便于进行需要找。

配置仿真:

1,选择使用对应的CPU即可

864c590a-8f13-11ee-9788-92fbcf53809c.png

2,查看状态配置

865b2c64-8f13-11ee-9788-92fbcf53809c.png

3,仿真结果

86754432-8f13-11ee-9788-92fbcf53809c.png

4,最后仿真的结果:时间与单片机上实际运行的时间一致,如果不一致,请查看晶振或者时钟配置。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22455

    浏览量

    645897
  • STM32
    +关注

    关注

    2240

    文章

    10675

    浏览量

    348856
  • keil
    +关注

    关注

    68

    文章

    1196

    浏览量

    165331
  • 仿真调试
    +关注

    关注

    0

    文章

    9

    浏览量

    7465
收藏 人收藏

    评论

    相关推荐

    keil仿真无法用printf打印怎么解决?

    和CLK)接口方式. 芯片USART1的RX TX引脚反接仿真器RX TX引脚. 这种连接方式可以使printf重定向到usart1用Keil实现在线调试吗? 我试了好多次都实现不了!!!~
    发表于 04-11 08:20

    stm32L0用keil5仿真时报错的原因?

    使用的是stm32L0系列芯片,在用keil5仿真时报错*** error 65: access violation at 0x40022000 : no \'read\' permission,网上说修改debug配置改了也没
    发表于 03-20 07:41

    STM32CUBE生成的工程如何进行KEIL的软件仿真

    通过STM32CUBE生成的工程如何进行KEIL的软件仿真有异常,做了很多的尝试,没能成功 1、根据网上的资料,进行魔术棒的相关修改,如下图 2、能顺利进入仿真界面,但是全速
    发表于 03-13 06:04

    STM32 TrustZone 开发调试技巧

    电子发烧友网站提供《STM32 TrustZone 开发调试技巧.pdf》资料免费下载
    发表于 12-18 11:16 2次下载
    <b class='flag-5'>STM32</b> TrustZone 开发<b class='flag-5'>调试</b>技巧

    用proteus和keil实现串口通信仿真

    前面一课讲述了串行口通信的技术原理,本课通过安装虚拟串口,用proteus和keil实现串口通信仿真
    的头像 发表于 11-27 16:42 1427次阅读
    用proteus和<b class='flag-5'>keil</b>实现串口通信<b class='flag-5'>仿真</b>

    使用Keil软件新建单片机工程并点亮LED

    Keil软件是一款专业的嵌入式开发工具,可以用来编写、调试仿真各种嵌入式系统的程序。本文将介绍如何使用Keil软件新建一个工程,并编写一个简单的点亮
    的头像 发表于 11-10 11:26 1181次阅读
    使用<b class='flag-5'>Keil</b>软件新建单片机工程并点亮<b class='flag-5'>LED</b>灯

    Keil中使用STM32CubeProgrammer

    使用 STM32CubeProgrammer 进行下载,但是 Keil 编译器中支持该产品系列的软件 Pack 还需要一些时间才会被更新。从而,用户能够使用 Keil 编译器进行编译甚至调试
    的头像 发表于 11-03 16:50 1222次阅读
    在<b class='flag-5'>Keil</b>中使用<b class='flag-5'>STM32</b>CubeProgrammer

    keil在线调试无法设置断点怎么解决?

    使用的是Keil IDE及Jlink仿真器,但是keil启动在线仿真时无法设置断点,仿真前设置的断点在仿
    发表于 11-03 06:11

    嵌入式程序基于源代码仿真调试

    前面一课设计了51单片机最小系统电路,使用51单片机的I/O口控制发光二极管的状态,并装载运行了使用keil编写的嵌入式程序。本次实验应用proteus结合keil对嵌入式C程序进行源代码级调试
    的头像 发表于 11-01 09:24 584次阅读
    嵌入式程序基于源代码<b class='flag-5'>仿真</b><b class='flag-5'>调试</b>

    keil与protues仿真STM32报错check linker settings的原因?

    keil编写用的是stm32f103ze,protues仿真用的是r6,为什么会这样?check linker settings protues中没有ze,keil也不能用r6
    发表于 09-27 06:27

    如何创建51单片机KEIL工程步骤

    1. 什么是Keil软件 Keil软件是一款专为嵌入式系统开发而设计的集成开发环境(IDE),常用于51、STM32单片机软件开发的编程软件。Keil编程软件不仅支持多种工具和扩展程序
    的头像 发表于 09-11 10:49 1614次阅读
    如何创建51单片机<b class='flag-5'>KEIL</b>工程步骤

    stm32按键控制led灯亮灭

    。 一、STM32开发环境搭建 1. 软件环境搭建 首先,需要在计算机中下载安装Keil MDK开发环境,以实现对STM32单片机的编写、编译、烧录等操作。同时,还需要下载对应的STM32
    的头像 发表于 09-02 17:05 7630次阅读

    怎样调试STM32硬件错误HardFault

    在用 KeilSTM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler 函数里的死循环while(1)中。
    发表于 07-18 09:59 736次阅读
    怎样<b class='flag-5'>调试</b><b class='flag-5'>STM32</b>硬件错误HardFault

    NE76003使用keil调试仿真时,代码超过2K无法打断点怎么解决?

    NE76003使用keil调试仿真时,代码超过2K无法打断点。求助各路大神有没**招数
    发表于 06-27 07:10

    简单实用!STM32硬件错误的调试技巧

    在用KeilSTM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。
    发表于 05-23 09:40 4360次阅读
    简单实用!<b class='flag-5'>STM32</b>硬件错误的<b class='flag-5'>调试</b>技巧