PinnedPhil MulhollandA Deep Dive into Low-Level Hardware Access with C: Examples for RISC-VA step-by-step approach withhands-on examples for mastering the art of low-level programming in C for RISC-V machines.Mar 20, 20231Mar 20, 20231
Phil MulhollandNitpicking a Dumb Machine, the Imaginative Coding of ChatGPT.My attempt at using ChatGPT to code was not a success, but it’s attempted solutions were imaginative.Dec 12, 2022Dec 12, 2022
Phil MulhollandCoding in C for MCUs: Sort Structs to Save Code SizeExploring the Impact of Hardware Architecture on CodeFeb 18, 2022Feb 18, 2022
Phil MulhollandThings to Think About When Doing Low-Level Embedded Systems Development.What are the foundations of designing and implementing low-level software that interacts with real-world systems?Aug 19, 2021Aug 19, 2021
Phil MulhollandRISC-V: A Baremetal Introduction using C++. Conclusion.This is the last post in the series.Jun 25, 2021Jun 25, 2021
Phil MulhollandRISC-V: A Baremetal Introduction using C++. Interrupt Handling.This is the seventh post in a series. This post is about RISC-V interrupt handling in C++.Jun 13, 20211Jun 13, 20211
Phil MulhollandRISC-V: A Bare-metal Introduction using C++. Machine Mode Timer.This is the sixth post in a series, about the RISC-V machine mode timer and timing keeping using the C++ std::chrono library.Jun 7, 2021Jun 7, 2021
Phil MulhollandRISC-V: A Baremetal Introduction using C++. System Registers.This is the fifth post in a series.Jun 7, 2021Jun 7, 2021
Phil MulhollandModern C++ for Bare-metal RISC-V — Zero to Blink. Part 3, Startup.May 29, 2021May 29, 2021
Phil MulhollandModern C++ for Bare-metal RISC-V — Zero to Blink. Part 3, Development EnvironmentMay 23, 2021May 23, 2021