zoukankan      html  css  js  c++  java
  • STM8S---IO复用配置(STVP方式)

    1 说明

    STM8S的IO复用用程序代码配置起来比較麻烦。通常是操作flash来操作option byte字节。配置寄存器更加麻烦,能够使用STM 标准外设驱动库来设置。

    本文使用一种界面配置的方式来配置IO复用管脚,即使用STVP来配置。 由于FLASH保存的数据是掉电不丢失的,先用STVP把Option Bytes擦写好后,再用STVD仿真器烧敲代码就可实现IO复用了。

      程序方式配置IO复用见这里

    文件下载

    2 配置流程

    【step1】打开STVP软件

    stvp配置界面
    【step2】打开我们须要下载的xxx.s19文件,CTRL+F5(File->Ram Exec)
    【step3】配置须要复用的引脚
    IO口的复用功能主要配置在于AFR0-AFR7。这里我们配置定时器TIM2_CH3通道的PWM输出管脚复用,默认是PD2为输出,将其配置成复用为PA3输出。如上图,在AFR1中的下拉菜单中选择PA3就可以。

    【step4】下载程序到STM8S中。Progam->All tabs。这样就实现了IO复用配置。

    3 測试程序

    /*
    TIM2_CH3 PWM
    PD2 output
    */
    #include <STM8S103F3P.h>
    
    void CLK_init(void)
    {
     CLK_ICKR |= 0X01;       //使能内部快速时钟 HSI
     CLK_CKDIVR |= 0x08;     // 16M内部RC经2分频后系统时钟为8M
     while(!(CLK_ICKR&0x02));//HSI准备就绪
     CLK_SWR=0xe1;           //HSI为主时钟源
    }
    
    void Init_Tim2(void)
    {
     TIM2_CCMR3 |=  0X70;   //设置定时器2三通道(PD2)输出比較三模式
     TIM2_CCMR3 |= 0X04;     //输出比較3预装载使能
    
     TIM2_CCER2 |= 0x03;     //通道3使能。低电平有效。配置为输出
    
     // 初始化时钟分频器为1。即计数器的时钟频率为Fmaster=8M/64=0.125MHZ
     TIM2_PSCR = 0X06;
     //初始化自己主动装载寄存器。决定PWM 方波的频率,Fpwm=0.125M/62500=2HZ
     TIM2_ARRH = 62500/256;
     TIM2_ARRL = 62500%256;
     //初始化比較寄存器,决定PWM 方波的占空比:5000/10000 = 50%
     TIM2_CCR3H = 31250/256;
     TIM2_CCR3L = 31250%256;
    
    
     // 启动计数;更新中断失能
     TIM2_CR1 |= 0x81;
     //TIM2_IER |= 0x00;        
    }
    
    void Init_GPIO(void)
    {
     /*设置为推挽输出,PD2接了LED灯*/
     PD_DDR |= 0X04;     //设置PD2port为输出模式
     PD_CR1 |= 0X04;     //设置PD2port为推挽输出模式
     PD_CR2 &= 0XFD;
    
     PA_DDR |= 0X08;     //设置PA3port为输出模式
     PA_CR1 |= 0X08;     //设置PA3port为推挽输出模式
     PA_CR2 |= 0XF7;
    }
    
    void main(void)
    {
     CLK_init();
     Init_GPIO();
     Init_Tim2();
     while (1);
    }
  • 相关阅读:
    经典管理定理6条
    从《乔家大院》悟企业留人
    大型Web2.0站点构建技术初探(转)
    从《投名状》谈创业如何“兄弟”共赢
    web2.0站点的考虑
    如何管理很“牛”的员工?
    五种提高 SQL 性能的方法
    破译犹太商人成功密码
    通过了解MySpace的六次重构经历,来认识分布式系统到底该如何创建
    业务员的3个经典故事
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5121301.html
Copyright © 2011-2022 走看看