Wrote a new value into the Timer or Counter register

Assignment Help Assembly Language
Reference no: EM131711019

Computer Organization and Assembly Language Programming Lab - Timer/Counters

SECTION OVERVIEW - Complete the following objectives:

  • Learn how to configure and use the 8-bit Timer/Counters on the ATmega128 to generate pulse-width modulation (PWM) signals.
  • Use the upper half-byte and lower half-byte (otherwise known as the upper and lower nibbles) of an I/O port for two different tasks.

PRELAB - To complete this prelab, you may find it useful to look at the full ATmega128 datasheet. If you consult any online sources to help answer the prelab questions, you must list them as references in your prelab.

1. List the correct sequence of AVR assembly instructions needed to store the contents of registers R25:R24 into Timer/Counter1's 16-bit register, TCNT1. (You may assume that registers R25:R24 have already been initialized to contain some 16-bit value.)

2. List the correct sequence of AVR assembly instructions needed to load the contents of Timer/Counter1's 16-bit register, TCNT1, into registers R25:R24.

3. Suppose Timer/Counter0 (an 8-bit timer) has been configured to operate in Normal mode, and with no prescaling (i.e., clkT0 = clkI/O = 16 MHz). The decimal value \128" has just been written into Timer/Counter0's 8-bit register, TCNT0. How long will it take for the TOV0 flag to become set? Give your answer as an amount of time, not as a number of cycles.

STUDY QUESTIONS / REPORT -

A full lab write-up is required for this lab. When writing your report, be sure to include a summary that details what you did and why, and explains any problems you may have encountered. Your write-up and code must be submitted by the beginning of next week's lab. Remember, NO LATE WORK IS ACCEPTED.

Study Questions

1. In this lab, you used the Fast PWM mode of both 8-bit Timer/Counters, which is only one of many possible ways to implement variable speed on a TekBot. Suppose instead that you used just one of the 8-bit Timer/Counters in Normal mode, and had it generate an interrupt for every overflow. In the overflow ISR, you manually toggled both Motor Enable pins of the TekBot, and wrote a new value into the Timer/Counter's register. (If you used the correct sequence of values, you would be manually performing PWM.) Give a detailed assessment (in 1-2 paragraphs) of the advantages and disadvantages of this new approach, in comparison to the PWM approach used in this lab.

2. The previous question outlined a way of using a single 8-bit Timer/Counter in Normal mode to implement variable speed. How would you accomplish the same task (variable TekBot speed) using one or both of the 8- bit Timer/Counters in CTC mode? Provide a rough-draft sketch of the Timer/Counter-related parts of your design, using either a flow chart or some pseudocode (but not actual assembly code).

Attachment:- Assignment Files.rar

Reference no: EM131711019

Questions Cloud

Determine the presence of sugar : Perform a series of tests to determine the presence of sugar, starch, lipids, and proteins for a variety of samples and determine the identity of an unknown
Determine whether new deer has a dominant strategy : a. Determine whether New Deer has a dominant strategy. If so, what is New Deer's dominant strategy?
Data tracking and reporting weigh into this decision : How does data tracking and reporting weigh into this decision?
Develop a conceptual model for the given case : Develop a conceptual model for the following case. Once given, bonuses are extraordinarily hard to take away without undermining employee morale.
Wrote a new value into the Timer or Counter register : ECE 375: Computer Organization and Assembly Language Programming Lab - Timer/Counters. In this lab, you used the Fast PWM mode of both 8-bit Timer/Counters
Determine an appropriate number of testable hypotheses : Product placement is a form of advertising in which a company's products and name are intentionally positioned in motion pictures, television programs.
What are the ethical issues raised by this strategy : There are numerous negative organizational consequences to firing employees, What are the ethical issues raised by this strategy?
Why is the short-run demand for uranium relatively inelastic : What does the long gestation period of nuclear power plants imply for the difference in time between the short and long runs in the demand for uranium?
What is this quote talking about sleep, soft smiling : What is this quote talking about "Sleep, soft smiling, draws me unto her: and those receive me, who quietly treat me, as one familiar and well-beloved

Reviews

len1711019

11/8/2017 12:16:41 AM

Subject: AVR assembly language. Detailed Question: Please complete the code and study question. Don't worry about the report. To receive extra credit for this lab, you will need to implement a new feature that supplements your regular Lab 7 code. Use one of the 16-bit Timer/Counters to keep track of how many seconds have elapsed since the TekBot's speed was last modified, and continually display this count as an 8-bit binary number on the LCD. Do not display any leading zeros { for example, 0 seconds should be displayed as just `0', and 8 seconds should be displayed as `1000'.

len1711019

11/8/2017 12:16:35 AM

Note: Using the LCD will affect the way the speed level is displayed on Port B. This is expected; just make sure you are prepared to disable any LCD-related parts of your code when you demonstrate the regular portion of this assignment. For full extra credit, demonstrate the correct operation of this feature to your TA, explain your design in the lab write-up, and be sure to also turn in your challenge .asm file as part of the online submission process.

Write a Review

Assembly Language Questions & Answers

  How many mul operations can this system perform

Compute number of lines in the address bus required so that the CPU can access all memory locations in the given RAM - Write a function that accepts a char array, its size and a char to search for in the given array. Use PROTO, INVOKE and LOCAL keyw..

  Describe what will happen to the status flags

ECE 2510 Introduction to Microprocessors - Implement the following operation in assembly program for IA-32 without using mul & div instructions and Describe what will happen to the status flags

  Translate assembly language program into machine code

Translate the following assembly language program into machine code Translate the following machoine language program into assembly code

  Function which correctly sorts three

Write an x8086 HLA Assembly language program that implements a function which correctly sorts three parameters and returns a boolean value in AL which should be set to true if any swaps were performed to sort the sequence in increasing order.

  Write assembly program print binary representation-integers

Write the assembly program called hw6_ex1, stored in file hw6_ex1.asm. This program must prompt user to enter signed 32-bit integer. Program must print out binary representation of the integer.

  Write a single arm assembly language instruction

Write a single ARM assembly language instruction equivalent to a function that takes in three strings and checks if any are a substring to one another, if so return 1, if not return 0.

  What is difference between instruction and pseudoinstruction

What is the difference between an instruction and a pseudoinstruction? What is the difference between the instruction location counter and the program counter, if any?

  Requirementsthis project requires you to program a

requirementsthis project requires you to program a maze-type game using assembly language. it is not acceptable to use

  Write an assembly program that reads in a number of cents

Write an Assembly program that reads in a number of cents. The program will write out the number of dollars and cents separately

  Write assembly language program for the marie processor

Please refer to the attachment for the general structure of the assembly language source code and more specifications regarding the assembly program

  Write a subroutine for the equation

Write a subroutine (assembly language code using NASM) for the equation - You cannot use MUL or DIV instructions, you have to perform multiplication and division (if required) using shift operations. AX and DX are the general purpose registers.

  Allot op-codes and add microcode to microprogram

Allot op-codes and add microcode to microprogram of Mic-1 to implement following instructions which are then included with IJVM instruction set.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd