سلام.
دوستان من می خوام با واحد pwm یک سیکل تولید کنم که t1=700ns و t2=600ns هستش ولی مشکلی هستش اینکه برای تولید مداوم مشکلی نداره ولی برای یک سیکل مشکل دارم .



اینم تنظیماتم:
دوستان من می خوام با واحد pwm یک سیکل تولید کنم که t1=700ns و t2=600ns هستش ولی مشکلی هستش اینکه برای تولید مداوم مشکلی نداره ولی برای یک سیکل مشکل دارم .




اینم تنظیماتم:
کد:
PWMCfgDat.PrescaleOption = PWM_TIMER_PRESCALE_TICKVAL;
PWMCfgDat.PrescaleValue = 1;
PWM_Init(PWM_0, PWM_MODE_TIMER, &PWMCfgDat);
PWMMatchCfgDat.IntOnMatch = DISABLE;
PWMMatchCfgDat.MatchChannel = 0;
PWMMatchCfgDat.ResetOnMatch =ENABLE;
PWMMatchCfgDat.StopOnMatch =DISABLE;
PWM_ConfigMatch(PWM_0, &PWMMatchCfgDat);
PWMMatchCfgDat.IntOnMatch = DISABLE;
PWMMatchCfgDat.MatchChannel = 2;
PWMMatchCfgDat.ResetOnMatch = DISABLE;
PWMMatchCfgDat.StopOnMatch = DISABLE;
PWM_ConfigMatch(PWM_0, &PWMMatchCfgDat);
// LPC_TIM0->TC=156;
// -------------------------------
/* Set match value for PWM match channel 0 = 256, update immediately */
PWM_MatchUpdate(PWM_0, 0, 156 , PWM_MATCH_UPDATE_NOW);
PWM_MatchUpdate(PWM_0, 2, 84, PWM_MATCH_UPDATE_NOW);
PWM_ChannelCmd(PWM_0, 2, ENABLE);
PWM_ChannelConfig(PWM_0,2,PWM_CHANNEL_SINGLE_EDGE);
PWM_ResetCounter(PWM_0);
PWM_CounterCmd(PWM_0, ENABLE);
PWM_Cmd(PWM_0, ENABLE);

