📄 pwm.h
字号:
unsigned char p;
unsigned int base_voltage=0x80;
unsigned int result;
unsigned char data_p;
unsigned char powerstage;
unsigned char value_a;
unsigned char value_b;
unsigned int amplitude_factor;
unsigned char num=0;
void amplitude(void)
{
result=0;
result=base_voltage*170;
result=result>>8;
amplitude_factor=(result&0xff);
amplitude_factor+=85;
data_p=p;
result=amplitude_factor*data_p;
result=result>>8;
powerstage=(result&0xff);
powerstage+=5;
//p++;
}
void value_calculate(void)
{
value_a=powerstage+5;
value_b=powerstage;
}
void PWM_init(void)
{
PLLCSR=0x02; // Wait for the PLL to lock
while ((PLLCSR & 1)==0);// Enable the 64MHz clock
PLLCSR|=0x04;
TCCR1B=0x42; //32M
TCCR1A=0xD3;
OCR1C = 0xFF;
OCR1A = 0x00;
OCR1B = 0x00;
TCNT1 = 0x00;
}
void Set_Pwm(void)
{
amplitude();
value_calculate();
OCR1A = value_a;//0x80;//
OCR1B = value_b; // 0x80;//
}
void wave_out(void)
{
int counter = 0;//loop counter
////
p=1;
for(counter = 0;counter < 4;counter ++ )
{
Set_Pwm();
}
////
p=0;
for(counter = 0;counter < 11;counter ++ )
{
Set_Pwm();
}
///
p=1;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
}
////
p=2;
for(counter = 0;counter < 2;counter ++ )
{
Set_Pwm();
}
////
p=3;
for(counter = 0;counter < 2;counter ++ )
{
Set_Pwm();
//p++;
}
p=4;
for(counter = 0;counter < 4;counter ++ )
{
Set_Pwm();
p++;
}
/* ///
p=5;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
////
p=6;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p=7;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
} */
///
p=9;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p=10;
for(counter = 0;counter < 8;counter ++ )
{
Set_Pwm();
p+=2;
}
///
/* p=12;
for(counter = 0;counter < 8;counter ++ )
{
Set_Pwm();
p+=2;
}
///
p=14;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p=16;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
////
p=18;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p=20;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
////
p=22;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
////
p=24;
for(counter = 0;counter < 4;counter ++ )
{
Set_Pwm();
p+=3;
}*/
///
p=27;
for(counter = 0;counter < 5;counter ++ )
{
Set_Pwm();
p+=3;
}
////
/* p=30;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p=33;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}*/
///
p = 43;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
}
///
p = 46;
for(counter = 0;counter < 8;counter ++ )
{
Set_Pwm();
p+=4;
}
////
p = 79;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
p+=4;
}
///
p = 94;
for(counter = 0;counter < 4;counter ++ )
{
Set_Pwm();
p+=4;
}
/////
p = 111;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
//p+=4;
}
///
p = 115;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
// p+=4;
}
///
p = 120;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
// p+=4;
}
p = 124;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
// p+=4;
}
p = 130;
for(counter = 0;counter < 5;counter ++ )
{
Set_Pwm();
p+=4;
}
p = 150;
for(counter = 0;counter < 5;counter ++ )
{
Set_Pwm();
p+=4;
}
p = 169;
for(counter = 0;counter < 7;counter ++ )
{
Set_Pwm();
p+=3;
}
p = 189;
for(counter = 0;counter < 5;counter ++ )
{
Set_Pwm();
p+=2;
}
p = 198;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
p+=2;
}
p = 203;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
p++;
}
p = 205;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
p++;
}
p = 207;
for(counter = 0;counter < 1;counter ++ )
{
Set_Pwm();
//p++;
}
p = 208;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
//p++;
} /*
p = 209;
for(counter = 0;counter < 11;counter ++ )
{
Set_Pwm();
//p++;
}
p = 208;
for(counter = 0;counter < 44;counter ++ )
{
Set_Pwm();
//p++;
}
p = 209;
for(counter = 0;counter < 9;counter ++ )
{
Set_Pwm();
//p++;
}
p = 208;
for(counter = 0;counter < 3;counter ++ )
{
Set_Pwm();
// p++;
}
p = 207;
for(counter = 0;counter < 2;counter ++ )
{
Set_Pwm();
//p++;
}
p = 206;
for(counter = 0;counter < 2;counter ++ )
{
Set_Pwm();
p--;
}*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -