Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

STM32F103 push pull i AVR (atmega168) push pull

[es] :: Elektronika :: Mikrokontroleri :: STM32F103 push pull i AVR (atmega168) push pull

Strane: 1 2

[ Pregleda: 6864 | Odgovora: 34 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cukovanny
svaštar
glx
Planina

Član broj: 44538
Poruke: 966
93-87-143-132.dynamic.isp.telekom.rs.



+39 Profil

icon STM32F103 push pull i AVR (atmega168) push pull24.02.2018. u 20:23 - pre 74 meseci
ukoliko ima dokonih gurua ARM-a, molio bih za jednu brzu pomoć.

nemam vremena (kratak je život) za iščitavanje brojnih funkcija registara bluepill-a, a treba pomoć i objašnjenje šta čovek ovde u ovom kodu radi da bi dobio PUSH PULL PWM sa dva kanala stm32f103 ?
ukratko koment za svaku liniju da bih svojeručno mogao preneti kod u arduino okruženje iz koga programiram stm32.
kod je sledeći:

Code:

#include "stm32f10x.h"
#include "stm32_ports.h"

#define TIM1_CH1N_PB        13
#define TIM1_CH1_PA         8
#define TIM1_CH2_PA         9

#define LED1_G_PC           9
#define LED2_B_PC           8

#define PWM_VALUE           20
#define TMR_T               200
#define DEADTIME            20

#define PP_MODE
//#define COMPL_MODE

void main(void)
{
    RCC->APB2ENR|=RCC_APB2ENR_IOPAEN | RCC_APB2ENR_IOPBEN | RCC_APB2ENR_IOPCEN | RCC_APB2ENR_TIM1EN;

    GPIOA->CRH=SET_CRH(TIM1_CH1_PA,M_OUT_50M,OUT_AF_PP) | SET_CRH(TIM1_CH2_PA,M_OUT_50M,OUT_AF_PP);
    GPIOB->CRH=SET_CRH(TIM1_CH1N_PB,M_OUT_50M,OUT_AF_PP);
    GPIOC->CRH=SET_CRH(LED1_G_PC,M_OUT_50M,OUT_GP_PP) | SET_CRH(LED2_B_PC,M_OUT_50M,OUT_GP_PP);

#ifdef PP_MODE
    //CH1: PWM mode 2, CH2: PWM mode 1, preload enabled on all channels
    TIM1->CCMR1=TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0 | TIM_CCMR1_OC1PE | TIM_CCMR1_OC2M_2 | TIM_CCMR1_OC2M_1 | TIM_CCMR1_OC2PE;
    TIM1->CCER=TIM_CCER_CC1E | TIM_CCER_CC2E;
    TIM1->BDTR=TIM_BDTR_MOE;
    TIM1->CCR1=TMR_T - PWM_VALUE;
    TIM1->CCR2=PWM_VALUE;
    TIM1->ARR=TMR_T;
    TIM1->CR1=TIM_CR1_ARPE | TIM_CR1_CMS_1 | TIM_CR1_CMS_0;
    TIM1->CR1|=TIM_CR1_CEN;
    TIM1->EGR=TIM_EGR_UG;
#endif


zašto bi mi pomogli ?
zato što ću ovde dati moj kod za istu stvar na atmega168 kontrolerima.
možda nekome bude trebalo.
sigurno će trebati.
pozdrav svima.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 01:04 - pre 74 meseci
ne kontam pitanje, pa copy / paste ovoga u stm32duino okruzenje ce da radi ne mora menjas nista ako se ja dobro secam? ... nema bas niko dovoljno dokon al evo nesto na brzaka

Code:

RCC->APB2ENR|=RCC_APB2ENR_IOPAEN | RCC_APB2ENR_IOPBEN | RCC_APB2ENR_IOPCEN | RCC_APB2ENR_TIM1EN;


podesava rcc paraetre (Reset and Clock Control System) - pali klok na APB2 periferiji IOPA, IOPB, IOPC i TIMER1

Code:

    GPIOA->CRH=SET_CRH(TIM1_CH1_PA,M_OUT_50M,OUT_AF_PP) | SET_CRH(TIM1_CH2_PA,M_OUT_50M,OUT_AF_PP);
    GPIOB->CRH=SET_CRH(TIM1_CH1N_PB,M_OUT_50M,OUT_AF_PP);
    GPIOC->CRH=SET_CRH(LED1_G_PC,M_OUT_50M,OUT_GP_PP) | SET_CRH(LED2_B_PC,M_OUT_50M,OUT_GP_PP);

CRH je "gornjih 16 bitova", znaci postavlja za portove A, B i C pinove (gore su ti definisani koji su pinovi u #define delu) na 1
(source: http://embedded-lab.com/blog/stm32-gpio-ports-insights/ )

ovo ti je crh registar


ovo ti je objasnjenje sadrzaja registra


Code:

   //CH1: PWM mode 2, CH2: PWM mode 1, preload enabled on all channels
   TIM1->CCMR1=TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0 | TIM_CCMR1_OC1PE | TIM_CCMR1_OC2M_2 | TIM_CCMR1_OC2M_1 | TIM_CCMR1_OC2PE;
   TIM1->CCER=TIM_CCER_CC1E | TIM_CCER_CC2E;
   TIM1->BDTR=TIM_BDTR_MOE;
   TIM1->CCR1=TMR_T - PWM_VALUE;
   TIM1->CCR2=PWM_VALUE;
   TIM1->ARR=TMR_T;
   TIM1->CR1=TIM_CR1_ARPE | TIM_CR1_CMS_1 | TIM_CR1_CMS_0;
   TIM1->CR1|=TIM_CR1_CEN;
   TIM1->EGR=TIM_EGR_UG; 

pise gore u komentaru, pali pwm1 na mode 2, pwm2 na mode1 pali u pokrece iste


imas ovde semu tajmera ( source: http://embedded-lab.com/blog/stm32-timers/ )


inace iz http://www.st.com/content/ccc/...translations/en.DM00042534.pdf
Citat:


The timer is able to generate PWM in edge-aligned mode or in center-aligned mode with a frequency determined by the value of the TIMx_ARR register, and a duty cycle determined by the value of the TIMx_CCRx register.

PWM mode 1
• In up-counting, channelx is active as long as CNT< CCRx, otherwise it is inactive.
• In down-counting, channelx is inactive as long as CNT> CCRx, otherwise it is active.

PWM mode 2
• In up-counting, channelx is inactive as long as CNT < CCRx, otherwise it is active.
• In down-counting, channelx is active as long as CNT > CCRx, otherwise it is inactive.

Note:
Active when OCREF = 1, inactive when OCREF = 0.
To configure the timer in this mode:
1. Configure the output pin:
a) Select the output mode by writ ing CCS bits in CCMRx register.
b) Select the polarity by writing the CCxP bit in CCER register.
2. Select the PWM mode (PWM1 or PWM2) by writing OCxM bits in CCMRx register.
3. Program the period and the duty cycle respectively in ARR and CCRx registers.
4. Set the preload bit in CCMRx register and the ARPE bit in the CR1 register.
5. Select the counting mode:
a) PWM edge-aligned mode: the counter must be configured up-counting or down-counting.
b) PWM center aligned mode: the counter mode must be center aligned counting mode (CMS bits different from '00').
6. Enable the capture compare.
7. Enable the counter.


u svakom slucaju savet je mani se arduina, skini atolic true studio (sad se zove valjda stm32 true studio), full je ide i free je i radi do jaja sa stm32, skini cubemx, tamo lepo nacrtas sta oces i on ti izgenerise sve ovo ... ako vec neces da citas sta je koji registar onda klikci i zaobidji stm32duino


 
Odgovor na temu

cukovanny
svaštar
glx
Planina

Član broj: 44538
Poruke: 966
93-87-143-132.dynamic.isp.telekom.rs.



+39 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 06:54 - pre 74 meseci
bogdane, pa ovo je najbolja indirektna pomoć u svetskoj konkurenciji na olimpijadi indirektnih pomoći :)

