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

Social studies, Northeast Regions, climate? work Industry? Types of People?...

Northeast Regions, climate? work Industry? Types of People? Plants and animals? All the same questions for the Midwest, and Southeast.

The Listeners, Which line in "The Listeners" is an example of alliteration?...

Which line in "The Listeners" is an example of alliteration? "Ay, they heard his foot upon the stirrup" "And how the silence surged softly backward" "Though every word he spake" "W

Elements of epic poetry, I am facing some problems in my assignment of Elem...

I am facing some problems in my assignment of Elements of Epic Poetry. Can anybody suggest me the proper explanation for it? the topics which are related to the assignment are give

Tommy, in autocad 2013, i have 2 different files containing things that i w...

in autocad 2013, i have 2 different files containing things that i want to add to one file so that it can be viewed as one image. how do i do this?

Explain gender communication, (a) Explain gender communication stating the ...

(a) Explain gender communication stating the different communication styles. (b) Describe how different communication styles of men and women cause problems in relationships.

Goverment, Forming a strong political _________________________ without for...

Forming a strong political _________________________ without forming an equally sound understanding of politics could lead to making unwise choices in the voting booth.

Basic principles of information security - availability, A vailability ...

A vailability For every information system to provide its reason, the information must be existing when it is desirable. This way that the computing systems used to process an

Promotion of product, how to make an assignment of promotion of product

how to make an assignment of promotion of product

Section #2 Climate Regions, Why is the mediterranean sea important to the ...

Why is the mediterranean sea important to the europeans?

History, Americans who opposed the annexation of new territories most likel...

Americans who opposed the annexation of new territories most likely supported what?

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