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

Gum infection, A 28 year old woman was visited by her GP.  She had been com...

A 28 year old woman was visited by her GP.  She had been complaining of general malaise for some days, and now appeared flushed and was sweating.  She had developed several bruises

Exam , 3. family day care provider Alicia Magnus always has an interesting ...

3. family day care provider Alicia Magnus always has an interesting activity set up for the children as they arrive in the morning. This gives Alicia a chance to have quick chats w

Consumer protection, CONSUME R PROTECTION ' Consume r protection' is...

CONSUME R PROTECTION ' Consume r protection' is an outline of administration regulation which protects the benefit of consumers. For instance, a government may require busin

Define the term crystallized intelligence, Question 1: a. Define the t...

Question 1: a. Define the term ‘crystallized intelligence' b. List and Describe any 5 of Gardner's multiple intelligences c. Briefly explain Robert Stenberg's theory o

Library catalog, What are the importance of dictionary catalog?.

What are the importance of dictionary catalog?.

Describe career development, Question: (a) I) Describe career developm...

Question: (a) I) Describe career development and illustrate why we need to study related theories? II) Define decision making and explain how this relates to career counse

Differenttypes of regime and their effects on environmental, what are the a...

what are the advantages and disadvantages on different types of property regimes and their effects on environmental resource management

Write a long note on public speech coverage, Question 1 Write a long note ...

Question 1 Write a long note on public speech coverage Question 2 Write a detailed note on development reporting Question 3 Write a note on verification and the techniqu

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