NXC C programs, Other Subject

Assignment Help:
A description of each function used in the program.

Theree programs:

/* HiTechnic Experimenter''s Kit Program

Experiment - 6 Reaction Time Measurement

This program measures the time taken to press a button switch after an LED is turned on.

(c) HiTechnic 2009

*/
#include "NXCDefs.h"

#define PROTO_PORT IN_1

int currtime;
int deltatime;
int randomtime;
int inputdata;
int outputdata;
int count;
byte cmndbuf[]; // buffer for outbound I2C command
byte respbuf[]; // buffer for inbound I2C response

/* protoboard I/O map
42,43 - A0 input
44,45 - A1 input
46,47 - A2 input
48,49 - A3 input
4A,4B - A4 input
4C - B inputs
4D - B outputs
4E - B controls
*/

void readdata()
{
ArrayInit(cmndbuf, 0, 2); // set the buffer to hold 2 values
cmndbuf[0] = 0x02; // set write to channel
cmndbuf[1] = 0x4C; // to set read address
count=1; // 1 byte to read
I2CBytes(PROTO_PORT, cmndbuf, count, respbuf); // issue I2C write command and read the byte back
inputdata=respbuf[0]&0x03;
}

void writedata()
{
ArrayInit(cmndbuf, 0, 3); // set the buffer to hold 3 values
cmndbuf[0] = 0x02; // set write to channel
cmndbuf[1] = 0x4D; // to set write address
cmndbuf[2] = outputdata; // to set write data
count=0; // no bytes to read
I2CBytes(PROTO_PORT, cmndbuf, count, respbuf); // issue I2C write command and read the byte back
}

task main()
{
SetSensorLowspeed(PROTO_PORT); // set sensor port 1 to low speed serial (I2C)
Wait(100);

ArrayInit(cmndbuf, 0, 3); // set the buffer to hold 3 values
cmndbuf[0] = 0x02; // set write to channel
cmndbuf[1] = 0x4E; // to set write address
cmndbuf[2] = 0x30; // to write 001111
count=0; // no bytes to read
I2CBytes(PROTO_PORT, cmndbuf, count, respbuf); // issue I2C write command
Wait(100);

while (TRUE)
{
outputdata=0;
writedata();
ClearScreen();
TextOut(20, LCD_LINE2, "running");
randomtime=Random(5000)+5000;
Wait(randomtime);

outputdata=0x10;
writedata();
currtime=CurrentTick();

inputdata=0x00;
while(inputdata!=0x01)
{
readdata();
}
deltatime=CurrentTick()-currtime;
ClearScreen();
NumOut(20, LCD_LINE2, deltatime);

inputdata=0x00;
while(inputdata!=0x03)
{
readdata();
}
}
}

Related Discussions:- NXC C programs

Liver - digestive system, The liver has multiple functions, but its main fu...

The liver has multiple functions, but its main function within the digestive system is to process the nutrients absorbed from the small intestine. Bile from the liver secreted into

Capsim Help, Assistance with MBA CapSim program.

Assistance with MBA CapSim program.

Explain the term cognitive dissonance, Problem 1: (a) Explain the term ...

Problem 1: (a) Explain the term cognitive dissonance. (b) How can cognitive dissonance act as a powerful motivator? (c) How can the Attribution theory be used to motivate

Natural ways of preventing common diseases in a rural areas, Natural Ways o...

Natural Ways of Managing and Preventing Common Diseases in a Rural Areas Aging- To fight aging, one should keep his system alkaline with fresh fruits drinks, fresh vegetable j

Visual trespass - property is an illusion, Whatever the maxim cuiusest sol...

Whatever the maxim cuiusest solum may have signified to the common lawyer of earlier centuries, it has since become obvious that its legal meaning is now heavily qualified by the a

What do you understand by amicus curiae, Question 1 Discuss any five salie...

Question 1 Discuss any five salient features of the American Constitution Question 2 Discuss solutions to Improving Centre State relations Question 3 The President has t

Assessment of Teaching , Hi, My work need to: - Answer the questions in Ass...

Hi, My work need to: - Answer the questions in Assignment A from 1 to 3. (Please use the references in the attachments only) - Design and Development a survey form in accordance wi

Exploitation, From the term" Exploitation" we mean that the activity that h...

From the term" Exploitation" we mean that the activity that has been done or the act of using something for any purpose or any means. The use of something in not an understanding m

Roman history, Roman History: It spans a thousand years and covers not onl...

Roman History: It spans a thousand years and covers not only the Mediterranean region, but Europe to the British is less, northeast to the Danube River, and eastward through Asia

Theory of mind, What is meant by a "theory of mind"? Note that the text ref...

What is meant by a "theory of mind"? Note that the text refers to research that shows that growing up with siblings positively influences the acquisition of a theory of mind. Specu

Write Your Message!

Captcha
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