共2条
1/1 1 跳转至页
问
用Atmega8L(4MHz)编写pwm,
void pwm_on(void)
{
TCCR1B=0x00; //关闭PWM
TCCR1A=0xB0; //OC1A向上计数匹配清零,向下计数匹配置位;OC1B相反
TCCR1B=0x10; //PWM方式8
ICR1H=0x00; //设置TOP值(39)
ICR1L=0x27;
OCR1AH=0x00;
OCR1AL=0x0F; //占空比2/5
OCR1BH=0x00;
OCR1BL=0x17; //占空比2/5
TCCR1B|=0x04; //启动PWM256分频
}
由公式计算得频率:4M/256/2/39=200Hz,然实测频率为50Hz,为何? 答 1: 应该是没有设置熔丝位。使用了内部1M的RC振荡,所以正好除以4,等于50HZ。 答 2: D 使用的是外部晶振4MHz,没有设置熔丝位,请问具体该怎样设置? 答 3: 在AVRStudio里设置在AVRStudio里设置
TOOL--->STK500...--->STK500...
选择即可 答 4: 熔丝设置:不知你用什么方法写芯片。一般都用下载线吧,ponyprog界面。如下:
将CKSEL3..0全部清空,然后设置即可。 答 5: Thanks 用的是ISPro,设置熔丝后都搞定了,非常感谢!!!!
void pwm_on(void)
{
TCCR1B=0x00; //关闭PWM
TCCR1A=0xB0; //OC1A向上计数匹配清零,向下计数匹配置位;OC1B相反
TCCR1B=0x10; //PWM方式8
ICR1H=0x00; //设置TOP值(39)
ICR1L=0x27;
OCR1AH=0x00;
OCR1AL=0x0F; //占空比2/5
OCR1BH=0x00;
OCR1BL=0x17; //占空比2/5
TCCR1B|=0x04; //启动PWM256分频
}
由公式计算得频率:4M/256/2/39=200Hz,然实测频率为50Hz,为何? 答 1: 应该是没有设置熔丝位。使用了内部1M的RC振荡,所以正好除以4,等于50HZ。 答 2: D 使用的是外部晶振4MHz,没有设置熔丝位,请问具体该怎样设置? 答 3: 在AVRStudio里设置在AVRStudio里设置
TOOL--->STK500...--->STK500...
选择即可 答 4: 熔丝设置:不知你用什么方法写芯片。一般都用下载线吧,ponyprog界面。如下:
将CKSEL3..0全部清空,然后设置即可。 答 5: Thanks 用的是ISPro,设置熔丝后都搞定了,非常感谢!!!!
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 在K230DBOX上实现多时段语音提示功能被打赏¥14元 | |
| 使K230DBOX实现相机持续拍照功能被打赏¥12元 | |
| 基于K230DBOX的文本管理器设计被打赏¥14元 | |
| 基于K230DBOX的彩色画板功能实现被打赏¥15元 | |
| 在K230DBOX上实现音乐播放器功能被打赏¥15元 | |
| NXP MCU系列开发板MCULink固件升级方法【VSCode】被打赏¥28元 | |
| 三分钟快速搭建NXP MCU开发环境(VSCode)被打赏¥22元 | |
| 为遥控小车巧添功能被打赏¥26元 | |
| 【S32K3XX】FlexCAN 模块配置使用被打赏¥30元 | |
| 【S32K3XX】FlexCAN RAM 资源分配整理被打赏¥25元 | |
我要赚赏金
