Category Archives: Week 6 Assignment

UART protocol research (Week 6)

UART

Universal Asynchronous Receiver / Transmitter : One of serial communication standards that Arduino can do with other devices. Its principle is similar to the conversation between two people. In order to have conversation, we need ears to hear, and mouth to talk. What one person talks through mouth goes to the ears of the other person. In this context, we can compare ears to RX(Receiver), and mouth to TX(Transmitter). The point is this: the data coming out of one side of TX(mouth) goes to other side of RX(ears), not TX(mouth). Which means, between different devices, RX and TX should be cross-linked.

In addition to RX and TX, electronic devices need to be linked ground to ground. Because each device has its own electric potential, unless one device’s ground is connected to another device’s ground, the data transmitted cannot be received correctly.

Continue reading

TAP BOX – Carla Molins

  • Goal of the project and/or desired interaction

Music box that creates different tones through 8 different capacitive sensors (tags). I wanted to try out a different interface for the instrument that provided a tactile experience too.

  • Quick description of assembly and list of core components

– 1x Arduino

– 1 x medium breadboard.

-CAP1188-8-Key Capacitive Touch Sensor Breakout

– Wires

Continue reading

Week 6 Assignment_Joyce

Goal:

The goal of this project is to use Capacitive sensing + piezo to create a song.

Components:

 

LCD x1

 

photocell x1

arduino board & breadboard

potentiometer x1

GitHub: https://github.com/joycemolly/cc-lab/blob/master/Use%20Capacitive%20sensing%20%2B%20piezo%20to%20create%20a%20song.

How the LCD works:

Arduino LCD Tutorial Circuit Schematic

UART Examination Week 6

Contrary to the assignment, a UART also known as the Universal Asychronous Receiver/Transmitter is not a communication protocol, but a physical circuit that transmits and receives data through the serial port. Though similarly to protocol like SPI and I2C, UART is another method to transmitting and receiving serial data from other devices. This transaction of serial data or dialog between devices is an electronics form of language, in other words communication protocols. UART (according to circuitbasics) is a relatively old communication method and like stated in its name, is asychronous language. In computing, Asychronous indicates a dialog between UARTs is defined by a start and stop notification in a data series versus a clock that synchronizes the output to the receiving UART. A UART and a I2C can send a limited amount of bits (1 start bit, 5 to 9 data bits, an optional parity bit, and 1 or 2 stop bits), these messages are called packets.

How a UART works is that it will receive data in a parallel form (all at once through multiple points) and the UART(1) will translate the data into a packet to which it will transmit the data to the receiving UART(2) in series (one after the other on a single line). The receiving UART(2) will then translate the data (discarding the start and stop bit) and send it in parallel to the external data bus.

One of the more popular advantageous attributes that UART features includes: it uses only two wires to transmit data to another device (TxD: Transmit Data –RxD: Receive Data), uses a parity bit for error checking, data packet can be changed, contains a serial buffer (extra storage space so it can do other tasks while waiting for data), and is a pervasively used and accepted method (found in most processors). These attributes make UART a great communication protocol/mode, nevertheless their convenience do have their foibles. Some disadvantages include the data frame is limited to 9 bits, does not support multiple slaves/ master systems, and the baud rates (reading speed) must be within 10% of the transmitting and receiving UARTS.

Most (all) processors have a UART because of their simplicity in communication transmission, some processors include Raspberry Pi and computers. Though in more sophisticated CPUs the UART chip has become dispensable because the software of the outputted transmission can regulate the process instead of hardware, this technique is called bit-banging.  (not completed yet)

Week 6 Assignment

PART 1

Adapt one of the light and/or sound circuits we built in class for another creative purpose.
You must use a sensor of your choice to control the screen display (LCD or in Processing), light (multiple LEDs) or sound (using tone() and a buzzer or connecting to Processing) in your project. Post it to the blog in the required format.

Note: You should use assignments as opportunities to explore new components, connections, and programming concepts. They are intentionally open-ended in order for you to pursue a topic that interests you and to challenge yourself, both technically and conceptually.

Note 2: Don’t forget that we do have other sensors in the locker. I encourage you to explore them.

 

PART 2

As part of the wireless presentation next week, we will learn more about different Serial communication protocols. You know serial from the serial monitor and debugging, but there is much more that you can do other than reading data. In preparation for this, everyone should complete this assignment.

Choose ONE of the following serial communication protocols and research it: UART, SPI, or I2C

  1. Give a description of the protocol. What is it? What does it do? Is it synchronous or asynchronous?
  2. Draw a diagram or illustration that shows how it works. Make sure you give a big picture view and any smaller details that you think are helpful for understanding it.
  3. Give at least 2 examples of when you use this protocol. What types of projects and components is it best suited for? (i.e. Use SPI when you want to have more than one peripheral device because….)

Bonus: Do this for all three of the listed protocols.

ITP’s Physical Computing site is a good place to go if you don’t know where to start.