求助各路大虾,我在STM8S的评估板上准备实现PWM控制LED的亮暗,LED是接在PD7管脚上,采用TIM1 channel 4 输出PWM,可是怎么也出不来效果。请教是哪里出了问题,下面是我的设置。还有一个,在STVD编译环境下跟踪寄存器,发现TIM1_CCR寄存器竟然是“intrusive read”, 单步执行写CCR,根本就写不进去,青椒大虾们为什么CCR寄存器会标注"intrusive read"?多谢大虾们。 //use TIM1 PWM to control LED //set system clock CLK->PCKENR1 = 0x80; CLK->CMSR = 0xE1; //choose CLK HSI = 16Mhz as fMASTER. CLK->CKDIVR = 0x00; //set fHSI= fHSI RC output/8 = 16Mhz/1 = 16MHz //Becasue CPUDIV no any devide, so fMASTER = fHSI = 16Mhz //---------------------------- //init TIM1 base unit //---------------------------- TIM1->PSCRH = 0x00; TIM1->PSCRL = 0x00; //fCONT = fHSI = 16Mhz //set PWM freq TIM1->ARRH = 0x00; TIM1->ARRL = 0x7f; //PWM freq= 16Mhz/(0x7f+1)=16Mhz/128=15625Hz TIM1->CR1 = 0x00; TIM1->RCR = 0x00; //no repeat count; //set TIM1_CH4 //---------------------------- TIM1->CCER2 = 0x10; //CC4E(bit4)=1: OC4 output enable //CC4P(bit5)=0: high level is active; TIM1->CCMR4 = 0x60; //set channel 4 as PWM mode1, preload is disable TIM1->OISR = TIM1->OISR | 0xbf; //bit6(OIS4)=0, Output idle state is 0; //initialize PWM duty circle TIM1->CCR4H = 0x00; TIM1->CCR4L = 0x00; //PWM duty circle = CCR4/(ARR+1)*100% TIM1->IER = 0x00; //disable interrupt; TIM1->CR2 = 0x00; TIM1->CR1 = TIM1->CR1 |0x01; //start count. TIM1->BKR = 0x80; //enable; |
什么型号? |
STM8S903K3,,谢谢大虾 |
stm8s003 adc中断和通道切换的问题
adc施密特触发器stm8
stm8l051f3 TSSOP20 封装,待机模式下,2天后,电流突然增加到140UA
STM8S用STVP烧录怎么加密?
如何使用ST官网例程_LIN总线通讯_STM8AF
STM8 LIN
IAR代码编辑太费劲了,想问一下有没有好的方法,试了VScode但是头文件老是报错,调了很久也没调好,想换个方法了。
想问一下各位大佬,IAR下载调试代码时出现 warning: is an illegal data sample expression IAR是什么意思啊?
STM8S标准库TIM1编码器功能不计数,请大师帮我看看
cosmic stm8 license网页申请按键没反应,可能是什么原因?