Citat:
ne kontam pitanje, pa copy / paste ovoga u stm32duino okruzenje ce da radi ne mora menjas nista ako se ja dobro secam?


ne radi u stm32duino okruženju sa copy/paste ni iz daleka. onaj koji je portovao funkcije , promenio je nomenklaturu, tako da klasa npr. TIM1 iz originalnog koda, u stm32duino okruženju dobija ime TIMER1_BASE..... e sad, logika kaže ajde jedan od članova te klase je CCMR - to prolazi, ali bitset, odnosno maska TIM_CCMR1_OC1M_2 ili TIM_CCMR1_OC1M_1 ili TIM_CCMR1_OC1M_0 nema nikakve šanse ... a dokumentacija za stm32duino je štura ...

arduinov kompajler vraća: error , TIM_CCMR1_OC1M_2 was not declared in this scope !



enivej, ostaje mi da iščitavam za sada stm32duino dokumentaciju, uz veliku prednost koju mi ti dade...


Citat:
u svakom slucaju savet je mani se arduina, skini atolic true studio (sad se zove valjda stm32 true studio), full je ide i free je i radi do jaja sa stm32, skini cubemx, tamo lepo nacrtas sta oces i on ti izgenerise sve ovo


to je sjajno! treba li neki hw specijalan za upucavanje koda ili ?
 
