... during the video presentation (see previous article):1. The ".json" files needed an upgrade due to some new modifications in version 1.30.2 of Visual Studio Code. Instead of chasing VSCode, I try to identify variables that are consistent (contradiction?) throughout versions. This way, the new modifications won't affect older versions.2. VSCode has an Arduino extension … Continue reading Some needs arised …
Stories
Installing and using VPC – first video presentation
Well, there will be no audio for now. But a lot of text and action like in the first muted movies. After this one, other filmed projects will follow.
We have SPI and ADC peripherals
- we have SPI1, 2 and 3, conform with SPL library (still, only master for now);- we have ADC1 peripheral and now pins can be selected as ADC_INx channels;- a function to read the ADC1 values, in spl_library folder;- small code optimizations here and there...Code committed in the repository. What next? Modify the I2C code … Continue reading We have SPI and ADC peripherals
New "things" added…
I've added a new pin function, "ADIN" that manages the ADC input channels, a proper initialization function for ADC1, an with a status LED on the main window, and an "ADC1 Setup" window.I've also added an ADC reading function in "my_soft_adc.h" header from "spl_library" folder. Not yet committed in repository because I am not ready … Continue reading New "things" added…
Closer to SPL library…
I redesigned SPI(1,2,3) setup windows to reflect the elements from SPL library. As things are in CubeMX, just creates confusion and anyway, there is no need of a CubeMX clone. VPC is a visual configurator for projects that still use the old and battle tested SPL library. I2C might follow (in redesigning the interface) but … Continue reading Closer to SPL library…
NVIC priority sorted out.
Is done for the functionality I intend to have for version 1 of VPC (TIM6 and 7, USART2, UART4 and 5, I2C1 and 2, SPI1, 2 and 3, and all GPIO EXTI). It generates code for NVIC priority and sub-priority (with value validation regarding the Priority Group selected) inside the initialization functions of the peripheral … Continue reading NVIC priority sorted out.
NVIC Priority
Update: Changed my mind, I'll give the user full control as there is now a function that validate the values of the priorities and sub-priorities regarding the priority group selected.Hint: Project Settings window has settings for Priority Groups and for the priorities of the pins set as EXTI. Priorities for the "system interrupts" (as SysTick_IRQn … Continue reading NVIC Priority
Weird… OneWire protocol problems using SPL driver
I have a OneWire protocol library for a DS18B20 sensor, that works ok on PIC and AVR, and even on STM32 micros when using LL driver. I converted the library for the SPL driver and... it trows a "bad data" error!The code written for LL driver works ok. So I thought that my my_delay_us function … Continue reading Weird… OneWire protocol problems using SPL driver
TIM6 or TIM7 as SysTick clock…
A year ago I tried to set the SysTick from the LL drivers but the code generated by CubeMX didn't worked. There were no support for it from ST.M. so I had to find an alternative. I learned that TIM6 and 7 can be used for that, and when I started to work at my … Continue reading TIM6 or TIM7 as SysTick clock…
Huston, we have a blinking LED!
First real project generated with VPC works just fine on the Nucleo-L152RE board from ST Microelectronics. The LED is happily blinking at the specified frequency.The project name is l152_blink and I uploaded it in the repository. Yep, SPL library, babe!There is still a lot to be done, but at least I know it works and … Continue reading Huston, we have a blinking LED!