2015-7-15 17:03| 发布者: waveshare-admin| 查看: 5467| 评论: 0
/*********************************************************************微 雪 电 子 WaveShare http://www.waveShare.net目标系统: 基于STM8单片机 应用软件: Cosmic CxSTM8 说 明: 若用于商业用途,请保留此段文字或注明代码来源深 圳 市 微 雪 电 子 有 限 公 司 保 留 所 有 的 版 权 *********************************************************************/
#include <STM8S207S8.h>#define LED_PORT PB_ODRvoid Init_GPIO(void){ PB_DDR = 0x0d; PB_CR1 = 0x0d; PB_CR2 = 0x00;}void delay_ms(unsigned int ms){ unsigned char i; while(ms!=0) { for(i=0;i<250;i++) {} for(i=0;i<75;i++) {} ms--; }}void main(void){ unsigned char i; Init_GPIO(); while (1) { //启用内部高速晶振且无分频16MHz CLK_SWCR|=0x02; //开启切换 CLK_SWR=0xe1; while((CLK_SWCR & 0x01)==0x01); CLK_CKDIVR=0x00; CLK_SWCR&=(~0x02); //关闭切换 for(i=0;i<10;i++) { LED_PORT=0xff; delay_ms(500); LED_PORT=(~0xff); delay_ms(500); } //启用内部高速晶振且8分频(内部始终分频)2MHz CLK_CKDIVR=0x18; for(i=0;i<5;i++) { LED_PORT=0xff; delay_ms(500); LED_PORT=(~0xff); delay_ms(500); } //启用外部高速晶振且16分频500KHz CLK_SWCR|=0x02; //开启切换 CLK_SWR=0xb4; while((CLK_SWCR & 0x01)==0x01); CLK_CKDIVR=0x04; CLK_SWCR&=(~0x02); //关闭切换 for(i=0;i<5;i++) { LED_PORT=0xff; delay_ms(500); LED_PORT=(~0xff); delay_ms(500); } //启用内部低速晶振且无分频 CLK_SWCR|=0x02; //开启切换 CLK_ICKR|=0x08; //使能内部低速晶振 CLK_SWR=0xd2; while((CLK_SWCR & 0x01)==0x01); CLK_CKDIVR=0x00; CLK_SWCR&=(~0x02); //关闭切换 for(i=0;i<5;i++) { LED_PORT=0xff; delay_ms(500); LED_PORT=(~0xff); delay_ms(500); } }}
观察观察LED的闪烁速度是否有明显的变化。
以上资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!
评论
微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )
GMT+8, 2024-12-22 13:59 , Processed in 0.018156 second(s), 20 queries .