User Tools

Site Tools


dig:lab_1_2014
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Previous revision
Next revision
dig:lab_1_2014 [2014/02/20 12:11] – [Questions] al001
Line 1: Line 1:
 +===== Lab 1: Microcontroller programming setup =====
  
 +In this first exercise let's install the necessary tools and run an example program on a pre-assembled microcontroller board.
 +
 +By the end of this exercise we should be able to compile the example project //Blink//, program Arduino Nano board with it, then include by yourself Serial interface for helping monitoring for debugging purpose.
 +
 +  - See [[uc2]] for tool installation.
 +  - Arrange a day/time for soldering your own ‘nano’ board during the following week; see [[dig:lab_2]].
 +  - Answer the questions below.
 +
 +
 +
 +==== Questions ====
 +By next class, hand in (individually) attempts at answers to the following questions, which you may be able answer by reading the {{:dig:atmega328p.pdf|ATmega328P Datasheet}}, {{:dig:arduinosectionprogramming-slides_sparkfun.pdf|Sparkfun Arduino Programming guide}} and [[http://arduino.cc/en/Reference|Arduino Reference language]]. The datasheet contains usage information, while the both Sparkfun and Arduino programming references have more information about programming style of Sketches.
 +
 +  - How much flash/SRAM/EEPROM memory does the ATmega328P have?
 +  - Is there one instruction executed per clock cycle or does it require multiple clock cycles per instruction?
 +  - What is the maximum system clock frequency, does clock frequency have any dependence?
 +  - What is the maximum power consumption of ATmega328P? Which two main parameters are in this matter? 
 +  - What is the oscillator start-up time from sleep?
 +  - What is the "initialisation time" for the ADC?
 +  - What is the ADC power consumption?
 +  - What is the maximum PWM output frequency using 8-bit timer/counter (analogWrite function)? And using 16-bit timer/counter (Servo library)?
 +  - What is the value of the pull-up resistor on the GPIO (when enabled)?
 +  - Does the ATmega family have floating point hardware support? 
 +  - Does the ATmega328P have a hardware multiplier?  If so, how many clock cycles does it take and what is its resolution, i.e, how does it handle overflows?  
 +  - And does the Atmega have DSP (Digital Signal Processing) instructions for multiplying, accumulating, and incrementing a pointer in one instruction?
 +  - What is a Sketch? Do you know the difference between C/C++ programming and Arduino Sketches?
 +  - How can you debug your code under Arduino?
 +
 +
 +~~DISCUSSION~~
dig/lab_1_2014.txt · Last modified: 2024/02/29 07:28 by 127.0.0.1