21 #ifndef STM32L4xx_HAL_TIM_H 22 #define STM32L4xx_HAL_TIM_H 319 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 320 typedef struct __TIM_HandleTypeDef
333 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 334 void (* Base_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
335 void (* Base_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
336 void (* IC_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
337 void (* IC_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
338 void (* OC_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
339 void (* OC_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
340 void (* PWM_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
341 void (* PWM_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
342 void (* OnePulse_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
343 void (* OnePulse_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
344 void (* Encoder_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
345 void (* Encoder_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
346 void (* HallSensor_MspInitCallback)(
struct __TIM_HandleTypeDef *htim);
347 void (* HallSensor_MspDeInitCallback)(
struct __TIM_HandleTypeDef *htim);
348 void (* PeriodElapsedCallback)(
struct __TIM_HandleTypeDef *htim);
349 void (* PeriodElapsedHalfCpltCallback)(
struct __TIM_HandleTypeDef *htim);
350 void (* TriggerCallback)(
struct __TIM_HandleTypeDef *htim);
351 void (* TriggerHalfCpltCallback)(
struct __TIM_HandleTypeDef *htim);
352 void (* IC_CaptureCallback)(
struct __TIM_HandleTypeDef *htim);
353 void (* IC_CaptureHalfCpltCallback)(
struct __TIM_HandleTypeDef *htim);
354 void (* OC_DelayElapsedCallback)(
struct __TIM_HandleTypeDef *htim);
355 void (* PWM_PulseFinishedCallback)(
struct __TIM_HandleTypeDef *htim);
356 void (* PWM_PulseFinishedHalfCpltCallback)(
struct __TIM_HandleTypeDef *htim);
357 void (* ErrorCallback)(
struct __TIM_HandleTypeDef *htim);
358 void (* CommutationCallback)(
struct __TIM_HandleTypeDef *htim);
359 void (* CommutationHalfCpltCallback)(
struct __TIM_HandleTypeDef *htim);
360 void (* BreakCallback)(
struct __TIM_HandleTypeDef *htim);
361 void (* Break2Callback)(
struct __TIM_HandleTypeDef *htim);
365 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 422 #define TIM_CLEARINPUTSOURCE_NONE 0x00000000U 423 #define TIM_CLEARINPUTSOURCE_ETR 0x00000001U 424 #define TIM_CLEARINPUTSOURCE_OCREFCLR 0x00000002U 432 #define TIM_DMABASE_CR1 0x00000000U 433 #define TIM_DMABASE_CR2 0x00000001U 434 #define TIM_DMABASE_SMCR 0x00000002U 435 #define TIM_DMABASE_DIER 0x00000003U 436 #define TIM_DMABASE_SR 0x00000004U 437 #define TIM_DMABASE_EGR 0x00000005U 438 #define TIM_DMABASE_CCMR1 0x00000006U 439 #define TIM_DMABASE_CCMR2 0x00000007U 440 #define TIM_DMABASE_CCER 0x00000008U 441 #define TIM_DMABASE_CNT 0x00000009U 442 #define TIM_DMABASE_PSC 0x0000000AU 443 #define TIM_DMABASE_ARR 0x0000000BU 444 #define TIM_DMABASE_RCR 0x0000000CU 445 #define TIM_DMABASE_CCR1 0x0000000DU 446 #define TIM_DMABASE_CCR2 0x0000000EU 447 #define TIM_DMABASE_CCR3 0x0000000FU 448 #define TIM_DMABASE_CCR4 0x00000010U 449 #define TIM_DMABASE_BDTR 0x00000011U 450 #define TIM_DMABASE_DCR 0x00000012U 451 #define TIM_DMABASE_DMAR 0x00000013U 452 #define TIM_DMABASE_OR1 0x00000014U 453 #define TIM_DMABASE_CCMR3 0x00000015U 454 #define TIM_DMABASE_CCR5 0x00000016U 455 #define TIM_DMABASE_CCR6 0x00000017U 456 #define TIM_DMABASE_OR2 0x00000018U 457 #define TIM_DMABASE_OR3 0x00000019U 465 #define TIM_EVENTSOURCE_UPDATE TIM_EGR_UG 466 #define TIM_EVENTSOURCE_CC1 TIM_EGR_CC1G 467 #define TIM_EVENTSOURCE_CC2 TIM_EGR_CC2G 468 #define TIM_EVENTSOURCE_CC3 TIM_EGR_CC3G 469 #define TIM_EVENTSOURCE_CC4 TIM_EGR_CC4G 470 #define TIM_EVENTSOURCE_COM TIM_EGR_COMG 471 #define TIM_EVENTSOURCE_TRIGGER TIM_EGR_TG 472 #define TIM_EVENTSOURCE_BREAK TIM_EGR_BG 473 #define TIM_EVENTSOURCE_BREAK2 TIM_EGR_B2G 481 #define TIM_INPUTCHANNELPOLARITY_RISING 0x00000000U 482 #define TIM_INPUTCHANNELPOLARITY_FALLING TIM_CCER_CC1P 483 #define TIM_INPUTCHANNELPOLARITY_BOTHEDGE (TIM_CCER_CC1P | TIM_CCER_CC1NP) 491 #define TIM_ETRPOLARITY_INVERTED TIM_SMCR_ETP 492 #define TIM_ETRPOLARITY_NONINVERTED 0x00000000U 500 #define TIM_ETRPRESCALER_DIV1 0x00000000U 501 #define TIM_ETRPRESCALER_DIV2 TIM_SMCR_ETPS_0 502 #define TIM_ETRPRESCALER_DIV4 TIM_SMCR_ETPS_1 503 #define TIM_ETRPRESCALER_DIV8 TIM_SMCR_ETPS 511 #define TIM_COUNTERMODE_UP 0x00000000U 512 #define TIM_COUNTERMODE_DOWN TIM_CR1_DIR 513 #define TIM_COUNTERMODE_CENTERALIGNED1 TIM_CR1_CMS_0 514 #define TIM_COUNTERMODE_CENTERALIGNED2 TIM_CR1_CMS_1 515 #define TIM_COUNTERMODE_CENTERALIGNED3 TIM_CR1_CMS 523 #define TIM_CLOCKDIVISION_DIV1 0x00000000U 524 #define TIM_CLOCKDIVISION_DIV2 TIM_CR1_CKD_0 525 #define TIM_CLOCKDIVISION_DIV4 TIM_CR1_CKD_1 533 #define TIM_OUTPUTSTATE_DISABLE 0x00000000U 534 #define TIM_OUTPUTSTATE_ENABLE TIM_CCER_CC1E 542 #define TIM_AUTORELOAD_PRELOAD_DISABLE 0x00000000U 543 #define TIM_AUTORELOAD_PRELOAD_ENABLE TIM_CR1_ARPE 552 #define TIM_OCFAST_DISABLE 0x00000000U 553 #define TIM_OCFAST_ENABLE TIM_CCMR1_OC1FE 561 #define TIM_OUTPUTNSTATE_DISABLE 0x00000000U 562 #define TIM_OUTPUTNSTATE_ENABLE TIM_CCER_CC1NE 570 #define TIM_OCPOLARITY_HIGH 0x00000000U 571 #define TIM_OCPOLARITY_LOW TIM_CCER_CC1P 579 #define TIM_OCNPOLARITY_HIGH 0x00000000U 580 #define TIM_OCNPOLARITY_LOW TIM_CCER_CC1NP 588 #define TIM_OCIDLESTATE_SET TIM_CR2_OIS1 589 #define TIM_OCIDLESTATE_RESET 0x00000000U 597 #define TIM_OCNIDLESTATE_SET TIM_CR2_OIS1N 598 #define TIM_OCNIDLESTATE_RESET 0x00000000U 606 #define TIM_ICPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING 607 #define TIM_ICPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING 608 #define TIM_ICPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE 616 #define TIM_ICSELECTION_DIRECTTI TIM_CCMR1_CC1S_0 618 #define TIM_ICSELECTION_INDIRECTTI TIM_CCMR1_CC1S_1 620 #define TIM_ICSELECTION_TRC TIM_CCMR1_CC1S 628 #define TIM_ICPSC_DIV1 0x00000000U 629 #define TIM_ICPSC_DIV2 TIM_CCMR1_IC1PSC_0 630 #define TIM_ICPSC_DIV4 TIM_CCMR1_IC1PSC_1 631 #define TIM_ICPSC_DIV8 TIM_CCMR1_IC1PSC 639 #define TIM_OPMODE_SINGLE TIM_CR1_OPM 640 #define TIM_OPMODE_REPETITIVE 0x00000000U 648 #define TIM_ENCODERMODE_TI1 TIM_SMCR_SMS_0 649 #define TIM_ENCODERMODE_TI2 TIM_SMCR_SMS_1 650 #define TIM_ENCODERMODE_TI12 (TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) 658 #define TIM_IT_UPDATE TIM_DIER_UIE 659 #define TIM_IT_CC1 TIM_DIER_CC1IE 660 #define TIM_IT_CC2 TIM_DIER_CC2IE 661 #define TIM_IT_CC3 TIM_DIER_CC3IE 662 #define TIM_IT_CC4 TIM_DIER_CC4IE 663 #define TIM_IT_COM TIM_DIER_COMIE 664 #define TIM_IT_TRIGGER TIM_DIER_TIE 665 #define TIM_IT_BREAK TIM_DIER_BIE 673 #define TIM_COMMUTATION_TRGI TIM_CR2_CCUS 674 #define TIM_COMMUTATION_SOFTWARE 0x00000000U 682 #define TIM_DMA_UPDATE TIM_DIER_UDE 683 #define TIM_DMA_CC1 TIM_DIER_CC1DE 684 #define TIM_DMA_CC2 TIM_DIER_CC2DE 685 #define TIM_DMA_CC3 TIM_DIER_CC3DE 686 #define TIM_DMA_CC4 TIM_DIER_CC4DE 687 #define TIM_DMA_COM TIM_DIER_COMDE 688 #define TIM_DMA_TRIGGER TIM_DIER_TDE 696 #define TIM_FLAG_UPDATE TIM_SR_UIF 697 #define TIM_FLAG_CC1 TIM_SR_CC1IF 698 #define TIM_FLAG_CC2 TIM_SR_CC2IF 699 #define TIM_FLAG_CC3 TIM_SR_CC3IF 700 #define TIM_FLAG_CC4 TIM_SR_CC4IF 701 #define TIM_FLAG_CC5 TIM_SR_CC5IF 702 #define TIM_FLAG_CC6 TIM_SR_CC6IF 703 #define TIM_FLAG_COM TIM_SR_COMIF 704 #define TIM_FLAG_TRIGGER TIM_SR_TIF 705 #define TIM_FLAG_BREAK TIM_SR_BIF 706 #define TIM_FLAG_BREAK2 TIM_SR_B2IF 707 #define TIM_FLAG_SYSTEM_BREAK TIM_SR_SBIF 708 #define TIM_FLAG_CC1OF TIM_SR_CC1OF 709 #define TIM_FLAG_CC2OF TIM_SR_CC2OF 710 #define TIM_FLAG_CC3OF TIM_SR_CC3OF 711 #define TIM_FLAG_CC4OF TIM_SR_CC4OF 719 #define TIM_CHANNEL_1 0x00000000U 720 #define TIM_CHANNEL_2 0x00000004U 721 #define TIM_CHANNEL_3 0x00000008U 722 #define TIM_CHANNEL_4 0x0000000CU 723 #define TIM_CHANNEL_5 0x00000010U 724 #define TIM_CHANNEL_6 0x00000014U 725 #define TIM_CHANNEL_ALL 0x0000003CU 733 #define TIM_CLOCKSOURCE_ETRMODE2 TIM_SMCR_ETPS_1 734 #define TIM_CLOCKSOURCE_INTERNAL TIM_SMCR_ETPS_0 735 #define TIM_CLOCKSOURCE_ITR0 TIM_TS_ITR0 736 #define TIM_CLOCKSOURCE_ITR1 TIM_TS_ITR1 737 #define TIM_CLOCKSOURCE_ITR2 TIM_TS_ITR2 738 #define TIM_CLOCKSOURCE_ITR3 TIM_TS_ITR3 739 #define TIM_CLOCKSOURCE_TI1ED TIM_TS_TI1F_ED 740 #define TIM_CLOCKSOURCE_TI1 TIM_TS_TI1FP1 741 #define TIM_CLOCKSOURCE_TI2 TIM_TS_TI2FP2 742 #define TIM_CLOCKSOURCE_ETRMODE1 TIM_TS_ETRF 750 #define TIM_CLOCKPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED 751 #define TIM_CLOCKPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED 752 #define TIM_CLOCKPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING 753 #define TIM_CLOCKPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING 754 #define TIM_CLOCKPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE 762 #define TIM_CLOCKPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 763 #define TIM_CLOCKPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 764 #define TIM_CLOCKPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 765 #define TIM_CLOCKPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 773 #define TIM_CLEARINPUTPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED 774 #define TIM_CLEARINPUTPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED 782 #define TIM_CLEARINPUTPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 783 #define TIM_CLEARINPUTPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 784 #define TIM_CLEARINPUTPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 785 #define TIM_CLEARINPUTPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 793 #define TIM_OSSR_ENABLE TIM_BDTR_OSSR 794 #define TIM_OSSR_DISABLE 0x00000000U 802 #define TIM_OSSI_ENABLE TIM_BDTR_OSSI 803 #define TIM_OSSI_DISABLE 0x00000000U 810 #define TIM_LOCKLEVEL_OFF 0x00000000U 811 #define TIM_LOCKLEVEL_1 TIM_BDTR_LOCK_0 812 #define TIM_LOCKLEVEL_2 TIM_BDTR_LOCK_1 813 #define TIM_LOCKLEVEL_3 TIM_BDTR_LOCK 821 #define TIM_BREAK_ENABLE TIM_BDTR_BKE 822 #define TIM_BREAK_DISABLE 0x00000000U 830 #define TIM_BREAKPOLARITY_LOW 0x00000000U 831 #define TIM_BREAKPOLARITY_HIGH TIM_BDTR_BKP 839 #define TIM_BREAK2_DISABLE 0x00000000U 840 #define TIM_BREAK2_ENABLE TIM_BDTR_BK2E 848 #define TIM_BREAK2POLARITY_LOW 0x00000000U 849 #define TIM_BREAK2POLARITY_HIGH TIM_BDTR_BK2P 857 #define TIM_AUTOMATICOUTPUT_DISABLE 0x00000000U 858 #define TIM_AUTOMATICOUTPUT_ENABLE TIM_BDTR_AOE 867 #define TIM_GROUPCH5_NONE 0x00000000U 868 #define TIM_GROUPCH5_OC1REFC TIM_CCR5_GC5C1 869 #define TIM_GROUPCH5_OC2REFC TIM_CCR5_GC5C2 870 #define TIM_GROUPCH5_OC3REFC TIM_CCR5_GC5C3 878 #define TIM_TRGO_RESET 0x00000000U 879 #define TIM_TRGO_ENABLE TIM_CR2_MMS_0 880 #define TIM_TRGO_UPDATE TIM_CR2_MMS_1 881 #define TIM_TRGO_OC1 (TIM_CR2_MMS_1 | TIM_CR2_MMS_0) 882 #define TIM_TRGO_OC1REF TIM_CR2_MMS_2 883 #define TIM_TRGO_OC2REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_0) 884 #define TIM_TRGO_OC3REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1) 885 #define TIM_TRGO_OC4REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1 | TIM_CR2_MMS_0) 893 #define TIM_TRGO2_RESET 0x00000000U 894 #define TIM_TRGO2_ENABLE TIM_CR2_MMS2_0 895 #define TIM_TRGO2_UPDATE TIM_CR2_MMS2_1 896 #define TIM_TRGO2_OC1 (TIM_CR2_MMS2_1 | TIM_CR2_MMS2_0) 897 #define TIM_TRGO2_OC1REF TIM_CR2_MMS2_2 898 #define TIM_TRGO2_OC2REF (TIM_CR2_MMS2_2 | TIM_CR2_MMS2_0) 899 #define TIM_TRGO2_OC3REF (TIM_CR2_MMS2_2 | TIM_CR2_MMS2_1) 900 #define TIM_TRGO2_OC4REF (TIM_CR2_MMS2_2 | TIM_CR2_MMS2_1 | TIM_CR2_MMS2_0) 901 #define TIM_TRGO2_OC5REF TIM_CR2_MMS2_3 902 #define TIM_TRGO2_OC6REF (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_0) 903 #define TIM_TRGO2_OC4REF_RISINGFALLING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_1) 904 #define TIM_TRGO2_OC6REF_RISINGFALLING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_1 | TIM_CR2_MMS2_0) 905 #define TIM_TRGO2_OC4REF_RISING_OC6REF_RISING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_2) 906 #define TIM_TRGO2_OC4REF_RISING_OC6REF_FALLING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_2 | TIM_CR2_MMS2_0) 907 #define TIM_TRGO2_OC5REF_RISING_OC6REF_RISING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_2 |TIM_CR2_MMS2_1) 908 #define TIM_TRGO2_OC5REF_RISING_OC6REF_FALLING (TIM_CR2_MMS2_3 | TIM_CR2_MMS2_2 | TIM_CR2_MMS2_1 | TIM_CR2_MMS2_0) 916 #define TIM_MASTERSLAVEMODE_ENABLE TIM_SMCR_MSM 917 #define TIM_MASTERSLAVEMODE_DISABLE 0x00000000U 925 #define TIM_SLAVEMODE_DISABLE 0x00000000U 926 #define TIM_SLAVEMODE_RESET TIM_SMCR_SMS_2 927 #define TIM_SLAVEMODE_GATED (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_0) 928 #define TIM_SLAVEMODE_TRIGGER (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1) 929 #define TIM_SLAVEMODE_EXTERNAL1 (TIM_SMCR_SMS_2 | TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) 930 #define TIM_SLAVEMODE_COMBINED_RESETTRIGGER TIM_SMCR_SMS_3 938 #define TIM_OCMODE_TIMING 0x00000000U 939 #define TIM_OCMODE_ACTIVE TIM_CCMR1_OC1M_0 940 #define TIM_OCMODE_INACTIVE TIM_CCMR1_OC1M_1 941 #define TIM_OCMODE_TOGGLE (TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) 942 #define TIM_OCMODE_PWM1 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1) 943 #define TIM_OCMODE_PWM2 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) 944 #define TIM_OCMODE_FORCED_ACTIVE (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_0) 945 #define TIM_OCMODE_FORCED_INACTIVE TIM_CCMR1_OC1M_2 946 #define TIM_OCMODE_RETRIGERRABLE_OPM1 TIM_CCMR1_OC1M_3 947 #define TIM_OCMODE_RETRIGERRABLE_OPM2 (TIM_CCMR1_OC1M_3 | TIM_CCMR1_OC1M_0) 948 #define TIM_OCMODE_COMBINED_PWM1 (TIM_CCMR1_OC1M_3 | TIM_CCMR1_OC1M_2) 949 #define TIM_OCMODE_COMBINED_PWM2 (TIM_CCMR1_OC1M_3 | TIM_CCMR1_OC1M_0 | TIM_CCMR1_OC1M_2) 950 #define TIM_OCMODE_ASSYMETRIC_PWM1 (TIM_CCMR1_OC1M_3 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_2) 951 #define TIM_OCMODE_ASSYMETRIC_PWM2 TIM_CCMR1_OC1M 959 #define TIM_TS_ITR0 0x00000000U 960 #define TIM_TS_ITR1 TIM_SMCR_TS_0 961 #define TIM_TS_ITR2 TIM_SMCR_TS_1 962 #define TIM_TS_ITR3 (TIM_SMCR_TS_0 | TIM_SMCR_TS_1) 963 #define TIM_TS_TI1F_ED TIM_SMCR_TS_2 964 #define TIM_TS_TI1FP1 (TIM_SMCR_TS_0 | TIM_SMCR_TS_2) 965 #define TIM_TS_TI2FP2 (TIM_SMCR_TS_1 | TIM_SMCR_TS_2) 966 #define TIM_TS_ETRF (TIM_SMCR_TS_0 | TIM_SMCR_TS_1 | TIM_SMCR_TS_2) 967 #define TIM_TS_NONE 0x0000FFFFU 975 #define TIM_TRIGGERPOLARITY_INVERTED TIM_ETRPOLARITY_INVERTED 976 #define TIM_TRIGGERPOLARITY_NONINVERTED TIM_ETRPOLARITY_NONINVERTED 977 #define TIM_TRIGGERPOLARITY_RISING TIM_INPUTCHANNELPOLARITY_RISING 978 #define TIM_TRIGGERPOLARITY_FALLING TIM_INPUTCHANNELPOLARITY_FALLING 979 #define TIM_TRIGGERPOLARITY_BOTHEDGE TIM_INPUTCHANNELPOLARITY_BOTHEDGE 987 #define TIM_TRIGGERPRESCALER_DIV1 TIM_ETRPRESCALER_DIV1 988 #define TIM_TRIGGERPRESCALER_DIV2 TIM_ETRPRESCALER_DIV2 989 #define TIM_TRIGGERPRESCALER_DIV4 TIM_ETRPRESCALER_DIV4 990 #define TIM_TRIGGERPRESCALER_DIV8 TIM_ETRPRESCALER_DIV8 998 #define TIM_TI1SELECTION_CH1 0x00000000U 999 #define TIM_TI1SELECTION_XORCOMBINATION TIM_CR2_TI1S 1007 #define TIM_DMABURSTLENGTH_1TRANSFER 0x00000000U 1008 #define TIM_DMABURSTLENGTH_2TRANSFERS 0x00000100U 1009 #define TIM_DMABURSTLENGTH_3TRANSFERS 0x00000200U 1010 #define TIM_DMABURSTLENGTH_4TRANSFERS 0x00000300U 1011 #define TIM_DMABURSTLENGTH_5TRANSFERS 0x00000400U 1012 #define TIM_DMABURSTLENGTH_6TRANSFERS 0x00000500U 1013 #define TIM_DMABURSTLENGTH_7TRANSFERS 0x00000600U 1014 #define TIM_DMABURSTLENGTH_8TRANSFERS 0x00000700U 1015 #define TIM_DMABURSTLENGTH_9TRANSFERS 0x00000800U 1016 #define TIM_DMABURSTLENGTH_10TRANSFERS 0x00000900U 1017 #define TIM_DMABURSTLENGTH_11TRANSFERS 0x00000A00U 1018 #define TIM_DMABURSTLENGTH_12TRANSFERS 0x00000B00U 1019 #define TIM_DMABURSTLENGTH_13TRANSFERS 0x00000C00U 1020 #define TIM_DMABURSTLENGTH_14TRANSFERS 0x00000D00U 1021 #define TIM_DMABURSTLENGTH_15TRANSFERS 0x00000E00U 1022 #define TIM_DMABURSTLENGTH_16TRANSFERS 0x00000F00U 1023 #define TIM_DMABURSTLENGTH_17TRANSFERS 0x00001000U 1024 #define TIM_DMABURSTLENGTH_18TRANSFERS 0x00001100U 1032 #define TIM_DMA_ID_UPDATE ((uint16_t) 0x0000) 1033 #define TIM_DMA_ID_CC1 ((uint16_t) 0x0001) 1034 #define TIM_DMA_ID_CC2 ((uint16_t) 0x0002) 1035 #define TIM_DMA_ID_CC3 ((uint16_t) 0x0003) 1036 #define TIM_DMA_ID_CC4 ((uint16_t) 0x0004) 1037 #define TIM_DMA_ID_COMMUTATION ((uint16_t) 0x0005) 1038 #define TIM_DMA_ID_TRIGGER ((uint16_t) 0x0006) 1046 #define TIM_CCx_ENABLE 0x00000001U 1047 #define TIM_CCx_DISABLE 0x00000000U 1048 #define TIM_CCxN_ENABLE 0x00000004U 1049 #define TIM_CCxN_DISABLE 0x00000000U 1057 #define TIM_BREAK_SYSTEM_ECC SYSCFG_CFGR2_ECCL 1058 #define TIM_BREAK_SYSTEM_PVD SYSCFG_CFGR2_PVDL 1059 #define TIM_BREAK_SYSTEM_SRAM2_PARITY_ERROR SYSCFG_CFGR2_SPL 1060 #define TIM_BREAK_SYSTEM_LOCKUP SYSCFG_CFGR2_CLL 1079 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 1080 #define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) do { \ 1081 (__HANDLE__)->State = HAL_TIM_STATE_RESET; \ 1082 (__HANDLE__)->Base_MspInitCallback = NULL; \ 1083 (__HANDLE__)->Base_MspDeInitCallback = NULL; \ 1084 (__HANDLE__)->IC_MspInitCallback = NULL; \ 1085 (__HANDLE__)->IC_MspDeInitCallback = NULL; \ 1086 (__HANDLE__)->OC_MspInitCallback = NULL; \ 1087 (__HANDLE__)->OC_MspDeInitCallback = NULL; \ 1088 (__HANDLE__)->PWM_MspInitCallback = NULL; \ 1089 (__HANDLE__)->PWM_MspDeInitCallback = NULL; \ 1090 (__HANDLE__)->OnePulse_MspInitCallback = NULL; \ 1091 (__HANDLE__)->OnePulse_MspDeInitCallback = NULL; \ 1092 (__HANDLE__)->Encoder_MspInitCallback = NULL; \ 1093 (__HANDLE__)->Encoder_MspDeInitCallback = NULL; \ 1094 (__HANDLE__)->HallSensor_MspInitCallback = NULL; \ 1095 (__HANDLE__)->HallSensor_MspDeInitCallback = NULL; \ 1098 #define __HAL_TIM_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_TIM_STATE_RESET) 1106 #define __HAL_TIM_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|=(TIM_CR1_CEN)) 1113 #define __HAL_TIM_MOE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->BDTR|=(TIM_BDTR_MOE)) 1120 #define __HAL_TIM_DISABLE(__HANDLE__) \ 1122 if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ 1124 if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ 1126 (__HANDLE__)->Instance->CR1 &= ~(TIM_CR1_CEN); \ 1137 #define __HAL_TIM_MOE_DISABLE(__HANDLE__) \ 1139 if (((__HANDLE__)->Instance->CCER & TIM_CCER_CCxE_MASK) == 0UL) \ 1141 if(((__HANDLE__)->Instance->CCER & TIM_CCER_CCxNE_MASK) == 0UL) \ 1143 (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE); \ 1154 #define __HAL_TIM_MOE_DISABLE_UNCONDITIONALLY(__HANDLE__) (__HANDLE__)->Instance->BDTR &= ~(TIM_BDTR_MOE) 1170 #define __HAL_TIM_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER |= (__INTERRUPT__)) 1186 #define __HAL_TIM_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DIER &= ~(__INTERRUPT__)) 1201 #define __HAL_TIM_ENABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER |= (__DMA__)) 1216 #define __HAL_TIM_DISABLE_DMA(__HANDLE__, __DMA__) ((__HANDLE__)->Instance->DIER &= ~(__DMA__)) 1240 #define __HAL_TIM_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR &(__FLAG__)) == (__FLAG__)) 1264 #define __HAL_TIM_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->SR = ~(__FLAG__)) 1281 #define __HAL_TIM_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__) ((((__HANDLE__)->Instance->DIER & (__INTERRUPT__)) \ 1282 == (__INTERRUPT__)) ? SET : RESET) 1298 #define __HAL_TIM_CLEAR_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->SR = ~(__INTERRUPT__)) 1307 #define __HAL_TIM_IS_TIM_COUNTING_DOWN(__HANDLE__) (((__HANDLE__)->Instance->CR1 &(TIM_CR1_DIR)) == (TIM_CR1_DIR)) 1315 #define __HAL_TIM_SET_PRESCALER(__HANDLE__, __PRESC__) ((__HANDLE__)->Instance->PSC = (__PRESC__)) 1323 #define __HAL_TIM_SET_COUNTER(__HANDLE__, __COUNTER__) ((__HANDLE__)->Instance->CNT = (__COUNTER__)) 1330 #define __HAL_TIM_GET_COUNTER(__HANDLE__) ((__HANDLE__)->Instance->CNT) 1338 #define __HAL_TIM_SET_AUTORELOAD(__HANDLE__, __AUTORELOAD__) \ 1340 (__HANDLE__)->Instance->ARR = (__AUTORELOAD__); \ 1341 (__HANDLE__)->Init.Period = (__AUTORELOAD__); \ 1349 #define __HAL_TIM_GET_AUTORELOAD(__HANDLE__) ((__HANDLE__)->Instance->ARR) 1361 #define __HAL_TIM_SET_CLOCKDIVISION(__HANDLE__, __CKD__) \ 1363 (__HANDLE__)->Instance->CR1 &= (~TIM_CR1_CKD); \ 1364 (__HANDLE__)->Instance->CR1 |= (__CKD__); \ 1365 (__HANDLE__)->Init.ClockDivision = (__CKD__); \ 1376 #define __HAL_TIM_GET_CLOCKDIVISION(__HANDLE__) ((__HANDLE__)->Instance->CR1 & TIM_CR1_CKD) 1395 #define __HAL_TIM_SET_ICPRESCALER(__HANDLE__, __CHANNEL__, __ICPSC__) \ 1397 TIM_RESET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__)); \ 1398 TIM_SET_ICPRESCALERVALUE((__HANDLE__), (__CHANNEL__), (__ICPSC__)); \ 1416 #define __HAL_TIM_GET_ICPRESCALER(__HANDLE__, __CHANNEL__) \ 1417 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC1PSC) :\ 1418 ((__CHANNEL__) == TIM_CHANNEL_2) ? (((__HANDLE__)->Instance->CCMR1 & TIM_CCMR1_IC2PSC) >> 8U) :\ 1419 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC3PSC) :\ 1420 (((__HANDLE__)->Instance->CCMR2 & TIM_CCMR2_IC4PSC)) >> 8U) 1436 #define __HAL_TIM_SET_COMPARE(__HANDLE__, __CHANNEL__, __COMPARE__) \ 1437 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1 = (__COMPARE__)) :\ 1438 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2 = (__COMPARE__)) :\ 1439 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3 = (__COMPARE__)) :\ 1440 ((__CHANNEL__) == TIM_CHANNEL_4) ? ((__HANDLE__)->Instance->CCR4 = (__COMPARE__)) :\ 1441 ((__CHANNEL__) == TIM_CHANNEL_5) ? ((__HANDLE__)->Instance->CCR5 = (__COMPARE__)) :\ 1442 ((__HANDLE__)->Instance->CCR6 = (__COMPARE__))) 1457 #define __HAL_TIM_GET_COMPARE(__HANDLE__, __CHANNEL__) \ 1458 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCR1) :\ 1459 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCR2) :\ 1460 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCR3) :\ 1461 ((__CHANNEL__) == TIM_CHANNEL_4) ? ((__HANDLE__)->Instance->CCR4) :\ 1462 ((__CHANNEL__) == TIM_CHANNEL_5) ? ((__HANDLE__)->Instance->CCR5) :\ 1463 ((__HANDLE__)->Instance->CCR6)) 1478 #define __HAL_TIM_ENABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ 1479 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC1PE) :\ 1480 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= TIM_CCMR1_OC2PE) :\ 1481 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC3PE) :\ 1482 ((__CHANNEL__) == TIM_CHANNEL_4) ? ((__HANDLE__)->Instance->CCMR2 |= TIM_CCMR2_OC4PE) :\ 1483 ((__CHANNEL__) == TIM_CHANNEL_5) ? ((__HANDLE__)->Instance->CCMR3 |= TIM_CCMR3_OC5PE) :\ 1484 ((__HANDLE__)->Instance->CCMR3 |= TIM_CCMR3_OC6PE)) 1499 #define __HAL_TIM_DISABLE_OCxPRELOAD(__HANDLE__, __CHANNEL__) \ 1500 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= (uint16_t)~TIM_CCMR1_OC1PE) :\ 1501 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= (uint16_t)~TIM_CCMR1_OC2PE) :\ 1502 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= (uint16_t)~TIM_CCMR2_OC3PE) :\ 1503 ((__CHANNEL__) == TIM_CHANNEL_4) ? ((__HANDLE__)->Instance->CCMR2 &= (uint16_t)~TIM_CCMR2_OC4PE) :\ 1504 ((__CHANNEL__) == TIM_CHANNEL_5) ? ((__HANDLE__)->Instance->CCMR3 &= (uint16_t)~TIM_CCMR3_OC5PE) :\ 1505 ((__HANDLE__)->Instance->CCMR3 &= (uint16_t)~TIM_CCMR3_OC6PE)) 1515 #define __HAL_TIM_URS_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1|= TIM_CR1_URS) 1528 #define __HAL_TIM_URS_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR1&=~TIM_CR1_URS) 1545 #define __HAL_TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ 1547 TIM_RESET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__)); \ 1548 TIM_SET_CAPTUREPOLARITY((__HANDLE__), (__CHANNEL__), (__POLARITY__)); \ 1562 #define TIM_CCER_CCxE_MASK ((uint32_t)(TIM_CCER_CC1E | TIM_CCER_CC2E | TIM_CCER_CC3E | TIM_CCER_CC4E)) 1563 #define TIM_CCER_CCxNE_MASK ((uint32_t)(TIM_CCER_CC1NE | TIM_CCER_CC2NE | TIM_CCER_CC3NE)) 1573 #define IS_TIM_CLEARINPUT_SOURCE(__MODE__) (((__MODE__) == TIM_CLEARINPUTSOURCE_ETR) || \ 1574 ((__MODE__) == TIM_CLEARINPUTSOURCE_OCREFCLR) || \ 1575 ((__MODE__) == TIM_CLEARINPUTSOURCE_NONE)) 1577 #define IS_TIM_DMA_BASE(__BASE__) (((__BASE__) == TIM_DMABASE_CR1) || \ 1578 ((__BASE__) == TIM_DMABASE_CR2) || \ 1579 ((__BASE__) == TIM_DMABASE_SMCR) || \ 1580 ((__BASE__) == TIM_DMABASE_DIER) || \ 1581 ((__BASE__) == TIM_DMABASE_SR) || \ 1582 ((__BASE__) == TIM_DMABASE_EGR) || \ 1583 ((__BASE__) == TIM_DMABASE_CCMR1) || \ 1584 ((__BASE__) == TIM_DMABASE_CCMR2) || \ 1585 ((__BASE__) == TIM_DMABASE_CCER) || \ 1586 ((__BASE__) == TIM_DMABASE_CNT) || \ 1587 ((__BASE__) == TIM_DMABASE_PSC) || \ 1588 ((__BASE__) == TIM_DMABASE_ARR) || \ 1589 ((__BASE__) == TIM_DMABASE_RCR) || \ 1590 ((__BASE__) == TIM_DMABASE_CCR1) || \ 1591 ((__BASE__) == TIM_DMABASE_CCR2) || \ 1592 ((__BASE__) == TIM_DMABASE_CCR3) || \ 1593 ((__BASE__) == TIM_DMABASE_CCR4) || \ 1594 ((__BASE__) == TIM_DMABASE_BDTR) || \ 1595 ((__BASE__) == TIM_DMABASE_OR1) || \ 1596 ((__BASE__) == TIM_DMABASE_CCMR3) || \ 1597 ((__BASE__) == TIM_DMABASE_CCR5) || \ 1598 ((__BASE__) == TIM_DMABASE_CCR6) || \ 1599 ((__BASE__) == TIM_DMABASE_OR2) || \ 1600 ((__BASE__) == TIM_DMABASE_OR3)) 1602 #define IS_TIM_EVENT_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFFFE00U) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) 1604 #define IS_TIM_COUNTER_MODE(__MODE__) (((__MODE__) == TIM_COUNTERMODE_UP) || \ 1605 ((__MODE__) == TIM_COUNTERMODE_DOWN) || \ 1606 ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED1) || \ 1607 ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED2) || \ 1608 ((__MODE__) == TIM_COUNTERMODE_CENTERALIGNED3)) 1610 #define IS_TIM_CLOCKDIVISION_DIV(__DIV__) (((__DIV__) == TIM_CLOCKDIVISION_DIV1) || \ 1611 ((__DIV__) == TIM_CLOCKDIVISION_DIV2) || \ 1612 ((__DIV__) == TIM_CLOCKDIVISION_DIV4)) 1614 #define IS_TIM_AUTORELOAD_PRELOAD(PRELOAD) (((PRELOAD) == TIM_AUTORELOAD_PRELOAD_DISABLE) || \ 1615 ((PRELOAD) == TIM_AUTORELOAD_PRELOAD_ENABLE)) 1617 #define IS_TIM_FAST_STATE(__STATE__) (((__STATE__) == TIM_OCFAST_DISABLE) || \ 1618 ((__STATE__) == TIM_OCFAST_ENABLE)) 1620 #define IS_TIM_OC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCPOLARITY_HIGH) || \ 1621 ((__POLARITY__) == TIM_OCPOLARITY_LOW)) 1623 #define IS_TIM_OCN_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_OCNPOLARITY_HIGH) || \ 1624 ((__POLARITY__) == TIM_OCNPOLARITY_LOW)) 1626 #define IS_TIM_OCIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCIDLESTATE_SET) || \ 1627 ((__STATE__) == TIM_OCIDLESTATE_RESET)) 1629 #define IS_TIM_OCNIDLE_STATE(__STATE__) (((__STATE__) == TIM_OCNIDLESTATE_SET) || \ 1630 ((__STATE__) == TIM_OCNIDLESTATE_RESET)) 1632 #define IS_TIM_IC_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_ICPOLARITY_RISING) || \ 1633 ((__POLARITY__) == TIM_ICPOLARITY_FALLING) || \ 1634 ((__POLARITY__) == TIM_ICPOLARITY_BOTHEDGE)) 1636 #define IS_TIM_IC_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_ICSELECTION_DIRECTTI) || \ 1637 ((__SELECTION__) == TIM_ICSELECTION_INDIRECTTI) || \ 1638 ((__SELECTION__) == TIM_ICSELECTION_TRC)) 1640 #define IS_TIM_IC_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_ICPSC_DIV1) || \ 1641 ((__PRESCALER__) == TIM_ICPSC_DIV2) || \ 1642 ((__PRESCALER__) == TIM_ICPSC_DIV4) || \ 1643 ((__PRESCALER__) == TIM_ICPSC_DIV8)) 1645 #define IS_TIM_OPM_MODE(__MODE__) (((__MODE__) == TIM_OPMODE_SINGLE) || \ 1646 ((__MODE__) == TIM_OPMODE_REPETITIVE)) 1648 #define IS_TIM_ENCODER_MODE(__MODE__) (((__MODE__) == TIM_ENCODERMODE_TI1) || \ 1649 ((__MODE__) == TIM_ENCODERMODE_TI2) || \ 1650 ((__MODE__) == TIM_ENCODERMODE_TI12)) 1652 #define IS_TIM_DMA_SOURCE(__SOURCE__) ((((__SOURCE__) & 0xFFFF80FFU) == 0x00000000U) && ((__SOURCE__) != 0x00000000U)) 1654 #define IS_TIM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ 1655 ((__CHANNEL__) == TIM_CHANNEL_2) || \ 1656 ((__CHANNEL__) == TIM_CHANNEL_3) || \ 1657 ((__CHANNEL__) == TIM_CHANNEL_4) || \ 1658 ((__CHANNEL__) == TIM_CHANNEL_5) || \ 1659 ((__CHANNEL__) == TIM_CHANNEL_6) || \ 1660 ((__CHANNEL__) == TIM_CHANNEL_ALL)) 1662 #define IS_TIM_OPM_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ 1663 ((__CHANNEL__) == TIM_CHANNEL_2)) 1665 #define IS_TIM_COMPLEMENTARY_CHANNELS(__CHANNEL__) (((__CHANNEL__) == TIM_CHANNEL_1) || \ 1666 ((__CHANNEL__) == TIM_CHANNEL_2) || \ 1667 ((__CHANNEL__) == TIM_CHANNEL_3)) 1669 #define IS_TIM_CLOCKSOURCE(__CLOCK__) (((__CLOCK__) == TIM_CLOCKSOURCE_INTERNAL) || \ 1670 ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE2) || \ 1671 ((__CLOCK__) == TIM_CLOCKSOURCE_ITR0) || \ 1672 ((__CLOCK__) == TIM_CLOCKSOURCE_ITR1) || \ 1673 ((__CLOCK__) == TIM_CLOCKSOURCE_ITR2) || \ 1674 ((__CLOCK__) == TIM_CLOCKSOURCE_ITR3) || \ 1675 ((__CLOCK__) == TIM_CLOCKSOURCE_TI1ED) || \ 1676 ((__CLOCK__) == TIM_CLOCKSOURCE_TI1) || \ 1677 ((__CLOCK__) == TIM_CLOCKSOURCE_TI2) || \ 1678 ((__CLOCK__) == TIM_CLOCKSOURCE_ETRMODE1)) 1680 #define IS_TIM_CLOCKPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLOCKPOLARITY_INVERTED) || \ 1681 ((__POLARITY__) == TIM_CLOCKPOLARITY_NONINVERTED) || \ 1682 ((__POLARITY__) == TIM_CLOCKPOLARITY_RISING) || \ 1683 ((__POLARITY__) == TIM_CLOCKPOLARITY_FALLING) || \ 1684 ((__POLARITY__) == TIM_CLOCKPOLARITY_BOTHEDGE)) 1686 #define IS_TIM_CLOCKPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV1) || \ 1687 ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV2) || \ 1688 ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV4) || \ 1689 ((__PRESCALER__) == TIM_CLOCKPRESCALER_DIV8)) 1691 #define IS_TIM_CLOCKFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) 1693 #define IS_TIM_CLEARINPUT_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_CLEARINPUTPOLARITY_INVERTED) || \ 1694 ((__POLARITY__) == TIM_CLEARINPUTPOLARITY_NONINVERTED)) 1696 #define IS_TIM_CLEARINPUT_PRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV1) || \ 1697 ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV2) || \ 1698 ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV4) || \ 1699 ((__PRESCALER__) == TIM_CLEARINPUTPRESCALER_DIV8)) 1701 #define IS_TIM_CLEARINPUT_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) 1703 #define IS_TIM_OSSR_STATE(__STATE__) (((__STATE__) == TIM_OSSR_ENABLE) || \ 1704 ((__STATE__) == TIM_OSSR_DISABLE)) 1706 #define IS_TIM_OSSI_STATE(__STATE__) (((__STATE__) == TIM_OSSI_ENABLE) || \ 1707 ((__STATE__) == TIM_OSSI_DISABLE)) 1709 #define IS_TIM_LOCK_LEVEL(__LEVEL__) (((__LEVEL__) == TIM_LOCKLEVEL_OFF) || \ 1710 ((__LEVEL__) == TIM_LOCKLEVEL_1) || \ 1711 ((__LEVEL__) == TIM_LOCKLEVEL_2) || \ 1712 ((__LEVEL__) == TIM_LOCKLEVEL_3)) 1714 #define IS_TIM_BREAK_FILTER(__BRKFILTER__) ((__BRKFILTER__) <= 0xFUL) 1717 #define IS_TIM_BREAK_STATE(__STATE__) (((__STATE__) == TIM_BREAK_ENABLE) || \ 1718 ((__STATE__) == TIM_BREAK_DISABLE)) 1720 #define IS_TIM_BREAK_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_BREAKPOLARITY_LOW) || \ 1721 ((__POLARITY__) == TIM_BREAKPOLARITY_HIGH)) 1723 #define IS_TIM_BREAK2_STATE(__STATE__) (((__STATE__) == TIM_BREAK2_ENABLE) || \ 1724 ((__STATE__) == TIM_BREAK2_DISABLE)) 1726 #define IS_TIM_BREAK2_POLARITY(__POLARITY__) (((__POLARITY__) == TIM_BREAK2POLARITY_LOW) || \ 1727 ((__POLARITY__) == TIM_BREAK2POLARITY_HIGH)) 1729 #define IS_TIM_AUTOMATIC_OUTPUT_STATE(__STATE__) (((__STATE__) == TIM_AUTOMATICOUTPUT_ENABLE) || \ 1730 ((__STATE__) == TIM_AUTOMATICOUTPUT_DISABLE)) 1732 #define IS_TIM_GROUPCH5(__OCREF__) ((((__OCREF__) & 0x1FFFFFFFU) == 0x00000000U)) 1734 #define IS_TIM_TRGO_SOURCE(__SOURCE__) (((__SOURCE__) == TIM_TRGO_RESET) || \ 1735 ((__SOURCE__) == TIM_TRGO_ENABLE) || \ 1736 ((__SOURCE__) == TIM_TRGO_UPDATE) || \ 1737 ((__SOURCE__) == TIM_TRGO_OC1) || \ 1738 ((__SOURCE__) == TIM_TRGO_OC1REF) || \ 1739 ((__SOURCE__) == TIM_TRGO_OC2REF) || \ 1740 ((__SOURCE__) == TIM_TRGO_OC3REF) || \ 1741 ((__SOURCE__) == TIM_TRGO_OC4REF)) 1743 #define IS_TIM_TRGO2_SOURCE(__SOURCE__) (((__SOURCE__) == TIM_TRGO2_RESET) || \ 1744 ((__SOURCE__) == TIM_TRGO2_ENABLE) || \ 1745 ((__SOURCE__) == TIM_TRGO2_UPDATE) || \ 1746 ((__SOURCE__) == TIM_TRGO2_OC1) || \ 1747 ((__SOURCE__) == TIM_TRGO2_OC1REF) || \ 1748 ((__SOURCE__) == TIM_TRGO2_OC2REF) || \ 1749 ((__SOURCE__) == TIM_TRGO2_OC3REF) || \ 1750 ((__SOURCE__) == TIM_TRGO2_OC3REF) || \ 1751 ((__SOURCE__) == TIM_TRGO2_OC4REF) || \ 1752 ((__SOURCE__) == TIM_TRGO2_OC5REF) || \ 1753 ((__SOURCE__) == TIM_TRGO2_OC6REF) || \ 1754 ((__SOURCE__) == TIM_TRGO2_OC4REF_RISINGFALLING) || \ 1755 ((__SOURCE__) == TIM_TRGO2_OC6REF_RISINGFALLING) || \ 1756 ((__SOURCE__) == TIM_TRGO2_OC4REF_RISING_OC6REF_RISING) || \ 1757 ((__SOURCE__) == TIM_TRGO2_OC4REF_RISING_OC6REF_FALLING) || \ 1758 ((__SOURCE__) == TIM_TRGO2_OC5REF_RISING_OC6REF_RISING) || \ 1759 ((__SOURCE__) == TIM_TRGO2_OC5REF_RISING_OC6REF_FALLING)) 1761 #define IS_TIM_MSM_STATE(__STATE__) (((__STATE__) == TIM_MASTERSLAVEMODE_ENABLE) || \ 1762 ((__STATE__) == TIM_MASTERSLAVEMODE_DISABLE)) 1764 #define IS_TIM_SLAVE_MODE(__MODE__) (((__MODE__) == TIM_SLAVEMODE_DISABLE) || \ 1765 ((__MODE__) == TIM_SLAVEMODE_RESET) || \ 1766 ((__MODE__) == TIM_SLAVEMODE_GATED) || \ 1767 ((__MODE__) == TIM_SLAVEMODE_TRIGGER) || \ 1768 ((__MODE__) == TIM_SLAVEMODE_EXTERNAL1) || \ 1769 ((__MODE__) == TIM_SLAVEMODE_COMBINED_RESETTRIGGER)) 1771 #define IS_TIM_PWM_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_PWM1) || \ 1772 ((__MODE__) == TIM_OCMODE_PWM2) || \ 1773 ((__MODE__) == TIM_OCMODE_COMBINED_PWM1) || \ 1774 ((__MODE__) == TIM_OCMODE_COMBINED_PWM2) || \ 1775 ((__MODE__) == TIM_OCMODE_ASSYMETRIC_PWM1) || \ 1776 ((__MODE__) == TIM_OCMODE_ASSYMETRIC_PWM2)) 1778 #define IS_TIM_OC_MODE(__MODE__) (((__MODE__) == TIM_OCMODE_TIMING) || \ 1779 ((__MODE__) == TIM_OCMODE_ACTIVE) || \ 1780 ((__MODE__) == TIM_OCMODE_INACTIVE) || \ 1781 ((__MODE__) == TIM_OCMODE_TOGGLE) || \ 1782 ((__MODE__) == TIM_OCMODE_FORCED_ACTIVE) || \ 1783 ((__MODE__) == TIM_OCMODE_FORCED_INACTIVE) || \ 1784 ((__MODE__) == TIM_OCMODE_RETRIGERRABLE_OPM1) || \ 1785 ((__MODE__) == TIM_OCMODE_RETRIGERRABLE_OPM2)) 1787 #define IS_TIM_TRIGGER_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ 1788 ((__SELECTION__) == TIM_TS_ITR1) || \ 1789 ((__SELECTION__) == TIM_TS_ITR2) || \ 1790 ((__SELECTION__) == TIM_TS_ITR3) || \ 1791 ((__SELECTION__) == TIM_TS_TI1F_ED) || \ 1792 ((__SELECTION__) == TIM_TS_TI1FP1) || \ 1793 ((__SELECTION__) == TIM_TS_TI2FP2) || \ 1794 ((__SELECTION__) == TIM_TS_ETRF)) 1796 #define IS_TIM_INTERNAL_TRIGGEREVENT_SELECTION(__SELECTION__) (((__SELECTION__) == TIM_TS_ITR0) || \ 1797 ((__SELECTION__) == TIM_TS_ITR1) || \ 1798 ((__SELECTION__) == TIM_TS_ITR2) || \ 1799 ((__SELECTION__) == TIM_TS_ITR3) || \ 1800 ((__SELECTION__) == TIM_TS_NONE)) 1802 #define IS_TIM_TRIGGERPOLARITY(__POLARITY__) (((__POLARITY__) == TIM_TRIGGERPOLARITY_INVERTED ) || \ 1803 ((__POLARITY__) == TIM_TRIGGERPOLARITY_NONINVERTED) || \ 1804 ((__POLARITY__) == TIM_TRIGGERPOLARITY_RISING ) || \ 1805 ((__POLARITY__) == TIM_TRIGGERPOLARITY_FALLING ) || \ 1806 ((__POLARITY__) == TIM_TRIGGERPOLARITY_BOTHEDGE )) 1808 #define IS_TIM_TRIGGERPRESCALER(__PRESCALER__) (((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV1) || \ 1809 ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV2) || \ 1810 ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV4) || \ 1811 ((__PRESCALER__) == TIM_TRIGGERPRESCALER_DIV8)) 1813 #define IS_TIM_TRIGGERFILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) 1815 #define IS_TIM_TI1SELECTION(__TI1SELECTION__) (((__TI1SELECTION__) == TIM_TI1SELECTION_CH1) || \ 1816 ((__TI1SELECTION__) == TIM_TI1SELECTION_XORCOMBINATION)) 1818 #define IS_TIM_DMA_LENGTH(__LENGTH__) (((__LENGTH__) == TIM_DMABURSTLENGTH_1TRANSFER) || \ 1819 ((__LENGTH__) == TIM_DMABURSTLENGTH_2TRANSFERS) || \ 1820 ((__LENGTH__) == TIM_DMABURSTLENGTH_3TRANSFERS) || \ 1821 ((__LENGTH__) == TIM_DMABURSTLENGTH_4TRANSFERS) || \ 1822 ((__LENGTH__) == TIM_DMABURSTLENGTH_5TRANSFERS) || \ 1823 ((__LENGTH__) == TIM_DMABURSTLENGTH_6TRANSFERS) || \ 1824 ((__LENGTH__) == TIM_DMABURSTLENGTH_7TRANSFERS) || \ 1825 ((__LENGTH__) == TIM_DMABURSTLENGTH_8TRANSFERS) || \ 1826 ((__LENGTH__) == TIM_DMABURSTLENGTH_9TRANSFERS) || \ 1827 ((__LENGTH__) == TIM_DMABURSTLENGTH_10TRANSFERS) || \ 1828 ((__LENGTH__) == TIM_DMABURSTLENGTH_11TRANSFERS) || \ 1829 ((__LENGTH__) == TIM_DMABURSTLENGTH_12TRANSFERS) || \ 1830 ((__LENGTH__) == TIM_DMABURSTLENGTH_13TRANSFERS) || \ 1831 ((__LENGTH__) == TIM_DMABURSTLENGTH_14TRANSFERS) || \ 1832 ((__LENGTH__) == TIM_DMABURSTLENGTH_15TRANSFERS) || \ 1833 ((__LENGTH__) == TIM_DMABURSTLENGTH_16TRANSFERS) || \ 1834 ((__LENGTH__) == TIM_DMABURSTLENGTH_17TRANSFERS) || \ 1835 ((__LENGTH__) == TIM_DMABURSTLENGTH_18TRANSFERS)) 1837 #define IS_TIM_IC_FILTER(__ICFILTER__) ((__ICFILTER__) <= 0xFU) 1839 #define IS_TIM_DEADTIME(__DEADTIME__) ((__DEADTIME__) <= 0xFFU) 1841 #define IS_TIM_BREAK_SYSTEM(__CONFIG__) (((__CONFIG__) == TIM_BREAK_SYSTEM_ECC) || \ 1842 ((__CONFIG__) == TIM_BREAK_SYSTEM_PVD) || \ 1843 ((__CONFIG__) == TIM_BREAK_SYSTEM_SRAM2_PARITY_ERROR) || \ 1844 ((__CONFIG__) == TIM_BREAK_SYSTEM_LOCKUP)) 1846 #define IS_TIM_SLAVEMODE_TRIGGER_ENABLED(__TRIGGER__) (((__TRIGGER__) == TIM_SLAVEMODE_TRIGGER) || \ 1847 ((__TRIGGER__) == TIM_SLAVEMODE_COMBINED_RESETTRIGGER)) 1849 #define TIM_SET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__, __ICPSC__) \ 1850 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 |= (__ICPSC__)) :\ 1851 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 |= ((__ICPSC__) << 8U)) :\ 1852 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 |= (__ICPSC__)) :\ 1853 ((__HANDLE__)->Instance->CCMR2 |= ((__ICPSC__) << 8U))) 1855 #define TIM_RESET_ICPRESCALERVALUE(__HANDLE__, __CHANNEL__) \ 1856 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCMR1 &= (uint16_t)~TIM_CCMR1_IC1PSC) :\ 1857 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCMR1 &= (uint16_t)~TIM_CCMR1_IC2PSC) :\ 1858 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCMR2 &= (uint16_t)~TIM_CCMR2_IC3PSC) :\ 1859 ((__HANDLE__)->Instance->CCMR2 &= (uint16_t)~TIM_CCMR2_IC4PSC)) 1861 #define TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__) \ 1862 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER |= (__POLARITY__)) :\ 1863 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 4U)) :\ 1864 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER |= ((__POLARITY__) << 8U)) :\ 1865 ((__HANDLE__)->Instance->CCER |= (((__POLARITY__) << 12U)))) 1867 #define TIM_RESET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__) \ 1868 (((__CHANNEL__) == TIM_CHANNEL_1) ? ((__HANDLE__)->Instance->CCER &= (uint16_t)~(TIM_CCER_CC1P | TIM_CCER_CC1NP)) :\ 1869 ((__CHANNEL__) == TIM_CHANNEL_2) ? ((__HANDLE__)->Instance->CCER &= (uint16_t)~(TIM_CCER_CC2P | TIM_CCER_CC2NP)) :\ 1870 ((__CHANNEL__) == TIM_CHANNEL_3) ? ((__HANDLE__)->Instance->CCER &= (uint16_t)~(TIM_CCER_CC3P | TIM_CCER_CC3NP)) :\ 1871 ((__HANDLE__)->Instance->CCER &= (uint16_t)~(TIM_CCER_CC4P | TIM_CCER_CC4NP))) 2010 uint32_t *pData2, uint16_t Length);
2035 uint32_t OutputChannel, uint32_t InputChannel);
2043 uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength);
2046 uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength);
2071 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1) 2106 void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, uint32_t TIM_ICFilter);
2109 uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter);
2116 void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState);
2118 #if (USE_HAL_TIM_REGISTER_CALLBACKS == 1)
HAL_StatusTypeDef HAL_TIM_Base_Start_IT(TIM_HandleTypeDef *htim)
Starts the TIM Base generation in interrupt mode.
__IO HAL_TIM_StateTypeDef State
HAL_StatusTypeDef HAL_TIM_OnePulse_Init(TIM_HandleTypeDef *htim, uint32_t OnePulseMode)
Initializes the TIM One Pulse Time Base according to the specified parameters in the TIM_HandleTypeDe...
HAL_StatusTypeDef HAL_TIM_Encoder_Init(TIM_HandleTypeDef *htim, TIM_Encoder_InitTypeDef *sConfig)
Initializes the TIM Encoder Interface and initialize the associated handle.
HAL_StatusTypeDef HAL_TIM_Base_Stop_IT(TIM_HandleTypeDef *htim)
Stops the TIM Base generation in interrupt mode.
void HAL_TIM_PWM_PulseFinishedHalfCpltCallback(TIM_HandleTypeDef *htim)
PWM Pulse finished half complete callback in non-blocking mode.
HAL_TIM_ActiveChannel
HAL Active channel structures definition.
uint32_t AutoReloadPreload
Clock Configuration Handle Structure definition.
HAL_StatusTypeDef HAL_TIM_PWM_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM peripheral.
TIM Time base Configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_IC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
Starts the TIM Input Capture measurement in DMA mode.
HAL_StatusTypeDef HAL_TIM_OnePulse_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
Stops the TIM One Pulse signal generation.
uint32_t RepetitionCounter
HAL_TIM_CallbackIDTypeDef
HAL TIM Callback ID enumeration definition.
HAL_StatusTypeDef HAL_TIM_Base_Stop_DMA(TIM_HandleTypeDef *htim)
Stops the TIM Base generation in DMA mode.
DMA handle Structure definition.
TIM Encoder Configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength)
Configure the DMA Burst to transfer Data from the TIM peripheral to the memory.
void TIM_TI1_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ICPolarity, uint32_t TIM_ICSelection, uint32_t TIM_ICFilter)
Configure the TI1 as Input.
void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim)
PWM Pulse finished callback in non-blocking mode.
TIM Input Capture Configuration Structure definition.
void TIM_Base_SetConfig(TIM_TypeDef *TIMx, TIM_Base_InitTypeDef *Structure)
Time Base configuration.
void TIM_ResetCallback(TIM_HandleTypeDef *htim)
Reset interrupt callbacks to the legacy weak callbacks.
HAL_StatusTypeDef HAL_TIM_OnePulse_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
Stops the TIM One Pulse signal generation in interrupt mode.
void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM PWM MSP.
uint32_t ClearInputSource
HAL_StatusTypeDef HAL_TIM_UnRegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID)
Unregister a TIM callback TIM callback is redirected to the weak predefined callback.
HAL_StatusTypeDef HAL_TIM_OC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Output Compare signal generation in DMA mode.
uint32_t HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel)
Read the captured value from Capture Compare unit.
void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM Input Capture MSP.
void TIM_DMADelayPulseCplt(DMA_HandleTypeDef *hdma)
TIM DMA Delay Pulse complete callback.
void HAL_TIM_ErrorCallback(TIM_HandleTypeDef *htim)
Timer error callback in non-blocking mode.
HAL_StatusTypeDef HAL_TIM_Base_Start(TIM_HandleTypeDef *htim)
Starts the TIM Base generation.
HAL_StatusTypeDef HAL_TIM_OnePulse_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
Starts the TIM One Pulse signal generation.
void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim)
This function handles TIM interrupts requests.
HAL_TIM_ActiveChannel Channel
This file contains HAL common defines, enumeration, macros and structures definitions.
HAL_StatusTypeDef HAL_TIM_Encoder_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Encoder Interface.
HAL_StatusTypeDef HAL_TIM_Base_Init(TIM_HandleTypeDef *htim)
Initializes the TIM Time base Unit according to the specified parameters in the TIM_HandleTypeDef and...
HAL_StatusTypeDef HAL_TIM_Encoder_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Encoder Interface in interrupt mode.
void HAL_TIM_IC_CaptureHalfCpltCallback(TIM_HandleTypeDef *htim)
Input Capture half complete callback in non-blocking mode.
HAL_StatusTypeDef HAL_TIM_OC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel)
Initializes the TIM Output Compare Channels according to the specified parameters in the TIM_OC_InitT...
uint32_t TriggerPrescaler
TIM Master configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_Encoder_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM Encoder interface.
uint32_t OffStateIDLEMode
HAL_StatusTypeDef HAL_TIM_IC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Input Capture measurement in interrupt mode.
void TIM_DMADelayPulseHalfCplt(DMA_HandleTypeDef *hdma)
TIM DMA Delay Pulse half complete callback.
TIM Slave configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_IC_Init(TIM_HandleTypeDef *htim)
Initializes the TIM Input Capture Time base according to the specified parameters in the TIM_HandleTy...
void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM PWM MSP.
HAL_TIM_StateTypeDef HAL_TIM_Encoder_GetState(TIM_HandleTypeDef *htim)
Return the TIM Encoder Mode handle state.
void HAL_TIM_OnePulse_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM One Pulse MSP.
uint32_t ClearInputPrescaler
void HAL_TIM_IC_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM Input Capture MSP.
HAL_StatusTypeDef HAL_TIM_IC_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Input Capture measurement in DMA mode.
void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM Encoder Interface MSP.
HAL_StatusTypeDef HAL_TIM_OC_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
Starts the TIM Output Compare signal generation in DMA mode.
HAL_StatusTypeDef HAL_TIM_GenerateEvent(TIM_HandleTypeDef *htim, uint32_t EventSource)
Generate a software event.
TIM One Pulse Mode Configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro_IT(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig)
Configures the TIM in Slave mode in interrupt mode.
void TIM_DMAError(DMA_HandleTypeDef *hdma)
TIM DMA error callback.
HAL_StatusTypeDef HAL_TIM_ConfigClockSource(TIM_HandleTypeDef *htim, TIM_ClockConfigTypeDef *sClockSourceConfig)
Configures the clock source to be used.
HAL_StatusTypeDef HAL_TIM_PWM_Init(TIM_HandleTypeDef *htim)
Initializes the TIM PWM Time Base according to the specified parameters in the TIM_HandleTypeDef and ...
HAL_TIM_StateTypeDef HAL_TIM_OC_GetState(TIM_HandleTypeDef *htim)
Return the TIM OC handle state.
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM Base MSP.
void TIM_DMACaptureHalfCplt(DMA_HandleTypeDef *hdma)
TIM DMA Capture half complete callback.
HAL_StatusTypeDef HAL_TIM_OnePulse_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OnePulse_InitTypeDef *sConfig, uint32_t OutputChannel, uint32_t InputChannel)
Initializes the TIM One Pulse Channels according to the specified parameters in the TIM_OnePulse_Init...
void(* pTIM_CallbackTypeDef)(TIM_HandleTypeDef *htim)
HAL TIM Callback pointer definition.
HAL_StatusTypeDef HAL_TIM_PWM_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the PWM signal generation.
HAL_TIM_StateTypeDef HAL_TIM_OnePulse_GetState(TIM_HandleTypeDef *htim)
Return the TIM One Pulse Mode handle state.
HAL_StatusTypeDef HAL_TIM_Encoder_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Encoder Interface in interrupt mode.
HAL_TIM_StateTypeDef
HAL State structures definition.
HAL_StatusTypeDef HAL_TIM_OC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Output Compare signal generation in interrupt mode.
void TIM_DMACaptureCplt(DMA_HandleTypeDef *hdma)
TIM DMA Capture complete callback.
void HAL_TIM_OC_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM Output Compare MSP.
HAL_StatusTypeDef HAL_TIM_SlaveConfigSynchro(TIM_HandleTypeDef *htim, TIM_SlaveConfigTypeDef *sSlaveConfig)
Configures the TIM in Slave mode.
HAL_StatusTypeDef HAL_TIM_PWM_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM PWM signal generation in DMA mode.
HAL_TIM_StateTypeDef HAL_TIM_PWM_GetState(TIM_HandleTypeDef *htim)
Return the TIM PWM handle state.
void TIM_ETR_SetConfig(TIM_TypeDef *TIMx, uint32_t TIM_ExtTRGPrescaler, uint32_t TIM_ExtTRGPolarity, uint32_t ExtTRGFilter)
Configures the TIMx External Trigger (ETR).
HAL_StatusTypeDef HAL_TIM_PWM_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the PWM signal generation.
HAL_StatusTypeDef HAL_TIM_Encoder_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Encoder Interface.
HAL_StatusTypeDef HAL_TIM_OnePulse_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM One Pulse.
HAL_StatusTypeDef HAL_TIM_OC_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Output Compare signal generation in interrupt mode.
HAL_StatusTypeDef HAL_TIM_Base_Stop(TIM_HandleTypeDef *htim)
Stops the TIM Base generation.
HAL_LockTypeDef
HAL Lock structures definition.
TIM_Base_InitTypeDef Init
HAL_TIM_StateTypeDef HAL_TIM_IC_GetState(TIM_HandleTypeDef *htim)
Return the TIM Input Capture handle state.
HAL_StatusTypeDef HAL_TIM_IC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Input Capture measurement.
HAL_StatusTypeDef HAL_TIM_IC_ConfigChannel(TIM_HandleTypeDef *htim, TIM_IC_InitTypeDef *sConfig, uint32_t Channel)
Initializes the TIM Input Capture Channels according to the specified parameters in the TIM_IC_InitTy...
Header file of TIM HAL Extended module.
HAL_StatusTypeDef HAL_TIM_OC_Stop(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Output Compare signal generation.
HAL_StatusTypeDef HAL_TIM_Encoder_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData1, uint32_t *pData2, uint16_t Length)
Starts the TIM Encoder Interface in DMA mode.
HAL_StatusTypeDef HAL_TIM_IC_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Input Capture measurement in interrupt mode.
void TIM_CCxChannelCmd(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ChannelState)
Enables or disables the TIM Capture Compare Channel x.
HAL_StatusTypeDef HAL_TIM_DMABurst_ReadStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc)
Stop the DMA burst reading.
void HAL_TIM_OC_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM Output Compare MSP.
void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim)
Output Compare callback in non-blocking mode.
TIM Output Compare Configuration Structure definition.
HAL_StatusTypeDef HAL_TIM_Base_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length)
Starts the TIM Base generation in DMA mode.
HAL_StatusTypeDef HAL_TIM_Encoder_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the TIM Encoder Interface in DMA mode.
TIM Break input(s) and Dead time configuration Structure definition.
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
Period elapsed callback in non-blocking mode.
HAL_TIM_StateTypeDef HAL_TIM_Base_GetState(TIM_HandleTypeDef *htim)
Return the TIM Base handle state.
HAL_StatusTypeDef HAL_TIM_PWM_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the PWM signal generation in interrupt mode.
void HAL_TIM_OnePulse_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM One Pulse MSP.
ADC handle Structure definition.
uint32_t ClearInputPolarity
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
Input Capture callback in non-blocking mode.
HAL_StatusTypeDef HAL_TIM_IC_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM peripheral.
uint32_t ClearInputFilter
HAL_StatusTypeDef HAL_TIM_OC_Init(TIM_HandleTypeDef *htim)
Initializes the TIM Output Compare according to the specified parameters in the TIM_HandleTypeDef and...
void HAL_TIM_TriggerHalfCpltCallback(TIM_HandleTypeDef *htim)
Hall Trigger detection half complete callback in non-blocking mode.
void TIM_OC2_SetConfig(TIM_TypeDef *TIMx, TIM_OC_InitTypeDef *OC_Config)
Timer Output Compare 2 configuration.
HAL_StatusTypeDef HAL_TIM_OC_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Output Compare signal generation.
uint32_t MasterOutputTrigger
struct __TIM_HandleTypeDef else typedef struct endif TIM_HandleTypeDef
TIM Time Base Handle Structure definition.
HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStop(TIM_HandleTypeDef *htim, uint32_t BurstRequestSrc)
Stops the TIM DMA Burst mode.
HAL_StatusTypeDef HAL_TIM_OnePulse_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel)
Starts the TIM One Pulse signal generation in interrupt mode.
HAL_StatusTypeDef HAL_TIM_PWM_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel)
Stops the PWM signal generation in interrupt mode.
HAL_StatusTypeDef HAL_TIM_ConfigOCrefClear(TIM_HandleTypeDef *htim, TIM_ClearInputConfigTypeDef *sClearInputConfig, uint32_t Channel)
Configures the OCRef clear feature.
HAL_StatusTypeDef HAL_TIM_IC_Start(TIM_HandleTypeDef *htim, uint32_t Channel)
Starts the TIM Input Capture measurement.
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim)
Initializes the TIM Base MSP.
HAL_StatusTypeDef HAL_TIM_PWM_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length)
Starts the TIM PWM signal generation in DMA mode.
HAL_StatusTypeDef HAL_TIM_Base_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM Base peripheral.
HAL_StatusTypeDef HAL_TIM_RegisterCallback(TIM_HandleTypeDef *htim, HAL_TIM_CallbackIDTypeDef CallbackID, pTIM_CallbackTypeDef pCallback)
Register a User TIM callback to be used instead of the weak predefined callback.
void HAL_TIM_PeriodElapsedHalfCpltCallback(TIM_HandleTypeDef *htim)
Period elapsed half complete callback in non-blocking mode.
HAL_StatusTypeDef HAL_TIM_OC_DeInit(TIM_HandleTypeDef *htim)
DeInitializes the TIM peripheral.
void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim)
Hall Trigger detection callback in non-blocking mode.
HAL_StatusTypeDef HAL_TIM_ConfigTI1Input(TIM_HandleTypeDef *htim, uint32_t TI1_Selection)
Selects the signal connected to the TI1 input: direct from CH1_input or a XOR combination between CH1...
HAL_StatusTypeDef HAL_TIM_PWM_ConfigChannel(TIM_HandleTypeDef *htim, TIM_OC_InitTypeDef *sConfig, uint32_t Channel)
Initializes the TIM PWM channels according to the specified parameters in the TIM_OC_InitTypeDef.
uint32_t MasterOutputTrigger2
HAL_StatusTypeDef HAL_TIM_DMABurst_WriteStart(TIM_HandleTypeDef *htim, uint32_t BurstBaseAddress, uint32_t BurstRequestSrc, uint32_t *BurstBuffer, uint32_t BurstLength)
Configure the DMA Burst to transfer Data from the memory to the TIM peripheral.
void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef *htim)
DeInitializes TIM Encoder Interface MSP.