Hello, everyone!



Let's start this assignment!



In this assignment, I have:

  1. To read a microcontroller data sheet;
  2. To program my board to do something;
  3. To experiment with other architectures (extra credit).



Firts of all about datasheet.

All information of all exited microcontrollers placed on special pages of their producers. For my working I'll use ATtiny44 and similar, ATtiny45 and similar and Atmega328 and similar.

This is their pinouts:


I designed a couple boards for ATtiny45 which has an I2C connector and two LEDs for displaying information.


This is a process of a traces placment in Altium Designer:


Path generation for milling in CopperCam:


Couple of milled and soldered PCBs:


I really love sew SOIC8 smd chips (as ATtiny45) throw this great test clips.

It gives possibilities to having no ICSP socket onboard that can reduce the area of the PCB and spend less time for designing.


What you have to do to

  1. Copy https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json;
  2. Paste it into additional board manager and apply settings;
  3. Install ATtiny board library in board manager.


Than follow the algorithm of programming ATiny from arduino:


This is the simple arduino-code for a blinking couple of leds.

  
  
#define LED1 3
#define LED2 4

void setup() 
{
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
}

void loop() 
{
  digitalWrite(LED1, HIGH); 
  digitalWrite(LED2, LOW);
  delay(1000);
  digitalWrite(LED1, LOW); 
  digitalWrite(LED2, HIGH);
  delay(1000);
}
 
  


For sewing via programmer I using my OLIMEX STK500 programmer which has two connectors for 10 and 6 pins ICSP socket.


The video of blinking ATtiny45 (danger, 4K there):


About the future:
Actually I have much experience with embedded programming. Some of my robots you can see in Robotics Gallary.
The next step it very complicated. This step is more in-depth programming. I think learning Atmel Studio isn't a good choice. Preferable one - learning PIC or STM32 architecture. I have a deal with PIC (18F series) and it's great, very flexible and powerful platform, but STM32 gives a more opportunities. But it's just my humble opinion.



To download the Altium project click here.


To download the .png click outline, outline filled, trace.


Thank you.