Odgovor na temu

MilanCeNS
Milan Manojlovic
Novi Sad

Član broj: 98748
Poruke: 39
*.216.165.0



Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 07:06 - pre 74 meseci
Ja već godinama čitam Bogdanove odgovore na mnoga pitanja i oduševljavam se
koliko ima volje i želje da pomogne. Svaka čast.
 
Odgovor na temu

cukovanny
svaštar
glx
Planina

Član broj: 44538
Poruke: 966
93-87-143-132.dynamic.isp.telekom.rs.



+39 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 08:34 - pre 74 meseci
istina.

da objasnim šta radim i zbog čega pokrenuo temu :

radim (meni) zanimljiv projekat MCU kontrolisanog smps buck/bust tipa.
to treba da bude integrisano okruženje sa LCD info na prvu ruku U(in) / U(out), I(in) / I (out) , remote ethernet parametri, digitalna štela izlaza, ogr. struje itd itd. sve to na FN sistemima... Integrisani invertor monofazni/dvofazni/trofazni ... itd itd


ovakva rešenja da se kupe gotova, cenovna kategorija zavisno od snage ide od 500eur do 20k eur.


avr sam pretresao insideout. dspic mi nije ciljana platforma, ali stm32f10X je logična.
mali ima snage za sve što mi treba.
na žalost, atmega ima snage samo toliko da radi korekciju pwm , ma koja topologija smps-a bila ...
ima, doduše, malo preko snage da se poneki potrošač uklj isklj , i to samo ako se radi sa kompariranjem, nikako A/D ulazima.

brzina korekcije napona izlaza smps u sledećem kodu AVR-a (obećao sam) je oko 20.000 puta u sekundi.
stvar radi lepo i sa velikim snagama. ali to nije tema ovog posta i foruma.
pwm je 100Khz, "phase correct pwm" , deathtime propisan. H most zadovoljan.

Code:
// 03.02.2018       100kHz
// Pin 9 i 10 su izlazi PWM
// A0 piše kec ili 0 u zavisnosti kako si podesio v.divider ili tl431 ako hoćeš opto razdvajanje

#define Kristal 16000000            // kristal arduina 16mhz
#define Frekvencija 100000            // ovde ide frekv pwm koja ti treba

#define VrednostICR1 Kristal/Frekvencija/2
#define VrednostOCR1A (VrednostICR1 / 2) + 10
#define VrednostOCR1B (VrednostICR1 / 2) - 10

