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

Fossil fuels, Fossil fuels Ken Boyd received a Bachelor's and a Mast...

Fossil fuels Ken Boyd received a Bachelor's and a Master's degree in geology from Rensselaer Polytechnic Institute in Troy, N.Y. He worked for both Gulf Oil and Marathon Oil

Explain what are the immediate measures that will undertake, QUESTION i...

QUESTION i) After reading the case comment on the crucial issues that were ignored by Disney company ii) A British company doing business in Thailand is facing lots of probl

Analyze global temperature and carbon dioxide measurements, To analyze glob...

To analyze global temperature and carbon dioxide measurements for seasonal, annual and longer term trends b parsing and loading complex data ?les and dealing with missing data, wri

How does northern renaissance differ from southern, How does the northern r...

How does the northern renaissance differ from the southern renaissance? Do your experts provide northern renaissance and southern renaissance Questions assignment help? I n

Explain the underlined statement, The basic qualities of acceptance and con...

The basic qualities of acceptance and concern for others, recognition of the worth of each individual, truthfulness, honesty, self awareness, goodwill, tolerance and caring are des

Therapeutic contract between counsellor and his client, Question 1: (a)...

Question 1: (a) Does the Gillick decision help counsellors and therapists to best meet their professional responsibilities to children, parents and education authorities? Dis

Social geography, Social Geography: This geography is the branch of human g...

Social Geography: This geography is the branch of human geography which is most closely concerned to social theory in common and sociology in specific, dealing along with the assoc

Ict, type of nature of software flowchart

type of nature of software flowchart

Advantages of an online library system, Advantages of an online library sys...

Advantages of an online library system: I need to prepare a report on Advantages of an online library system. Do you and your experts provide help in topic Advantages of an online

Pragmatism, what is ''pragmatism'' and what should be the role of a teacher...

what is ''pragmatism'' and what should be the role of a teacher according to it?

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