?? pwm_ser._c
字號:
#include<iom16v.h>
#include<macros.h>
#define uchar unsigned char
#define uint unsigned int
#define xtal 6
uchar counter=0;
uchar key;
const uchar array[6]={0xa0,0xf9,0xc4,0xd0,0x99,0x92};
void intial(void)
{
TCCR0=0X6c;
TCNT0=0X0;
TIMSK=0X1;
TIFR=0X0;
DDRB=0x8; //PB3輸出
PORTB=0x8;
DDRA=0xFC; //Pa0,Pa1輸入
PORTA=0Xff;
DDRD=0XFF;
PORTD=0X0;
_SEI();
}
void delay10ms(void)
{
uint i;
uchar j=10;
while(j--)
{
for(i=1;i<(uint)(xtal*143-2);i++)
;
}
}
uchar key_decord(void)
{
uchar y;
uchar t;
t=PINA&3;
delay10ms();
t=PINA&3;
switch (t)
{case 0: y=2;break;
case 1: y=3;break;
case 2: y=1;break;
default: y=0;}
return(y);
}
#pragma interrupt_handler T0_ov:10
void T0_ov(void)
{
uchar t;
TIFR^=0X1;
switch (key)
{case 0: OCR0=5; PORTD=array[0];break; //-90度
case 1: OCR0= 25; PORTD=array[1];break; //-45度
case 2: OCR0=36; PORTD=array[2];break; //0度
case 3: OCR0=48; PORTD=array[3];break; //45度
case 4: OCR0=60; PORTD=array[4];break; //90度
default:OCR0=36; PORTD=array[0] ; }
}
main()
{
intial();
do
{/*_CLI();
key=key_decord();
_SEI();
*/
key=0;
}while(1);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -