Skip to main content
silver2row
Associate
August 6, 2022
Solved

How Can I Upload Build Libraries from Specific Books when the Files seem to not be Available?

  • August 6, 2022
  • 2 replies
  • 1369 views

Hello,

I am reading out of the book, "Embedded Systems Fundamentals with ARM Cortex-M Based Microcontrollers - A Practical Approach Nucleo-F091RC Edition, 2nd Edition. (DEAN)."

He reviews the peripherals on the NUCLEO-F091RC and goes into detail on how to provide specifics on this board w/ the STM located on it. Anyway...

I am using studio.arm.keil to produce some source onto the board by building and then flashing it. Here is the source:

#include <stm32fo91xc.h>
#include "delay.h"
#include "field_access.h"
#include "gpio.h"
 
#define LED_R_OFF_MSK (GPIO_BSRR_BS_5)
#define LED_R_ON_MSK (GPIO_BSRR_BR_5)
#define LED_G_OFF_MSK (GPIO_BSRR_BS_6)
#define LED_G_ON_MSK (GPIO_BSRR_BR_6)
#define LED_B_OFF_MSK (GPIO_BSRR_BS_7)
#define LED_B_ON_MSK (GPIO_BSRR_BR_7)
 
void RBG_FLASHER_INIT(void) {
 RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
 
 MODIFY_FIELD(GPIOA->MODER, GPIO_MODER_MODER5, ESF_GPIO_MODER_OUTPUT);
 MODIFY_FIELD(GPIOA->MODER, GPIO_MODER_MODER6, ESF_GPIO_MODER_OUTPUT);
 MODIFY_FIELD(GPIOA->MODER, GPIO_MODER_MODER7, ESF_GPIO_MODER_OUTPUT);
 
 GPIOA->BSSR = LED_R_ON_MSK | LED_G_ON_MSK | LED_B_ON_MSK;
 
}

I read the passages in the book and I am currently trying to make this older book work w/ updated software online, i.e. to no luck so far.

Are these header files no longer used w/ the CMSIS packs in Keil uVision 5 or w/ the mbed source online via web browser?

Seth

P.S. Anyway, if you find time to reply, please let me know what you think.

Also...there are three preprocessor directives in the first section of the file listed:

  1. delay.h
  2. field_access.h
  3. gpio.h

Where would I get these files from currently. I looked over the book and the files are not listed.

This topic has been closed for replies.
Best answer by waclawek.jan

> #include <stm32fo91xc.h>

It's stm32f091xc.h (i.e. zero instead of o)

JW

2 replies

waclawek.jan
waclawek.janBest answer
Super User
August 6, 2022

> #include <stm32fo91xc.h>

It's stm32f091xc.h (i.e. zero instead of o)

JW

silver2row
Associate
August 6, 2022

Hello,

Thank you. You were right. There must have been a typo in the book.

Seth