//-----------------------------------------------------------------------
//
//-----------------------------------------------------------------------
void setup() {
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);

  TCCR1A = 0;
  TCCR1B = 0;
  TCNT1 = 0;

  TCCR1B |= _BV(CS10);


  ICR1 = VrednostICR1;

  OCR1A = VrednostOCR1A;
  TCCR1A |= _BV(COM1A1) | _BV(COM1A0);

  OCR1B = VrednostOCR1B;
  TCCR1A |= _BV(COM1B1);

  TCCR1B |= _BV(WGM13);
  TCCR1A |= _BV(WGM11);
}
//-----------------------------------------------------------------------
// pin A0 komparator 2.2V valjda, ili je 1.1V ?!?, proveri koji je nivo bapona jedinica u atmega168 ???
//-----------------------------------------------------------------------
void loop()
{
  if (PINC & 1)            // arduino A0 pin atmega168
  {
    OCR1A = VrednostICR1;
    OCR1B = 0;
  }
  else
  {
    OCR1A = VrednostOCR1A;
    OCR1B = VrednostOCR1B;
  }
}


UPDATE : referentni nivo jedinice u atmega je okolo 2.2-2.3VDC

 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 09:29 - pre 74 meseci
Mislim da ti je bolja platforma STM32F4 ili čak STM32F7. Imaš familije sa LCD i ethernet kontrolerom na čipu, imaš DSP i FPU, moćniji sistem tajmera za PWM... Takođe, što bi se uopšte zezao sa xxxduino. Uzmi lepo Atollic, CubeMX, STM32Cube_FW_F4 ili STM32Cube_FW_F7 i neki STM32_Discovery i vozi.
gorankg
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 13:29 - pre 74 meseci
Citat:
cukovanny:
ne radi u stm32duino okruženju sa copy/paste ni iz daleka.

pih bre, na prvi pogled je delovalo da je 1/1

Citat:
cukovanny:
Citat:
u svakom slucaju savet je mani se arduina, skini atolic true studio (sad se zove valjda stm32 true studio), full je ide i free je i radi do jaja sa stm32, skini cubemx, tamo lepo nacrtas sta oces i on ti izgenerise sve ovo

to je sjajno! treba li neki hw specijalan za upucavanje koda ili ?


pa vidi ti u svaki ARM mozes da upucas sw preko seriskog porta to si do sada valjda skontao.. truestudio sigurno nece raditi kroz arduino bootloader na bluepill-u ili sta vec od stm32duino hw-a koristis ali taj bootloader je svakako uzas tako da ga savetujem zaobilaziti svakako...

ne znam sta od hw-a trosis ali obzirom da pises o F103 kontam da si verovatno kupio par bluepill-a ili redpill-a posto je to najjeftinija plocka sa 103 koju mozes da nadjes :D (obrati paznju na bluiepill R10 je 10k umesto 1k5 usb pullup i zbog toga usb ne radi svuda kako treba, zamenis taj otpornik sa 1k5 i radi usb mnogo bolje) ... elem, ako imas bluepill nekoliko komada mozes jedan da promovises u black magic probe - odlican debuger i programer alat... ili, sto je idealna varijanta, uzmes ovako nesto za 3-4$:
https://www.ebay.com/itm/Mini-...M32-w-Metal-Shell/122929448536
https://www.ebay.com/itm/Mini-...STM32-Metal-Shell/152216586407
to ti je stlink v2 klon podrzava ga skoro sve sto radi sa armovima direkt debagiras iz truestudia ili keila ili ...

tako da.. stm32cubemx prvo, u njemu naklikas i konfigurises svu periferiju, on ti izgenerise projekat za truestudio (ili keil ili ..) i onda ucitas projekat u truestudio i vozi misko
https://pasteboard.co/H9hkLYi.png

https://pasteboard.co/H9hlo12.png

https://pasteboard.co/H9hlLYX.png


 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 13:47 - pre 74 meseci
inace slazem se sa kolegom da ti je F4 ili F7 bolje resenje, ne samo zbog dsp i fpu vec ako hoces da imas eternet i lcd onda ti je F1 malecan ...

pogledaj razne discovery plocke ovde: http://www.st.com/en/evaluatio...querycriteria=productId=LN1848
http://www.st.com/content/st_c...ery-kits/32f746gdiscovery.html
http://www.st.com/content/st_c...ery-kits/32f429idiscovery.html

malo vise kosta nego bluepill ali kad pogledas sta sve dobijes isplati se
 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 16:20 - pre 74 meseci
Treba ti žešća matematika za konvertor koji misliš uraditi. Neće moći STM32F1xx a dsPIC je mnogo bolje rešenje nego taj STM. U praznom hodu i nekako ali zamisli šta se dešava pri naglim promenama opterećenja. Moraš da imaš regulaciju a za to ti treba matematika. LCD ima da ti bude najmanja briga. Evo ti jedan AN od ST baš na tu temu "Buck-boost converter using the STM32F334 Discovery kit":

http://www.st.com/content/ccc/...translations/en.DM00108726.pdf
gorankg
 
Odgovor na temu

cukovanny
svaštar
glx
Planina

Član broj: 44538
Poruke: 966
93-87-143-132.dynamic.isp.telekom.rs.



+39 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 19:17 - pre 74 meseci
hvala kraljevi na savetima, ali ja sam samo obična amaterčina koji uživam u smps-u, konverzijama energija itd....
volim i mikrokontrolere i to mi je sve deo hobija koji jako volim i "gubim" mnogo vremena .... samim tim sam daleko od nivoa znanja koji se zahteva za ono što mi preporučujete.

sve što sam radio oko MCU su 8pin/8bit atmel i sada arduino/atmega...
u elektronici sam isto tako početnik.

kad vidim koliko toga moram savladati u stm32 familiji kontrolera, dođe mi da odem na neki odmor od 5 meseci samo da mu povatam registre i flow :)

mada, iz iskustva znam da će to sve doći radom i trudom....

Citat:
goran_68: Treba ti žešća matematika za konvertor koji misliš uraditi. Neće moći STM32F1xx a dsPIC je mnogo bolje rešenje nego taj STM. U praznom hodu i nekako ali zamisli šta se dešava pri naglim promenama opterećenja. Moraš da imaš regulaciju a za to ti treba matematika. LCD ima da ti bude najmanja briga. Evo ti jedan AN od ST baš na tu temu "Buck-boost converter using the STM32F334 Discovery kit":

http://www.st.com/content/ccc/...translations/en.DM00108726.pdf


za sada sam hteo da ono parče koda sa početka teme "preteram" u arduino ide, i da mi to proradi, pa da vidim kakav će tranzijentni odziv imati smps kojeg pogoni stm32f103 i kojeg simultano mori upravljanje lcd i ethernetom.... međutim dokumentacija i primeri na netu su gotovo nepostojeći .... nigde ne mogu da nađem kako je dasa koji je portovao librarije nazvao delove registra i maske kad ih je preneo u arduino ide...


vidim ja, učiće se taj stm32cubemx i da se kupuje st-link....

Citat:
bogdan.kecman:
ne znam sta od hw-a trosis ali obzirom da pises o F103 kontam da si verovatno kupio par bluepill-a ili redpill-a posto je to najjeftinija plocka sa 103 koju mozes da nadjes :D (obrati paznju na bluiepill R10 je 10k umesto 1k5 usb pullup i zbog toga usb ne radi svuda kako treba, zamenis taj otpornik sa 1k5 i radi usb mnogo bolje) ... elem, ako imas bluepill nekoliko komada mozes jedan da promovises u black magic probe - odlican debuger i programer alat... ili, sto je idealna varijanta, uzmes ovako nesto za 3-4$:
https://www.ebay.com/itm/Mini-...M32-w-Metal-Shell/122929448536
https://www.ebay.com/itm/Mini-...STM32-Metal-Shell/152216586407
to ti je stlink v2 klon podrzava ga skoro sve sto radi sa armovima direkt debagiras iz truestudia ili keila ili ...



trošim STM32F103C8T6, to je valjda bluepill. nabavio 10 komada za sitne pare. privukao me je snagom , cenom , jednostavnošću (khm, khm) ...
jes jednostavan kad hoćeš nešto jednostavno, ali složeni poslovi zahtevaju ozb posvećenost. vidim da je loše portovan čitav i2c i wire i da ne radi (kažu radi).
pročitaću sve što si mi napisao detaljno. volim ekstrakte znanja , ali isto tako svestan da prečica nema ....

 
Odgovor na temu

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 20:13 - pre 74 meseci
Ako ti treba postovaću ovde par primera za blue pill i CUbeMX

