Example #1
0
static void InitTimer(void) {
  TPM_PDD_WriteStatusControlReg(TPM0_DEVICE, 0); /* init timer status and control register */
  TPM_PDD_InitializeCounter(TPM0_DEVICE); /* reset timer counter */
  TPM_PDD_WriteModuloReg(TPM0_DEVICE, TPM_OVL_TICKS); /* set overflow to 1.25 us */
  TPM_PDD_WriteChannelValueReg(TPM0_DEVICE, 0, TPM_CH0_TICKS); /* channel 0 match at 0.4 us */
  TPM_PDD_WriteChannelValueReg(TPM0_DEVICE, 1, TPM_CH1_TICKS); /* channel 1 match at 0.8 us */
}
Example #2
0
LDD_TError TP1_setTimerValue(LDD_TDeviceData *TU1Handl, uint32_t Ticks)
{
	  (void)TU1Handl;                 /* Parameter is not used, suppress unused argument warning */
	  /* Parameter test - this test can be disabled by setting the "Ignore range checking"
	     property to the "yes" value in the "Configuration inspector" */
	  if ((Ticks > 65535U) || (Ticks == 0U)) { /* Is the given value out of range? */
	    return ERR_PARAM_TICKS;            /* If yes then error */
	  }
	  TPM_PDD_WriteModuloReg(TPM0_BASE_PTR, (uint16_t)(--Ticks));
	  return ERR_OK;                       /* OK */
	//TPM1_MOD = (uint32_t)(TPM_MOD_MOD(brg&0xFFFF));
}
Example #3
0
static void TMR_SetTimerValue(uint32_t val) {
  TPM_PDD_WriteModuloReg(TPM0_BASE_PTR, val); /* set period of TPM0 */
  TPM_PDD_WriteChannelValueReg(TPM0_BASE_PTR, 1, val/2); /* channel 1: PWM low 50% */
}
Example #4
0
static void InitTimer(void) {
  TPM_PDD_WriteModuloReg(TPM0_BASE_PTR, TICKS_PERIOD); /* set period */
  TPM_PDD_WriteChannelValueReg(TPM0_DEVICE, 1, 0); /* PWM low, zero duty */
  TPM_PDD_EnableChannelDma(TPM0_DEVICE, 1); /* enable DMA for channel */
}