Skip to content
Snippets Groups Projects
Commit 82baa82e authored by Mitalee Parikh's avatar Mitalee Parikh
Browse files

input +

parent b3a08b79
No related branches found
No related tags found
No related merge requests found
Pipeline #253297 passed
......@@ -6,16 +6,17 @@ Contents
---
1. Using test equipment
2. Redraw a hello board
3.
3. References
4. Design Files
#### Testing
1. Using test equipment
---
Using the test equipment in the lab to observe the operation of a microcontroller circuit board.
I used my hello board for this task. This tutorial on [How to use a multimeter](https://learn.sparkfun.com/tutorials/how-to-use-a-multimeter/all) is a good resource.
A multimeter is a handy piece of equipment used for measuring voltage, current, resistance and continuity.
1. Operating voltage, resistance and continuity on the board with *multimeter*
#### Operating voltage, resistance and continuity on the board with *multimeter*
To measure Voltage:
Plug the black and the red probe into corresponding ports (depending on the model of multimeter).
......@@ -40,23 +41,20 @@ This is the most useful to check connections and solder joints between microcon
Set the multimeter to 'Continuity' - a diode symbol with propagation waves around it.
Touch the two probes on the two points to be checked and beep will give the feedback.
2. Use *oscilloscope* to check noise of operating voltage
#### Use *oscilloscope* to check noise of operating voltage
![](./images/ed/machine.jpg)
This tutorial on [How to use a oscilloscope](https://learn.sparkfun.com/tutorials/how-to-use-an-oscilloscope/all) is helpful.
![](./images/ed/osc.jpg)
3. Interpret a data signal using a *logic analyser*
#### Interpret a data signal using a *logic analyser*
[Introduction](https://www.baldengineer.com/logic-analyzer-tutorial-introduction.html)
If this equipment is not available, another way to test microcontroller circuit boards is by making a simulation in web-apps like [TinkerCAD](https://www.tinkercad.com/) or the open-source Arduino simulator, [Wokwi](https://wokwi.com/).
#### Designing
2. Redraw a hello board
---
I chose a hello.echo board based on ATtiny44 as it has the most available documentation.
Here is what the actual board looks like
......@@ -165,8 +163,7 @@ But this time I used [Mods](http://mods.cba.mit.edu/) instead of Fabmodules. Her
![](./images/ed/ss/mods.gif)
#### At the lab
#### Milling and Stuffing
I started to mill the board, solder the components by following the workflow described in [Electronics Production week](./Electronics Production.md).
On the first attempt, the I found that the edges of outline were too close to the traces, and they were fragile.
......@@ -183,13 +180,13 @@ And after soldering all components, here is how the final board looks:
Programming and testing of the board is done during the [Embedded Programming](./Embedded Programming.md) week.
#### References
3. References
---
[Sparkfun KiCad beginners guide](https://learn.sparkfun.com/tutorials/beginners-guide-to-kicad/all)
[Reference Documentation](http://archive.fabacademy.org/2016/fablabsingapore/students/98/exercise06.html)
#### Design Files
4. Design Files
---
[KiCad Schematic](./images/ed/attiny44.sch.zip)
[KiCad pcbnew](./images/ed/attiny44.kicad_pcb.zip)
[SVG](./images/ed/attiny44-brd.svg)
......
#Embedded Programming
#Embedded Programming
---
This week is about learning how to program a microcontroller.
......@@ -7,8 +7,8 @@ This week is about learning how to program a microcontroller.
1. Understanding a Datasheet
2. Comparing the performance and development workflows for different microcontroller families
3. Programming with FabISP + Arduino IDE
4. Programming with ftdi
5. References
4. Programming with avr-gcc
5. Programming with Atmel Studio
6. Code files
---
......@@ -44,8 +44,6 @@ The first three chapters - pin configurations, overview and general information,
2. Comparing the performance and development workflows for different microcontroller families
---
Next task is to program the board you have made to do something, with as many different programming languages and programming environments as possible.
3. Programming with FabISP + Arduino IDE
......@@ -86,8 +84,34 @@ I wrote a simple program to operate the led using the pushbutton.
![led-button](./images/empro/led-button.gif)
Next to read serial communication, I modified the code, to digitalRead and show indication of the state of the LED - ON or OFF.
For this after uploading the code using the FabISP, it needs to be removed and connected using an FTDI. This allows the serial communication to return to the Arduino IDE monitor. The FTDI also provides the power. So it basically connects - VCC, GND, TX, RX of the hello board to the FTDI board.
TX (hello) and RX(FTDI board) are connected and RX (hello board) to TX (FTDI board) are connected.
Basically when one transmits, the other receives.
FTDI is the protocol for communication. It can be connected in various ways.
1. Through a commercial board like this:
![](./images/input/ftdi-com-board.jpg)
2. Through a cable like this:
![](./images/input/ftdi-cable.jpg)
3. Through a DIY board like this:
![](./images/input/ftdi-diy-board.jpg)
I use a DIY board I borrowed from Steven.
You can use this schematic to make a ftdi board.
![](./images/input/ftdi-schematic.jpg)
I used a t45 based hello board as well.
So after uploading the blink code + serial, connect the ftdi board to hello board, and on pening the serial monitor, it should show the status of the LED.
![](./images/input/screenshot.jpg)
4. Programming with avr-gcc
---
http://archive.fabacademy.org/archives/2016/doc/makefile.html
5. Programming with Atmel Studio
---
......
docs/images/input/ftdi-cable.jpg

29.2 KiB

docs/images/input/ftdi-com-board.jpg

32.4 KiB

docs/images/input/ftdi-diy-board.jpg

50.8 KiB

docs/images/input/ftdi-schematic.jpeg

78 KiB

docs/images/input/screenshot.jpg

32.7 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment