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

How to confirm, Trying to confirm my paper for tomorrow delivery.

Trying to confirm my paper for tomorrow delivery.

Oral suctioning, To remove mucus that may be building up in the throat to a...

To remove mucus that may be building up in the throat to avoid the person from chocking and becoming ill this will help to improve the flow of air into the lungs resulting in patie

Stabilizer 300vdc/2a, Dear sir, I would like to stabilize a power supply 30...

Dear sir, I would like to stabilize a power supply 300Vdc/2A out voltage high current. Please help me !!! I’m waiting for your answer, thanks for listen my request. Thank you

Communication theory as a field, Communication Theory as a Field: In the y...

Communication Theory as a Field: In the year of 1999 Craig wrote a landmark article "Communication Theory as a Field" which expanded the conversation about disciplinary identity i

Medieval art, Medieval Art: The medieval art of the Western world covers a...

Medieval Art: The medieval art of the Western world covers a huge scope of place and time, over 1000 years of art history in, the Middle East, Europe and North Africa. It involved

Research methods in criminal justice, You are doing well! The chief of poli...

You are doing well! The chief of police continues to be impressed with your work. He has hired you again to extend your independent internal review, this time to study policies and

Organizatinal behaviour, If you were one of the other foremen, what could y...

If you were one of the other foremen, what could you do to make Rajinder’s transition easier?

Writing, write a 450-500 words of what makes a sucessful city

write a 450-500 words of what makes a sucessful city

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