gorankg
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 21:40 - pre 74 meseci
Pogledaj ovo za pocetak:
http://www.elitesecurity.org/p3794487

Preporucujem ti da uzmes Keil MDK ARM, Arduino IDE "posle" ... : )

Tajmere od STM32 bi valjalo da savladas, mora se cita dokumentacija, evo cookbook sta sve rade sa njima:
http://www.st.com/content/ccc/...translations/en.DM00236305.pdf

Taj PWM u STM32F103 je "onako", prosecan, ima ovakvu rezoluciju naspram generisane frekvencije:

16bit @~1kHz,
15bit @2k,
14bit @4k,
13bit @8k,
12bit @16k,
11bit @32k,
10bit @64k
9bit @128k
8bit @256k

Recimo dsPIC33EP64MC202 tuce ove rezultate 3-4x bolje i ako je 16bitni kontroler (DSC), famozni Texas Instruments isto 16bit DSC Piccolo tuce te rezultate 10x, dok njihov Delfino tuce jedno 15x !!!
Piccolo ima 150ps rezoluciju PWM-a, Delfino 70ps (piko sekunde)!
Drugi ST ARM kontroleri imaju HRPWM, pogledaj malo oko toga, cisto da znas kakve su mogucnosti i sta mozes da ocekujes ...

ST-LinkV2 nabavi, to je stalno potrebna stvarcica a to ce ti ustedeti gomilu muka sa USB i bootloaderima i cudima raznim, uzmes Keil i taj programator, nabodes na Blue Pill i vozi Misko, imas odlican debug i teraj, snalazi se, to je to :)
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 22:24 - pre 74 meseci
Jos malo dokumentacije oko STM32 tajmera:
http://homepage.cem.itesm.mx/c...rs/SLIDES/STM32F3%20Timers.pdf
http://mazsola.iit.uni-miskolc...4/DM00042534_stm32f4_timer.pdf

Ovo je za F7 tajmere, imaju neke jos dodatne opcije koje nemaju druge serije:
http://www.st.com/content/ccc/...n.STM32F7_WDG_TIMERS_GPTIM.pdf

Dithering za poboljsanje rezolucije:
http://www.st.com/content/ccc/...translations/en.DM00119042.pdf

Tajmeru su im generalno vrlo "mocni" ali i kompleksni, srz je skontati kako oni interno rade i kako se to moze iskoristi za neku konkretnu potrebu, ima gomila mogucih kombinacija resenja sa tajmerima, uvezu se medjusobno ovako-onako, preko DMA sa A/D konverterom i tako dalje, krenes lagano od pocetka samo da pokrenes PWM na nekoj ucestanosti u open-loop postavci pa posle dalje redom jedno po jedno resavas, tu ne pomaze ni Arduino ni CubeMX, jednostavno mora da se poznaje interna struktura tajmer modula da bi mogao da odradis ono sto hoces. Cak tu postoje vrlo specificne funkcije bas predvidjene za SMPS, postoje break-inputi (fault) i dead-time generator, to je bas za to predvidjeno ali moras da skontas tacno kako to interno funkcionise da bi mogtao da iskoristis.

Kad ti se to malo "zavrti" onda predji na A/D konverter pa probaj da stavis to u kontrolnu petlju ... tu pocinje veselje ali dok dodjes dotle neke stvari ce ti biti jasnije ili pitaj ovde sta nije jasno ...



[Ovu poruku je menjao mikikg dana 26.02.2018. u 00:40 GMT+1]
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 22:51 - pre 74 meseci
PS: Keil je super zgodan jer mu je KOMPLETNA definicija svih registra i flagova u jednom heder fajlu stm32f10x.h, 98% svih naziva se uglavnom poklapa sa oficialnom dokumentacijom a i ako nesto se ne poklapa, caskom moze da se skoci u taj fajl i pronadje tacna definicija tako da nema previse lutanja kao sa ostalim StdLib-ovima i gomilom overhead krsha koji dodaju Arduino i CubeMX, tu se vrte prakticno 4-5 neka registra koja zavrsavaju posao koje prozivas u po jednoj C instrukciji, prosto ...
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull25.02.2018. u 23:11 - pre 74 meseci
Pitanje za iskusnije STM-ovce, sto ne moze onda da se Blue Pull pretvori u ST-LinkV2 (ne u Black Magic Probe) ?

