#include "DSP28_Device.h" <br /><br />void init_eva(void);<br /><br /><br />void main(void)<br />{<br /><br /> InitSysCtrl();<br /><br /> EALLOW;<br /> <br /> GpioMuxRegs.GPAMUX.all = 0x00FF; // EVA PWM 1-6 pins<br /> GpioMuxRegs.GPBMUX.all = 0x00FF; // EVB PWM 7-12 pins<br /> EDIS;<br /> <br /> DINT;<br /><br /><br /> InitPieCtrl();<br /><br /><br /> IER = 0x0000;<br /> IFR = 0x0000;<br /><br /><br /> InitPieVectTable();<br /> <br /><br /> init_eva();<br /> <br /> for(;;);<br /><br />}<br /><br />void init_eva()<br />{<br /><br /> EvaRegs.T1PR = 0xFFFF; // Timer1 period<br /> EvaRegs.T1CMPR = 0x3C00; // Timer1 compare<br /> EvaRegs.T1CNT = 0x0000; // Timer1 counter<br /> <br /> EvaRegs.T1CON.all = 0x1042; <br /><br /><br /> <br /> EvaRegs.T2PR = 0x0FFF; // Timer2 period<br /> EvaRegs.T2CMPR = 0x03C0; // Timer2 compare<br /> EvaRegs.T2CNT = 0x0000; // Timer2 counter<br /> <br /> EvaRegs.T2CON.all = 0x1042; <br /><br /><br /> EvaRegs.GPTCONA.bit.TCOMPOE = 1;<br /> <br /> EvaRegs.GPTCONA.bit.T1PIN = 1;<br /> <br /> EvaRegs.GPTCONA.bit.T2PIN = 2;<br /><br /> <br /> EvaRegs.CMPR1 = 0x0C00;<br /> EvaRegs.CMPR2 = 0x3C00;<br /> EvaRegs.CMPR3 = 0xFC00;<br /> <br /> <br /> EvaRegs.ACTR.all = 0x0666;<br /> EvaRegs.DBTCONA.all = 0x0000; // Disable deadband<br /> EvaRegs.COMCONA.all = 0xA600;<br /><br /> <br />} <br />其实,代码是移植的别人的程序,基本上没做什么改变。不知为什么在引脚用示波器看,没看到矩形波,只是高电平<br /><br />困扰了好几天了,郁闷~ |
|