Index

MicroWorks 30B4 board

  1. Datasheets 30B4
    1. STM32F103
      1. ADC
      2. STM32 EEPROM
    2. MPU6050
      1. DMA
      2. Issue communications
        1. 01
    3. MPU6050 freq
  2. firmware motor control
  3. Implementations with MicroWorks 30B4 board
  4. Links to sellers

MicroWorks 500W 30km/h motor

  1. BEMF measurements

Flash and Debug STM32

  1. Eclipse IDE and JTAG
  2. Unlock STM32F103 with JTAG
  3. Flash firmware using Bluetooth
    1. STM32F103C6T8 bootloader
    2. ZS-040 Bluetooth module
      1. HC-06 hc01.comV2.0
  4. Serial Port Bluetooth
  5. Serial Port Plot
  6. SM32F103C8T6 use 128kbytes flash

FOC

  1. Observer
  2. Shane Colton documentation and firmware
    1. Firmware
    2. Part 1: Field-Oriented
    3. Part 2: Field-Oriented
    4. Sensorless Pneu Scooter - part 1
    5. Sensorless Pneu Scooter - part 2
    6. Sensorless Pneu Scooter - part 3
  3. Texas Instruments videos
  4. Chinese controllers code

Balance controller

  1. Chinese balance group reference design
  2. Kerry D. Wong -- A Self-Balancing Robot
    1. A Self-Balancing Robot – I
    2. A Self-Balancing Robot – II
    3. A Self-Balancing Robot – III
  3. Self balance bicycle
  4. PID
  5. LQR
    1. Stages of development of the robot-balancer
  6. PID and LQR, MATLAB
  7. Steve Brunton videos

Mechanical parts

  1. Pedals

Various

  1. C language for critical systems
  2. Hall effect sensor placement
  3. The brilliant idea of slow rotating motors
    1. Why does the Torquemax rotate so slowly and so forcefully
  4. Finding Motor Phase-Sensor Combinations

Clipping

  1. Hackaday - 2017.05.07 - opensource firmware for hoverboards

ADC


Injected conversion mode



This mode is intended for use when conversion is triggered by an external event or by software.
The injected group has priority over the regular channel group. It interrupts the conversion of
the current channel in the regular channel group.

images/31-1.png

Example of application
This mode can be used to synchronize the conversion of channels to an event. It is
interesting in motor control applications where transistor switching generates noise that
impacts ADC measurements and results in wrong conversions. Using a timer, the injected
conversion mode can thus be implemented to delay the ADC measurements to after the
transistor switching.



Vários modos de utilização ADC:
Linked file: AN3116-STM32_ADC_modes_and_their_applications.pdf

F103: ADC injected scan mode question
I'm implementing a high power buck converter using STM32F103C8. I need to measure voltage on 4 channels during each PWM period. I figured, that i will use ADC injected mode for this. Since PWM is being generated from TIM1, I'm triggering on TIM1-CH4 in an instant when I don't expect switching-related disturbances. 

What bothers me though, is that I'd like the ADC to convert all the selected channels as fast as it can and then wait for another trigger. Is there a way to do this? I have enabled scan mode, which I figured would do exactly that, but it seems that it only converts one channel and waits for another trigger event to happen before it converts another channel in sequence.

Not sure why you'd need injected mode, scanning mode can be triggered to do multiple channels one after another, from a single trigger event. Scanning requires the use of DMA.

Scanning should be enabled, Continuous Mode should be disabled, and you should enumerate the channels/speed you wish the samples to be performed at.