哪位大佬有关于HT66F018芯片的PWM输出配置C代码
官方的例程里没提供吗?
用定时器产生PWM
#include "HT66F018.h"
#define u8 unsigned char
#define u16 unsigned int
#define BEEP _t1on //TMn 计数器 On/Off 控制位
void delay_ms(u16 ms)
{
while(ms--)
{
GCC_DELAY(2000);//编译器自带延时指定个周期,在主频8Mhz下,一个指令周期为0.5us
GCC_CLRWDT();
}
}
void pwminit()
{
_pac7=0;
_pa7=0;
_t1cp=1;//设置端口为定时器端口
_tm1c0=0x20;//clk=sys/16
_tm1c1=0xa8;//pwm模式 高电平有效 比较器P匹配清0
_tm1rpl=125;//f=sys/16/125=4k
_tm1rph=0;
_tm1al=62;//duty=62/125=49.6%
_tm1ah=0;
}
void main()
{
_wdtc=0xa8;//关闭看门狗
_pac3=0;//设置为输出
_cos=1;//设置pa3管脚为IO,而不是比较器输出
_acerl=0;//模拟端口关闭
pwminit();
while(1)
{
BEEP=1;
}
}
引用: hzz592788 发表于 2021-6-29 08:58 用定时器产生PWM #include "HT66F018.h" #define u8 unsigned char #define u16 unsigned int ...
收到,谢谢
引用: hzz592788 发表于 2021-6-29 08:58 用定时器产生PWM #include "HT66F018.h" #define u8 unsigned char #define u16 unsigned int ...
这个程序是网上的吧??前面的延时函数似乎都没用上,后面的代码需要验证一下
引用: xuanyuanzhu 发表于 2021-6-29 14:06 这个程序是网上的吧??前面的延时函数似乎都没用上,后面的代码需要验证一下
这是我自己用在0185的代码,延时程序是懒得删而已
引用: hzz592788 发表于 2021-6-29 15:42 这是我自己用在0185的代码,延时程序是懒得删而已
谢谢,跟着你的代码,看手册