C is for Cookie, and also C.Read More
Not that long ago, tech pundits would run articles like “The biggest technology flops in history” and “Apple’s Worst Products and Biggest Failures”. These lists would always contain Apple’s Newton handheld computer. Was it a failure? I don’t think so, but you can decide for yourself.
It’s 9:31, do you know where your bits are? A lot of real time clocks use binary coded decimal or BCD to store the time. BCD isn’t a common format but you will probably run into it at some point. This time, we look at BCD and how to convert it to binary.Read More
In a previous post, Andrei discussed the switch statement. In this post, he gives a more indepth review of switch and then deeply dives into the default case.
Rather than just leaving it out, default can be used to detect the impossible. Read on to handle whoopses, neutrino hits, and beer. And remember, be assertive, but be kind to your future self.Read More
This week, we take a look at the firmware involved in using the SPI bus. From the function calls to control the select pin then send out some data via the SPI bus, the form and specifics of the command structure for an accelerometer, and then we get some data flowing.
Busted data sheets, 16-bit values, and right handed chips - how can you pass this up?Read More
This time, Andrei blends together schematics and oscilloscope traces, pours over data sheets and diagrams, and sifts through the jargon of SPI.
The result is a richer understanding of SPI with a side of CubeMX parameters.Read More
In this post, Andrei explains an unexpected exception caused by following a pointer.
It's an exploration of the translation of C code into assembly and what happens when the compiler tries to figure out what you are doing wrong.Read More