请选择 进入手机版 | 继续访问电脑版
搜索
查看: 1364|回复: 1

[原创] stm8小白学习笔记 03. 继续玩灯

[复制链接]

该用户从未签到

3

主题

4

帖子

0

蝴蝶豆

新手上路

最后登录
2020-6-18
发表于 2017-9-12 20:17:19 | 显示全部楼层 |阅读模式
1.时钟简介翻译
  时钟控制器设计非常强大,同时易于使用。 它的目的是在应用程序中获得最佳性能,同时获得全面受益于所有微控制器的省电功能。您可以管理CPU和各种外围设备的时钟分配,以便优化功耗。一个安全无故障的开关机制允许您切换系统时钟分频通过时钟预分频器在飞行中。
2.时钟系统研究
  stm8有4个时钟源(高速外部时钟HSE,低速外部时钟LSE,高速内部时钟HSI,高速内部时钟),用户可以根据实际需求选择时钟,stm8的时钟也可以通过coo对外输出。最厉害的是外部时钟失效时,可以安全的切换成内部时钟。

1

1

3.怎么玩灯

  改变系统时钟分频值可以改变系统主频,从而改变延时时间,可以使相同延时函数造成不同闪灯频率

void main(void)
{

  //init led0 led1
  GPIO_Init(GPIOC, GPIO_Pin_0 | GPIO_Pin_1, GPIO_Mode_Out_PP_High_Slow);
  /*
  GPIOC->DDR |= 0x03;  //配置PC0 PC1为输出模式

  GPIOC->CR1 |= 0x03;  //配置PC0 PC1为推挽模式
  GPIOC->CR2 &= 0xfc;  //配置PC0 PC1输出速度2m

`*/
  /* Infinite loop */
  while (1)
  {
    CLK->CKDIVR |=  0xff;
    GPIO_ToggleBits(GPIOC, GPIO_Pin_0 | GPIO_Pin_1);
    Delay(1600);
    GPIO_ToggleBits(GPIOC, GPIO_Pin_0 | GPIO_Pin_1);
    Delay(1600);

    CLK->CKDIVR &=  0x00;
    GPIO_ToggleBits(GPIOC, GPIO_Pin_0 | GPIO_Pin_1);
    Delay(1600);
    GPIO_ToggleBits(GPIOC, GPIO_Pin_0 | GPIO_Pin_1);
    Delay(1600);

    /*
    GPIOC->ODR |= 0x03;    //熄灭
    Delay(1600);
    GPIOC->ODR &= 0xfc;    //点亮     
    Delay(1600);
    */
  }
}



回复

使用道具 举报

该用户从未签到

41

主题

2582

帖子

282

蝴蝶豆

论坛元老

最后登录
2021-4-1
发表于 2017-9-13 14:45:42 | 显示全部楼层
学习了
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-3-29 00:22 , Processed in 1.168824 second(s), 38 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表