zhongguo556677 发表于 2009-7-9 17:35:35

mega64 T1产生16khzPWM波,仿真时,PINB.5有电平变化,可为什么PORTB.5没有输出?我刚入门,请

#include<mega64.h>

unsigned int a=0;

flash unsigned int sin_table={
0x0FF,0x104,0x109,0x10E,0x113,0x118,0x11D,0x122,0x127,0x12C,0x131,0x136,0x13B,0x140,0x144,0x149
,0x14E,0x153,0x157,0x15C,0x161,0x165,0x16A,0x16F,0x173,0x177,0x17C,0x180,0x184,0x189,0x18D,0x191
,0x195,0x199,0x19D,0x1A1,0x1A5,0x1A9,0x1AC,0x1B0,0x1B4,0x1B7,0x1BB,0x1BE,0x1C1,0x1C5,0x1C8,0x1CB
,0x1CE,0x1D1,0x1D3,0x1D6,0x1D9,0x1DB,0x1DE,0x1E0,0x1E3,0x1E5,0x1E7,0x1E9,0x1EB,0x1ED,0x1EF,0x1F0
,0x1F2,0x1F3,0x1F5,0x1F6,0x1F7,0x1F9,0x1FA,0x1FB,0x1FB,0x1FC,0x1FD,0x1FD,0x1FE,0x1FE,0x1FE,0x1FE
,0x1FE,0x1FE,0x1FE,0x1FE,0x1FE,0x1FD,0x1FD,0x1FC,0x1FB,0x1FB,0x1FA,0x1F9,0x1F7,0x1F6,0x1F5,0x1F3
,0x1F2,0x1F0,0x1EF,0x1ED,0x1EB,0x1E9,0x1E7,0x1E5,0x1E3,0x1E0,0x1DE,0x1DB,0x1D9,0x1D6,0x1D3,0x1D1
,0x1CE,0x1CB,0x1C8,0x1C5,0x1C1,0x1BE,0x1BB,0x1B7,0x1B4,0x1B0,0x1AC,0x1A9,0x1A5,0x1A1,0x19D,0x199
,0x195,0x191,0x18D,0x189,0x184,0x180,0x17C,0x177,0x173,0x16F,0x16A,0x165,0x161,0x15C,0x157,0x153
,0x14E,0x149,0x144,0x140,0x13B,0x136,0x131,0x12C,0x127,0x122,0x11D,0x118,0x113,0x10E,0x109,0x104
,0x0FF,0x0FA,0x0F5,0x0F0,0x0EB,0x0E6,0x0E1,0x0DC,0x0D7,0x0D2,0x0CD,0x0C8,0x0C3,0x0BE,0x0BA,0x0B5
,0x0B0,0x0AB,0x0A7,0x0A2,0x09D,0x099,0x094,0x08F,0x08B,0x087,0x082,0x07E,0x07A,0x075,0x071,0x06D
,0x069,0x065,0x061,0x05D,0x059,0x055,0x052,0x04E,0x04A,0x047,0x043,0x040,0x03D,0x039,0x036,0x033
,0x030,0x02D,0x02B,0x028,0x025,0x023,0x020,0x01E,0x01B,0x019,0x017,0x015,0x013,0x011,0x00F,0x00E
,0x00C,0x00B,0x009,0x008,0x007,0x005,0x004,0x003,0x003,0x002,0x001,0x001,0x000,0x000,0x000,0x000
,0x000,0x000,0x000,0x000,0x000,0x001,0x001,0x002,0x003,0x003,0x004,0x005,0x007,0x008,0x009,0x00B
,0x00C,0x00E,0x00F,0x011,0x013,0x015,0x017,0x019,0x01B,0x01E,0x020,0x023,0x025,0x028,0x02B,0x02D
,0x030,0x033,0x036,0x039,0x03D,0x040,0x043,0x047,0x04A,0x04E,0x052,0x055,0x059,0x05D,0x061,0x065
,0x069,0x06D,0x071,0x075,0x079,0x07E,0x082,0x087,0x08B,0x08F,0x094,0x099,0x09D,0x0A2,0x0A7,0x0AB
,0x0B0,0x0B5,0x0BA,0x0BE,0x0C3,0x0C8,0x0CD,0x0D2,0x0D7,0x0DC,0x0E1,0x0E6,0x0EB,0x0F0,0x0F5,0x0FA
};

interrupt void timer1_ovf_isr(void)
{
if(a>319) a-=320;
OCR1A=sin_table;
a+=5;
}
void main(void)
{
PORTB=0XFF;
DDRB=0xff;
OCR1A=0x0FF;
// OCR1AH=0x00;
TCCR1A=0x82;
TCCR1B=0x01;


TIMSK=0x04;

#asm("sei");
while(1)
;
}

mega64 T1产生16khzPWM波,仿真时,PINB.5有电平变化,可为什么PORTB.5没有输出?我刚入门,请各位大侠指导,谢谢!

zhongguo556677 发表于 2009-7-10 11:41:17

请问PINB和PORTB 有什么关系 上面程序在仿真时,PINB.5在比较数据匹配时,会有电平变化,可是为什么PORTB.5一直处于高电平状态??(=@__@=)??
页: [1]
查看完整版本: mega64 T1产生16khzPWM波,仿真时,PINB.5有电平变化,可为什么PORTB.5没有输出?我刚入门,请