📄 pwm_2.c
字号:
/* -------------------------------------------------------------------- */
/* PWM test code for my2406/2407 board */
/* */
/* Copyleft(^^) Do-Yoon Kim */
/* PWM_2.c ver 2.0 */
/* 2002.7.10 */
/* EVA 葛碘俊辑 父甸绢 尘 荐 乐绰 PWM绰 6俺捞促. 捞锅 抗力俊辑绰 */
/* 6俺 葛滴甫 阿阿 促弗 掂萍甫 啊柳 PWM栏肺 父甸绢焊磊. */
/* PWM 林颇荐绰 30KHz, 掂萍绰 阿阿 20% 40% 60%栏肺 父甸绢焊磊. */
/* CON1狼 1,3,5,7,9,11锅捞 PWM1~PWM6捞 楷搬登绢 乐绰 巧捞促. */
/* 坷角肺胶内橇啊 乐促搁 流立 犬牢秦 焊档废 茄促. */
/* -------------------------------------------------------------------- */
#include <util.h>
#include <SCI.h>
#define PWM_PERIOD 30000UL //30KHz
void bad_trap( void )
{
while(1) ;
}
void main( void )
{
UINT k,j;
DSPInit(PLLx4);
EVA_ENABLE; // PWM1,2绰 EVA俊 加秦乐栏骨肺 EVA 葛碘阑 劝己拳
T1DISABLE; // 老窜 timer甫 厚劝己拳
//----------------------------------------------------------------------
// 1. setting PWM1 and 2, PWM 免仿 淬寸 巧阑 PWM 扁瓷栏肺 汲沥
SET_PWM1;
SET_PWM2;
SET_PWM3;
SET_PWM4;
SET_PWM5;
SET_PWM6;
// 2. Setting Timer1, PWM 林扁甫 搬沥茄促.
T1PR = (CPU_clk()/PWM_PERIOD);
//泅犁 CPU 悼累 林颇荐俊辑 荤侩窍绊磊窍绰 PWM 林颇荐甫 唱穿绢霖 蔼阑
// 鸥捞赣 悼累 林颇荐肺 汲沥窍搁 等促.
// 3. ACTRA = Compare Action Control Register A
ACTRA = 0x0999;
// bit3,2 are for PWM2 action mode : 10-active high, 01-active low
// bit1,0 are for PWM1 action mode : 10-active high, 01-active low
// 抛胶飘甫 困秦 PWM2绰 active high肺, PWM1篮 active low肺 汲沥
// 4. PWM duty 汲沥
CMPR1 = (unsigned int)(T1PR*0.2); // CMPR1 -> PWM1 & PWM2
CMPR2 = (unsigned int)(T1PR*0.4); // CMPR1 -> PWM3 & PWM4
CMPR3 = (unsigned int)(T1PR*0.6); // CMPR1 -> PWM4 & PWM6
// 5. COMCONA = Compare Control Register A
COMCONA = 0xC200;
// bit 15 is for Compare Enable
// bit 9 is for Compare Output enable
// 6. 鸥捞赣 悼累 葛靛 汲沥
T1CON = 0xD040;
// bit 12,11 are for Count Mode Selection:10-continuous Up count mode
// bit 10,9,8 are for Input Clock Prescaler 000 - x/1
// bit 6 is for Timer Enable
//-------------------------------------------------------------------------
SET_PC_OUT(BIT0); // for debugging
while(1)
{
for(j=0;j<65000;j++)
{
k++;
}
TOGGLE(PORTC,BIT0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -