Da li vredi da se pišu biblioteke za periferije od 0, u cilju boljeg razumevanja rada periferije (da zanemarimo optimizaciju veličine programa itd.)?
Konkretno (radim sa Blue Pill), u Keil IDE, ja sam krenuo sa tim da uvezem stm32f10x.h, CMSIS Core, da ne bih ručno morao memorijske lokacije da određujem, i onda krenuo prema reference manual-u i po ugledu na njihov .h fajl da pišem definicije i funkcije za inicijalizaciju pinova itd. Znači direktno baratam raspoloživim registrima u periferiji i čitam/menjam sadržaj. A to da bih kasnije mogao da ih koristim kao gotove funkcije, i da ne moram iz main-a da pristupam direktno registrima i radim sa bitskim operacijama, već samo pozovem svoju funkciju. Znači bukvalno implementiram svoju biblioteku, samo na svoj način.
Verovatno mnogi misle da je to Sizifov posao, ja probao na početku da radim sa CubeMX, super je to, dodele se pinovi, periferije, on generiše sve što treba, samo se popuni kod, ali mi se to ne sviđa, ne tera me da zađem dublje u arhitekturu mikrokontrolera. Naravno, mogu ja to da pročitam kad mi zatreba, ali mislim da se mnogo bolje uči kad to prođe kroz ruke. Kasnije mogu opušteno da pređem na gotove biblioteke ako bude potrebno, mislim da će tranzicija biti mnogo lakša.
Šta mislite?
Konkretno (radim sa Blue Pill), u Keil IDE, ja sam krenuo sa tim da uvezem stm32f10x.h, CMSIS Core, da ne bih ručno morao memorijske lokacije da određujem, i onda krenuo prema reference manual-u i po ugledu na njihov .h fajl da pišem definicije i funkcije za inicijalizaciju pinova itd. Znači direktno baratam raspoloživim registrima u periferiji i čitam/menjam sadržaj. A to da bih kasnije mogao da ih koristim kao gotove funkcije, i da ne moram iz main-a da pristupam direktno registrima i radim sa bitskim operacijama, već samo pozovem svoju funkciju. Znači bukvalno implementiram svoju biblioteku, samo na svoj način.
Verovatno mnogi misle da je to Sizifov posao, ja probao na početku da radim sa CubeMX, super je to, dodele se pinovi, periferije, on generiše sve što treba, samo se popuni kod, ali mi se to ne sviđa, ne tera me da zađem dublje u arhitekturu mikrokontrolera. Naravno, mogu ja to da pročitam kad mi zatreba, ali mislim da se mnogo bolje uči kad to prođe kroz ruke. Kasnije mogu opušteno da pređem na gotove biblioteke ako bude potrebno, mislim da će tranzicija biti mnogo lakša.
Šta mislite?