Program for measures the wind direction-vane, Assembly Language

You are to create an assembly program for the MSP430 that correctly measures the wind direction, to a precision of 45° (N, NW, W, SW, S, SE, E, NE), using the MSP430's ADC.

Your program will output the direction using four LEDs, one each for N, S, E, and W. If the wind direction is out of the N, only the N LED will light. If the wind direction is out of the NW, both the N and W LEDs with be ON.

Note that the actual circuit interfacing to the wind vane will use the 3.6V supply on the

Launchpad board itself. This means that voltage readings provided in the table on the following page need to be appropriately scaled. As per the table, a 10kohm resistor will be used in the voltage divider.

As only one wind vane is available for use, test your code using a pot connected between ground and 3.6 V (the supply voltage for your board). The wind vane will be available in 310 for final check-out. Pots, LEDs, and resistors will be provided in 310.

Your program must use at least one subroutine. You are free to choose which functionality to place in the subroutine.

Extra Credit:

(1) Correctly measure all 16 directions possible by the vane. Develop some mechanism for visually displaying the added directions.

(2) Store the voltages corresponding to the specific directions as constants in a memory array (see example below). Have your code cycle through this array until a match is found.

ORG 0xD000

DC 0x1234, 0xABCD, ... ;replace w/ calculated voltages

Wind Vane

The wind vane is the most complicated of the three sensors. It has eight switches, each connected to a different resistor. The vane's magnet may close two switches at once, allowing up to 16 different positions to be indicated. An external resistor can be used to form a voltage divider, producing a voltage output that can be measured with an analog to digital converter, as shown below.

The switch and resistor arrangement is shown in the diagram to the right.

Resistance values for all 16 possible positions are given in the table.

Resistance values for positions between those shown in the diagram are the result of two adjacent resistors connected in parallel when the vane's magnet activates two switches simultaneously.

2042_anemometer.png

Posted Date: 3/4/2013 7:25:42 AM | Location : United States







Related Discussions:- Program for measures the wind direction-vane, Assignment Help, Ask Question on Program for measures the wind direction-vane, Get Answer, Expert's Help, Program for measures the wind direction-vane Discussions

Write discussion on Program for measures the wind direction-vane
Your posts are moderated
Related Questions
describes vertical and horizontal web services protocols. Next, identify the similarities and differences between vertical and horizontal web services protocols. Finally, explain w

Please let me know if you can do an assignment in the next 12 hours

Register Organization of 8086 8086  has  a great  set  of registers  containing  special  purpose and general  purpose  registers.  All the 8086 resisters are 16-bit registers.

Tabular comparison for µ PS' Parameters Tables (a) and (b) list the characteristic of Intel microprocessor. Table(a):   Table(b): It has a 64 bit da

Explain the architecture of the file transfer protocol ftp in terms of clients, servers, sockets

8251 Programmable/Communication Interface As an instance of a serial interface device let us suppose Intel's 8251 A programmable communication interfaces. The 8251A is diagram

ROL : Rotate Left without Carry: This instruction rotates the content of the destination operand to the left by the specified count bit-wise excluding the carry. The most signific

64-bit integer calculator, which processes using 16-bits at a time (reg/mem16 operands)

Write a program to calculate the first 20 numbers of Fibonacci series. Use the stack (memory) to store the calculated series. Your debugger output should look like the following sc

program to arrange a given set of numbers in descending order