STM8单片机PWM应用.doc

上传人:白大夫 文档编号:3273861 上传时间:2019-08-07 格式:DOC 页数:2 大小:16.50KB
返回 下载 相关 举报
STM8单片机PWM应用.doc_第1页
第1页 / 共2页
亲,该文档总共2页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《STM8单片机PWM应用.doc》由会员分享,可在线阅读,更多相关《STM8单片机PWM应用.doc(2页珍藏版)》请在三一文库上搜索。

1、STM8单片机PWM应用PD3复用功能是TIM2_CC2,正好可以用来测试PWM功能。本例程通过电位器调整PWM脉宽来调整接在PD3的LED1亮度。#includevoid CLK_init(void)CLK_CKDIVR = 0x08; / 16M内部RC经2分频后系统时钟为8Mvoid GPIO_init(void)PD_DDR = 0x08; / 配置PD端口的方向寄存器PD3输出PD_CR1 = 0x08; / 设置PD3为推挽输出void TIM2_init(void)TIM2_CCMR2 = 0x70; / PWM模式 2TIM2_CCER1 = 0x30; / CC2配置为输出T

2、IM2_ARRH = 0x03;/ 配置PWM分辨率为10位,ARR=0x3FFTIM2_ARRL = 0xFF;/ PWM频率=8M/0x03FF=7820HzTIM2_CR1 = 0x01; / 计数器使能,开始计数本文引用地址:http:/eepw/article/201611/320481void ADC_init(void)ADC_CSR = 0x03; / ADC输入引脚AIN3ADC_CR1 = 0x01; / ADC开启void Run(void)unsigned int value;ADC_CSR = 0x80;/清除EOC转换结束标志ADC_CR1 |= 0x01; /开始

3、单次转换while(!(ADC_CSR0x80); /等待单次转换完成value = (int)ADC_DRH2); / 先读高8位,默认设置数据左对齐value |= ADC_DRL; / 再读低8位TIM2_CCR2H = (unsigned char)(value8); / 更新CC2比较寄存器TIM2_CCR2L = (unsigned char)(value);void init_devices(void)asm(sim);/禁止中断CLK_init();GPIO_init();TIM2_init();ADC_init();asm(rim); /使能中断void main( void )init_devices();while(1) Run();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1