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

Server hardware, Serve r Hardware Hardware necessities for servers dif...

Serve r Hardware Hardware necessities for servers differ, depending on the server application. complete CPU speed is not typically as serious to a server as it is to a desktop

Criminal justice, throghout of the course , you will be preparing a 1, 500 ...

throghout of the course , you will be preparing a 1, 500 word research paper/written proposal focusing on how you will use you education to improve the criminal justice system at f

BRICKS BONDING, WHAT ARE THE ADVANTAGES AND DISADVANTAGES OF USING FLEMISH ...

WHAT ARE THE ADVANTAGES AND DISADVANTAGES OF USING FLEMISH BOND?

Transaction steps in credit cards, The flow of money and  information betwe...

The flow of money and  information between these parties - forever via  the card relations - is known as the substitution, and it consists of a few steps. TRANSACTION STEPS

International contract law, do you have an expert in international contract...

do you have an expert in international contract law and CSIG ,THANKS

Destructive forces nature, wat are the major causes of destructive forces o...

wat are the major causes of destructive forces of nature?

Languages in latin american cultures, Language Spanish is the most com...

Language Spanish is the most commonly used language in many Latin American countries. Portuguese is the main language of Brazil, and even French is spoken in some small parts

Famili education, Roll of parents imperting famili life education

Roll of parents imperting famili life education

Art criticism, Art Criticism: While most people think of 'criticism," they...

Art Criticism: While most people think of 'criticism," they think instantly of the word and its negative connotations. To criticize is to "find fault with," in according to one de

Mapping of various groups, Question: (a) Examine the extent to which th...

Question: (a) Examine the extent to which the participatory role of the community needs the "mapping" of various groups as they will be identified and the support mechanisms,

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