Jel ima HEX negde za ST-LinkV2? (mora da ga ima negde cim kinezi to stancuju na tone)

Kako isprogramirati to ako korisnik na lageru ima samo Blue Pill(ove) i seriske adaptere? : )

Da se prvo napravi BMP od Blue Pill preko BOOT1-USART, pa sa njim da se upuca HEX za St-LinkV2, ili moze da se preskoci BMP korak?
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull26.02.2018. u 01:43 - pre 74 meseci
- sto bre keil koji kosta ko bubreg kad je truestudio sada bedza, a u
kombinaciji sa cubemx i jedan i drugi koriste potpuno iste hedere (te su
definicije portova, registara i slicno absolutno identicne)... pri tome
je truestudio sada u vlasnistvu stm-a i radi besno sa svim stm32 cipovima?

- moze bluepill u st-link v2 direktno, upucas mu direkt hex od st-linkv2
sa nekim drugim programatorom (drugim stiinkom) .. mada su vec gotovi
stlinkovi toliko bedza da se ne isplati :D (nisam otvarao da vidim dal
je unutra st32 ili gd32, gd32 je brza kopija pogledaj sta je sjaak pisao
kod njega na blogu https://smdprutser.nl/blog/category/gd32/ )
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull26.02.2018. u 01:47 - pre 74 meseci
inace trenutno no1 ide po meni je https://www.embitz.org/ ... em je
free, em je mali, em je sumanuto brz em su uspeli da nabudze svoj
debuger koji izvlaci kroz stlinkv2 stvari koje nijedan drugi debuger ne
moze, tj za koje svi debugeri zahtevaju one 500eur+ jtag adaptere... tj.
ima "live variables" i "EBmonitor" (i nije vezan za stm radi sa svima)
... mada ja za pocetnike poput kolege op-a savetujem stm32cubemx +
truestudio .. mnogo bolji ide od keila, dzaba, potpuno podrzan od strane
stm-a, isprobano dobar i stabilan..
 
Odgovor na temu

cukovanny
svaštar
glx
Planina

Član broj: 44538
Poruke: 966
93-87-143-132.dynamic.isp.telekom.rs.



+39 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull26.02.2018. u 06:47 - pre 74 meseci
Citat:
goran_68: Ako ti treba postovaću ovde par primera za blue pill i CUbeMX


ajde goran_68
idi u detalje koliko ti vreme i obaveze dozvoljavaju.
ja sam trenutno u hendikepu jer nemam taj mali Mini ST-Link V2 Stlink Emulator Downloader Programming STM8 STM32 w/ Metal Shell.
ali ide jedan iz kine i jedan iz bg, "paćmo gubit zimskoga vremena" :)


kolega mikikg, neka si se uključio, znam da voliš dsPic :)
ima u ovom projektu tvojih zasluga , ali i direktnih komponenti, ali o tome tamo u podforumu elektronika :)
reduciri footprintova koje si mi poklonio su mi bili presudni da počnem da se bavim sa integralcima veličine kapljice kalaja na lemilu :)
odoh sad na posao pa te čitam posle.
pozdrav svima.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull26.02.2018. u 06:53 - pre 74 meseci
za pocetak instaliraj stm32cubemx i probaj ga, klikci po njemu
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: STM32F103 push pull i AVR (atmega168) push pull26.02.2018. u 07:57 - pre 74 meseci
prva dva videa za startup

https://www.youtube.com/watch?v=YZjnCOun1wU

https://www.youtube.com/watch?v=JnmjmP2Xchg
 
Odgovor na temu

[es] :: Elektronika :: Mikrokontroleri :: STM32F103 push pull i AVR (atmega168) push pull

Strane: 1 2

[ Pregleda: 6864 | Odgovora: 34 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.