I need help with this assignment using atmel studio 70 Place

I need help with this assignment, using atmel studio 7.0:

Place a list of ten numbers in data space. Retrieve the first number from the list, us ing indirect addressing mode . Output the number to Port B . Assume that th is port ha s two common cathode 7- segme nt LED s directly connected to it. You must output the code to display the correct number on the LEDs. Because you will not be using the de cimal point on the 7- segment LED, use it to enable each LED for 100ms , then switch to the other LED for 100ms . Connect a push button switch to Port C pin 0 (use an internal pull -up resistor) . When this button is pushed retrieve the next number from the list and display that on Port B . Continue until all 10 numbers have been displayed. After all ten numbers have been displayed, start again at the beginning.

Solution

A)An embedded system is a product which uses a computer to run it but the product, itself, is not a computer. This is a very broad and very general definition. Embedded systems programming, therefore, consists of building the software control system of a computer-based product. ESP encompasses much more than traditional programming techniques since it actually controls hardware in advance of real time. ESP systems often have limitations on memory, speed, and peripheral hardware. The goals of ESP programmers are to get the “maximum function and features in the minimum of space and in minimum time”. Embedded systems are everywhere! Name almost any appliance in your home or office and it may have a microprocessor or a microcomputer to run it. A watch, microwave oven, telephone, answering machine, washer, dryer, calculator, toy, robot, test equipment, medical equipment, traffic light, automobile computer, VCR, CD player, DVD player, TV, radio, and printer all have computers in them to run them. These examples of embedded systems are simple but the concept of embedded systems applies to much larger systems as well. Overall, there are four levels of size, option, and complexity in embedded systems. These levels are: 1) High Level 2) Medium Level 3) Low level with hardware 4) Low level without hardware

A good example of a high level embedded system is an air-traffic control system. It would use a main-frame computer with many terminals and many users on a timesharing basis. It would connect to several smaller computers, run the radar, receive telemetry, get weather information, have extensive communications sub-systems, and coordinate all of these function in an orderly, systematic way. It is necessarily a highreliability system and may, therefore, have extensive backup systems. It would have a custom-built operating system that would be completely dedicated to controlling airtraffic. An example of a medium level embedded system is a typical automatic teller machine (ATM) at any bank or bank terminal. It may use a more advanced microprocessor with many peripheral functions. Consider that it contains a video terminal, a keyboard, a card-reader, a printer, the money-dispensing unit, a modem, and many input/output ports. The ATM probably doesn’t use a custom operating system but would use something off the shelf, like Unix or Linux. The controlling software is probably written in a high-level language like C or C++.

The appliances and other things given on page 11 are all examples of the lowlevel-with-hardware embedded systems. They do not use microprocessors but do use microcontrollers, which are complete computers on a single chip. Microcontrollers have a CPU, RAM, ROM, and, typically, several peripheral hardware modules which are builtin and are under software control. The PIC16F877 is such a microcontroller. Any of the example products and applications on page 11 could be controlled by the PIC. They could be programmed in C or C++ but care would be needed so as not to use too much RAM or ROM inadvertently. The process or program also must not need very high speed operation – it should not be timing-critical. More control, stability, memory management, and speed can be gained by programming in assembly languages. The programming at the low-level will interact with the hardware in much finer detail than in the medium-level or the high-level systems. The low-level-without-hardware embedded systems are almost identical to the low-level-with-hardware systems and can run exactly the same products, devices, and applications. The differences which are present in the low-level-without-hardware systems are that the microcontroller and the system have an absolute minimum of hardware peripheral functions. At this level, the software must mimic the desired hardware peripheral functions. This puts a much greater challenge on the ESP programmer. (Assembly language is a MUST.) There are several characteristics in ESP that separate it from traditional programming techniques. They are as follows: 1) ESP is all about process control and control systems. ESP is what runs a given product. 2) ESP systems must run in “real-time”. The program must keep pace or stay ahead of the real world and its timing. For example, a telephone answering machine may use a complex algorithm to compress, expand, encode, and decode speech signals. The ESP program must be able to run these processes as speech is coming in or going out. There must be no delays. A traditional program would not be sensitive to the requirements of speed that are needed here. 3) ESP software must run with infinity-loops. If they didn’t, the products could not run at all! In contrast, infinity-loops are the cardinal sin of traditional programming. 4) ESP software often uses “event-driven” techniques, especially at the lowlevels. These techniques are highly structured and save operating time. Traditional programming may also use “event-driven” techniques but it is not critical. 5) Low-level ESP software systems must sometimes mimic the hardware that the product needs. There is no parallel to this in traditional programming. 6) Embedded systems usually have far less memory than traditional programming environments. This eliminates heavy nesting of subroutines and recursive subroutine calls.

I need help with this assignment, using atmel studio 7.0: Place a list of ten numbers in data space. Retrieve the first number from the list, us ing indirect ad

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site