Vai al testo principale

STM32 bare-metal made easy

Some time ago, I wrote a post explaining why a minimal knowledge of bare-metal programming is a must for a modern MCU programmer.

Here is a follow up, showing a minimal example with a cheap, though quite popular hardware setup. The application will show you how to:

  • prepare the Makefile and linker script with no external dependencies;

  • write the minimal code to boot the board, set the clock and initialize the UART;

  • have a loop writing data to UART, once every second.

Continua la lettura…

MAC spoofing con indirizzo casuale generato dal kernel Linux

Stavo litigando con un Microchip LAN 9500 senza la EEPROM in cui salvare il suo indirizzo MAC. Usando il driver smsc95xx fornito dalla mainline di Linux, mi sono accorto che il kernel stava (ragionevolmente) creando un indirizzo random ad ogni reboot.

Al mio cliente questo non piaceva, e del resto l'oggetto avrebbe dovuto lavorare solo all'interno di una LAN, così ho iniziato a cercare un modo per fare MAC spoofing.

Continua la lettura…

Una semplice funzione C per radici quadrate di numeri interi

Quando si lavora con i microcontrollori, spesso il coprocessore matematico per la virgola mobile (Floating Point) non è disponibile in hardware. Le toolchain, di solito, al giorno d'oggi forniscono una simulazione software dei numeri in virgola mobile e delle funzioni matematiche più comuni: questo però risulta piuttosto oneroso in termini di tempo computazionale, e può essere inutile dal punto di vista pratico, dato che i dati in ingresso sono normalmente numeri interi (ad esempio, gli ingressi di un convertitore A/D).

Continua la lettura…

Il mio primo post

Benvenuti nel mio blog. Mi chiamo Aurelio Colosimo. Nel mio blog pubblicherò presto qualche bozza o piccolo progetto riguardante sistemi elettronici, algoritmi e codice opensource per sistemi embedded.

Se volete sapere qualcosa in più su di me, questo è il mio sito internet: https://www.aureliocolosimo.it.