Но в Bascom значение менялось на лету.
А тут - нет((.
После задержки в регистр пишется новое значение (в этот момент в порту 0.2 значение 1 для информативности в эмляторе,но Duty Cycle не возрастает:(
Что тут не хватает?
- Код: Выделить всё • Развернуть
#include "lpc21xx.h"
int main(void)
{
/*Assuming that PLL0 has been setup with CCLK = 60Mhz and PCLK also = 60Mhz.*/
/*This is a per the Setup & Init Sequence given in the tutorial*/
int a;
PINSEL0 = (1<<1); // Select PWM1 output for Pin0.0
//T1EMR = (1<<11);
PWMPR = 0; // 1 micro-second resolution
PWMMR0 = 600; // freq (T-period 15 000 000\600)
PWMMR1 = 50; // duty cycle
PWMMCR = (1<<1); // Reset PWMTC on PWMMR0 match
PWMPCR = (1<<9); // enable PWM output
PWMLER = (0<<1); // update MR0 and MR1
PWMTCR = (1<<0)|(1<<3); //ENABLE COUNTER
for (a=1;a<100000;a++)
{}
//PINSEL2 = (0<<2)|(0<<3);
IO0DIR = (1<<2);
IO0SET = (1<<2); // test port on
}