Budget INR 4400/- bid in hourly rate to avoid upfront cuts
To develop an appreciation of the design workflow when writing code (firmware)
for the ATmega32A microcontroller when utilising an Integrated Development
Environment (IDE) such as Atmel Studio 7.0
(ii) To utilise the ATmega32A datasheets to determine and interpret essential
characteristics of the microcontroller.
(iii) To design and implement a table lookup using assembler from a description written
(iv) To utilise Atme
The required tasks are as follows:
a) Once the template project has been opened, load the assembler file ‘[login to view URL]’ by
double-clicking the file in the ‘Solution Explorer’ window. You may now begin to edit this file
to create your program. The outer loop of the pseudo-code algorithm should be implemented
first. At this stage you will need to demonstrate that the code can transfer sequential bytes
(entries) from the table in memory and place them in a register. Once confirmed operational,
demonstrate this to your Laboratory Demonstrator and proceed to the next step.
b) An algorithm can now be created to find the smallest entry in the table. You will need to
examine how to perform conditional branching (see the ATmega32A Instruction Set summary
document available on the Canvas website). Additional details of the branch instructions are
provided further within this document (Section 4).
c) Conceptually extend the code developed in Section 3b to determine the location and value of
the largest number in the table. To do so, what additional operations need to be performed and
how does the code need to be changed?
d) Once the concept is developed, extend the code developed to incorporate the ability to
determine the value and location of the largest 8-bit number in the list.