03-05-2019, 12:54 PM
Jedan zanimljiv detalj zasto smo inace presli na STM32 i vezan je bas za to "togle i setovanje" jednog bita na nekom portu.
Kod STM32 posto ima 32bitni memoriski prostor, oni su iskoristi jedan segmen i adresirali pored klasicnog "celog" porta pa upisujes 8, 16 ili 32 bit duzinu podatka, postoje bit-mapirane adrese tako da mozes sa posebnim instrukcijama da postavis 0 ili 1 na bilo koji pin u portu i to "atomski" dakle ne radi se read-modify-write nad celim portom nego procesor moze u jednoj isntrukciji da setuje jedan bit na portu sto je fenomenalna opcija i ja sam je bar prvi put bideo kod ARM STM32 i mnogo je korisna posebno zbog interapta jer ne mozes da napravis "race conditions" i da zabrljas ostale bitove na portu jer operises islkljucivo jednim bitom u jednoj istrukciji!
Kod STM32 posto ima 32bitni memoriski prostor, oni su iskoristi jedan segmen i adresirali pored klasicnog "celog" porta pa upisujes 8, 16 ili 32 bit duzinu podatka, postoje bit-mapirane adrese tako da mozes sa posebnim instrukcijama da postavis 0 ili 1 na bilo koji pin u portu i to "atomski" dakle ne radi se read-modify-write nad celim portom nego procesor moze u jednoj isntrukciji da setuje jedan bit na portu sto je fenomenalna opcija i ja sam je bar prvi put bideo kod ARM STM32 i mnogo je korisna posebno zbog interapta jer ne mozes da napravis "race conditions" i da zabrljas ostale bitove na portu jer operises islkljucivo jednim bitom u jednoj istrukciji!