Embedded Wednesdays: The Basic Structure of C Code
The first C program that everybody gets going is Hello, World! This week Andrei introduces the basic structure of C programs.
Read MoreThe first C program that everybody gets going is Hello, World! This week Andrei introduces the basic structure of C programs.
Read MoreHow many words does it take to turn on a light bulb? 1200. And that's just Part 1.
Read MoreThis week, Embedded Wednesdays takes a look at arrays in the C language.
Read MoreIn microcontrollers, as in real estate, it's all about location.
Read on to learn about microcontroller memories.
Read MoreBB-8 has a patrol mode where it acts autonomously. An exploration of that leads to an introduction to RTOSs, comparing processors, and programming languages. Happily, it all ends in a section that makes some suggestions for you to try out.
Read MoreBooleans, how difficult can that be, right? TRUE or FALSE, 1 or 0.
This week on the Embedded Wednesdays post, we look at the bool data type that was introduced in C99. Experienced C programmers should read this too, right? TRUE.
Read MoreAnswer these twelve questions to find out what kind of communication bus you are!
Read MoreDo you write software for a living? Or design hardware? Or maybe some of each? While the particular projects any two software or hardware designers do may be worlds apart, we can characterize what we do in the same way: our work is 20% technology and 80% psychology.
Read MoreThis week Andrei gives an overview of the char type in the C language. C has some issues with character strings and Andrei goes into buffer overflow problems and missing terminators in the strcpy function. This a post that should be read all of the way through by all C programmers. Make sure you can spot the bugs in the code.
Read MoreThis one weird trick to blink a light will shock you!
Or it'll tell you how to compile, download, run, and debug code on an MSP430.
I'm not sure which. Read on to find out.
Read MoreOnce upon a time, I met an early-career engineer weighing two job offers. My advice centered around interesting work and supportive teams. However, it is also important to understand your options.
Read MoreI started with simple state machines last week. This week I want to talk about more complex state machines and interrupts. These are software topics but we’ll get back to the hardware soon.
The karaoke buttons that control music playback are far more complicated than either its disco button or the quadcopter’s power on sequence; if you press play on the karaoke, what happens? What if the door is open? What if there is no CD? What if it is already playing?
Read MoreJackie Stewart was the Formula 1 World Driving Champion in 1969, 1971, and 1973. He raced in the Can-Am series (even here in Edmonton) butting heads with the likes of Bruce McLaren himself.
One thing that Jackie had going for him was that he was smooth. He became a part of the car, they worked together. He worked hard to understand what the car was telling him, and how to get the car adjusted to work with him. He had Mechanical Sympathy.
In computing, we are given operating systems, compilers, databases, and machines. By getting our own version of mechanical sympathy, we can understand what is happening, and use our knowledge to get the maximum out of our systems.
In this post, Andrei goes a little deeper into mechanical sympathy and gives some links to videos and podcasts for your enjoyment.
Read MoreToday, I’ll tell you about the various development environments for the MSP430 and install the one we’ll be using.
Read MoreHaving considered digital inputs and outputs, you’ve already seen more than 50% of a toy’s hardware. Oh sure, we should talk about the fancier sensors, motor control, and audio outputs but those are one-offs, specific to a toy’s particular function. Many toys don’t have them or only have one; buttons and lights are enough for some toys...
I’ve mentioned the processors in the toys a few times. I can’t show you what is inside the software (partially because the designers sensibly locked out the ability to read the code from their processors). I can show you how to figure out what is in the software without breaking any laws or copy protection.
In this week's installation of Embedded Wednesdays, Andrei gives an overview of floating point numbers. He goes over a bunch of practical issues that go along with using floats including truncation, and repeating binary patterns.
If you use floats in your program, it may not be doing what you meant. That slow response may just be because - well, read on...
Read MoreHopefully you’ve got your shiny new red MSP430 dev kit, so let’s start using it! It’s also okay if you don’t have one yet - we’ll do a basic test of the hardware this week, and continue with more detail next week.
Read MoreAs a nebulously-defined “Hackaday advisory judge”, I want to try out advising folks on their Hackaday Prize entries. On our podcast, I offered to take a look at a project and score it as I would if I were doing the contest judging. William offered up his last-year’s USB Tester as an example project.
Note: last year around this time, I wrote about how to win the Hackaday Prize on element14. That may be a better introduction to all this as I’m going to leap to details now.
Read More