vineri, 25 august 2017

Placa de dezvoltare cu microcontroler STM32F103C8T6

   In anul 2015 am achizitionat o placa de dezvoltare cu pret foarte bun (aproape 4$, la data aceea) tinand cont ca este cu un microcontroler pe 32 biti, cu frecventa de lucru de 72MHz (vedeti datasheet)... la prima vedere similara cu Arduino Due, cum ar fi Nano fata de Uno, sa zic. Din pacate, in acea perioada nu am gasit rapid informatii despre ea s-o folosesc cu programul Arduino IDE, asa ca a ramas sigilata punguta ei pana acum, cand din discutii cu Andrei Timofte, am zis s-o testez si eu.
   Am conectat placa conform indicatiilor din articolul How To Program STM32F103C8T6, dar am constatat ca nu se aprinde nici un led de pe placa de dezvoltare.
asa ca am legat ca in articolul ARDUINO GOES STM32, adica am scos firul de 3,3V de venea de la interfata USB-FTDI si am alimentat cu un cablu USB din calculator.
   Dupa ce ma urmarit schema placii prezentate in articolul mentionat anterior, am desfacut legaturile de realizate in prima faza si le-am conectat pe lateral
schema devenind
    In mod normal, cei 2 jumperi sun in pozitia O (in dreapta, cum se vede in poza de mai jos).
   Anterior, am facut sa am placile de dezvoltare cu STM32, descarcand de la https://github.com/rogerclarkmelbourne/Arduino_STM32 fisierul comprimat, l-m dezarhivat si l-am pus in subdirectorul hardware din cel in care este instalat programul Arduino IDE:

   Dupa ce se incarca sketch-ul si se configureaza programul Arduino pentru placa noastra
Board: Generic STM32F103C series
‘Variant: STM32F103C8 (20k RAM, 64k Flash)’
Upload method: Serial
‘Port: cel alocat interfetei USB-FTDI de PC’
se trece jumperul BOOT1 pe pozitia 1
si se apasa butonul REST (RESET)
   Se apasa butonul de UPLOAD (incarcare)
   Se pune jumperul BOOT1 in pozitia normala de functionare si apoi placa functioneaza cu programul incarcat.
   Deoarece led-ul intern conectat la PC13 este legat la plus, logica este inersa, adica la comanda de HIGH e stins, respectiv la LOW e aprins, am modificat sketch-ul BLINK prezentat in articolul How To Program STM32F103C8T6 realizand un efect stroboscopic, dupa cum se vede in filmuletul pe care l-am facut. Sketch-ul modificat este STM32F103C8_blink.ino. Am mai modificat si testat sketch-ul din exemplele incarcate odata cu partea de placa de dezvoltare cu STM32, cel numit BlinkNCount, am meu are definit ledul de pe placa la PC13, cum e in cazul real. Acest al doilea sketch testat este STM32F103C8_BlinkNCount.ino.
   Filmuletul de care ziceam , mai sus, se numeste STM32F103C8 Arduino IDE


2 comentarii:

  1. Va salut,

    Din experienta d-voastra v-as ruga sa-mi dati o parere daca aveti timp. Este vb de un proiect care ruleaza pe Arduino Uno si as vrea sa mut proiectul pe un STM32F103C8T6, problema ar fi librariile care nu se potrivesc, ce ma sfatuiti sa fac?

    Multumesc.

    RăspundețiȘtergere
    Răspunsuri
    1. depinde de proiect... trimiteti-mi pe mail sa vad despre ce e vorba

      Ștergere