/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
01 / propose a final project
02 / press fit construction kit
03 / in-circuit programmer
04 / 3d printing + scanning
05 / computer-controlled machining
06 / electronics design
07 / molding + casting
08 / embedded programming
09 / composites
10 / input devices
11 / output devices
12 / networking + communications
13 / interface + application programming
14 / final project
This week I experimented with asynchronous serial communication to send data between blinking LED boards. "Serial" means the transfer of bits of data one after the other, and "asynchronous" means the transferring happens without any external shared time source or clock.
I created a schematic for the "node" board, which will receive data through my laptop via the "bridge" board. I wanted to continue to work with the RGB LEDs, so I incorporated five this time. Raj, our TA for this week's section, suggested that I use N-Channel MOSFETs to sink current, given that I have multiple LEDs (more on MOSFETs). I made three of these boards (but only two worked).
Here's one of the node boards plugged in (I designed it so that it could be powered individually by a 9v battery, for future use).
I made one "bridge" board based on Neil's example, incorporating an RGB LED. This board has an FTDI Serial connection which enables it to communicate with my computer.
Here are the three nodes (only one functional... I think the top one may have had a short) along with the bridge board in the lower right.
I uploaded the "hello-bus" code onto each of the boards, making only one change to the code for each: an individual "node" assignment (0 for the bridge, 1 for the first node, and 2 for the second node).
Here is asynchronous serial communication in action. After programming each board and connecting them via the "bus" four pin connector, I open Serial Monitor. Whenever I type any character, all boards blink. When I type a "0," the bridge board blinks twice. When I type "1," node 1 blinks twice, and so on.
/ / / / / / / / / /
Eagle Files:
RGB-bridge.sch / RGB-bridge.sch
PNG Files:
Bridge-traces.png / Bridge-cutout.png / Node-traces.png / Node-cutout.png