你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM8-SO8-DISCO -- 14、STM8L001 GPIO测试

[复制链接]
TLLED 发布时间:2019-2-25 16:05

   
    通过开发板的上的SB4,SB5,SB6跳线来选择STM8L001芯片,STM8L050和STM8L001都属于STM8L系列芯片,所有工程文件就还是用之前的STM8L050创建的工程文件,通过GPIO驱动来验证工程的可运行性。


    一、硬件部分


    使用PB5引脚来驱动LED。
    2253.png
   
    二、程序部分


    2.1、在工程文件中,选择STM8L001芯片型号
    2254.png
   
     2.2、程序代码


     2.2.1、LED代码
  1. //led/c
  2. #include "stm8l15x.h"
  3. #include "led.h"

  4. void led_init(void)
  5. {
  6.   GPIO_Init(LED_GPIO_PORT, (GPIO_Pin_TypeDef)LED_GPIO_PINS, GPIO_Mode_Out_PP_Low_Fast);
  7. }

  8. //led.h
  9. #ifndef __LED_H
  10. #define __LED_H

  11. #define LED_GPIO_PORT  (GPIOB)
  12. #define LED_GPIO_PINS  (GPIO_Pin_5)

  13. #define led_tog() GPIO_ToggleBits(LED_GPIO_PORT, (GPIO_Pin_TypeDef)LED_GPIO_PINS)

  14. void led_init(void);

  15. #endif
复制代码

    2.2.2、主程序
  1. void main(void)
  2. {
  3.   CLK_Config();           //时钟初始化
  4.   
  5.   Delay(0x2fffff);        //延时5S
  6.   
  7.   led_init();             //led初始化
  8.   
  9.   while (1)
  10.   {
  11.     led_tog();            //LED取反            
  12.     Delay(0xffff);
  13.   }
  14. }
复制代码

    三、执行结果


    3.1、在原来的工程文件仿真时,程序执行到
            CLK_Config();           //时钟初始化
  1. //时钟初始化
  2. static void CLK_Config(void)
  3. {   
  4.     /* Select HSI as system clock source */
  5.     CLK_SYSCLKSourceSwitchCmd(ENABLE);
  6.     CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSI);
  7.     /* system clock prescaler: 1*/
  8.     CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);
  9.     //while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_HSI)
  10.     //{}   
  11. }
复制代码

           这个函数while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_HSI){} 位置跳转转不出来,把这个函数屏蔽掉以后,程序可以运行下去,后面再看看具体原因是什么。
   
    3.2、运行的视频
    2254.gif




    stm8l001芯片运行正常。









1 收藏 1 评论2 发布时间:2019-2-25 16:05

举报

2个回答
shishangyangyan 回答时间:2020-3-13 14:51:14
TLLED您好,劳烦问下您用的是IAR吗?什么版本?我这边下载的3.10和3.11里都没有STM8L001J3,如您上面的截图,Target->device里没有STM8L001J3,是不是IAR版本不对?
shishangyangyan 回答时间:2020-3-13 14:57:39
TLLED您好,我是STM8开发的新手,最近有一个项目打算选用STM8L001J3的型号,发现最新的IAR里在选芯片型号时都没有这个型号,您是用的什么版本?还是其他什么工具呢?劳烦指教一下,谢谢
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版