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

Transaction types in e-commerce, TRANSACTION TYPES A numeral of transac...

TRANSACTION TYPES A numeral of transaction category may be performing, together with the subsequent: Sale: where the cardholder pays for goods or service Refund: w

Need help with a medical billing and coding question, Besides holding respo...

Besides holding responsibility of the ICD-9-CM what are other characteristics of this organization?

Describe the effects of mass media on public opinion, Question 1: Descr...

Question 1: Describe the effects of mass media on public opinion according to: (a) The agenda setting theory (b)The spiral of silence theory Question 2:

Aaaaa, aaaaaaaaaaaaaaaaaaaa

aaaaaaaaaaaaaaaaaaaa

Biology, The molecular fromulas and structures of the sugars called glucose...

The molecular fromulas and structures of the sugars called glucose and fructose can be used to illustrate which of the following concepts? A. IONS B.ISOTOPES C.ISOGENS D.ISOMERS

Discuss the new challenges of e-educational planning, Question 1: (a) "...

Question 1: (a) "The concern of Planners is twofold: to reach a better understanding of the validity of education in its own empirically observed specific dimensions and to hel

What is human mobility device, Great strides have been made in the last 20 ...

Great strides have been made in the last 20 years to provide greater accessibility for people who have physical disabilities. As shown in the image above, kitchens can be designed

Six steps to successful public speaking, Do your experts should provide Six...

Do your experts should provide Six Steps to Successful Public Speaking Questions assignment help? I get a new assignment and I m stuck in my assignment I need urgent help in my col

Advance ex phys, Font Arial, size 10, Should be about 1 page single spaced....

Font Arial, size 10, Should be about 1 page single spaced. During the 2011 world championship XPD adventure race of 8 non-stop days duration, which includes running, cycling, kay

A data transfer converter, Develop a data transfer converter where by you c...

Develop a data transfer converter where by you can convert byte to kilobytes to megabytes using java

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