Skip to main content
ankuch
Associate
March 28, 2015
Question

STM32F100RC Missing TIM12-17

  • March 28, 2015
  • 13 replies
  • 2537 views
Posted on March 28, 2015 at 17:59

Hello.

I try enable TIM12-17 but TIM12EN-TIM17EN not set to 1 (always 0) in APB1ENR and APB2ENR.

?an you help me?

Thanks.

#stm32f100rc
This topic has been closed for replies.

13 replies

Tesla DeLorean
Guru
March 28, 2015
Posted on March 28, 2015 at 20:43

F100RC or F103RC? Titles appear to have changed.

Are you sure the Value Line parts actually have these timers? Usually they are stripped down function devices.

Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
re.wolff9
Senior
March 28, 2015
Posted on March 28, 2015 at 21:02

I just checked. 12, 13, 14 do not exist in the F100, 15, 16, 17 do exist. So are you sure you tried 15,16, and 17?

ankuch
ankuchAuthor
Associate
March 29, 2015
Posted on March 29, 2015 at 05:41

F100RC.

The documentation states 11 timers:

http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00212417.pdf

Include file for F100RC stm32f100xe.h

#define TIM12_BASE            (APB1PERIPH_BASE + 0x1800)

#define TIM13_BASE            (APB1PERIPH_BASE + 0x1C00)

#define TIM14_BASE            (APB1PERIPH_BASE + 0x2000)

#define TIM15_BASE            (APB2PERIPH_BASE + 0x4000)

#define TIM16_BASE            (APB2PERIPH_BASE + 0x4400)

#define TIM17_BASE            (APB2PERIPH_BASE + 0x4800)

I used to select MCU STM32CubeMX and there for F100RC 11 timers.

ankuch
ankuchAuthor
Associate
March 29, 2015
Posted on March 29, 2015 at 05:57

I try to set TIM15EN-TIM17EN in RCC_APB2ENR but zeroed.

Which F100 you use? RC?

Thanks.

re.wolff9
Senior
March 29, 2015
Posted on March 29, 2015 at 11:25

I'm sorry, but I don't have an STM32F100. I'm just looking at the datasheet. See table 2.2.15 of the STM32F100 datasheet, docid 16455. 

On the other hand, the ''12 timers'' in the quick overview might be an error: In table 2 there are  only 5 or 6 timers. then 2.2.15 lists 1 advanced and 6 general purpose timers. 

The base address for say ''TIM12'' is constant across the STM32 family. If your device does not have that timer, the memory region is marked as reserved. So this makes it easy for the headers to define the base address even if your device doesn't have it. As long as your software doesn't use peripherals that don't exist on your device, there is no problem..... 

ankuch
ankuchAuthor
Associate
March 29, 2015
Posted on March 29, 2015 at 13:04

STM32F100 datasheet, docid 16455 for STM32F100x4 STM32F100x6 STM32F100x8STM32F100xB.

My MCU is STM32F100R

C

 - datasheet  Doc ID 15081 Rev 7.

re.wolff9
Senior
March 29, 2015
Posted on March 29, 2015 at 13:52

Ok. You're right. I'm sorry I looked at the wrong datasheet. 

I'm used to the newer chips where the amount of flash does not influence the peripherals that are installed, or said another way where the amount of peripherals warrants a new chip number. 

Tesla DeLorean
Guru
March 29, 2015
Posted on March 29, 2015 at 15:01

Are you sure of the source/markings of this part?

What numbers do you see from this?

unsigned short *Memory = (unsigned short *)0x1FFFF7E0;
unsigned long *Unique = (unsigned long *)0x1FFFF7E8;
printf(''%04X %04
X'', Memory[0], Memory[1]);
printf(''%08X %08X %08
X'', Unique[0], Unique[1], Unique[2]);

Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
ankuch
ankuchAuthor
Associate
March 29, 2015
Posted on March 29, 2015 at 16:58

0x1FFFF7E0  FFFF0100 256 KB

0x1FFFF7E8  05D0FF34 35355341 43028321

0xE0042000  10036414 0x414, ''High-density''

jurgen
Explorer
October 29, 2015
Posted on October 29, 2015 at 09:41

Hello,

Has this ever been fixed or answered? I'm facing the same problem with an STM32F100RC that I have here. I'm unable to use TIMER 12 (even enabling TIM12EN in RCC_APB1ENR isn't working).

Kind regards.