cancel
Showing results for 
Search instead for 
Did you mean: 

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

silver2row
Associate

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.

1 ACCEPTED SOLUTION

Accepted Solutions

> #include <stm32fo91xc.h>

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

JW

View solution in original post

2 REPLIES 2

> #include <stm32fo91xc.h>

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

JW

silver2row
Associate

Hello,

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

Seth