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

Explain the biological and physical aspects of ageing, Question: (a) Ex...

Question: (a) Explain carefully the biological and physical aspects of ageing and explain the impact of these factors on the ageing individual. (b) Show the age-specific pro

signlanguage, #question.are there slots for teaching sign-language

#question.are there slots for teaching sign-language?.

What is multivariate analysis of variance, There are two or more continuous...

There are two or more continuous dependent variables in MANOVA. The initial test assumes that there is a linear combination of the dependent variables. Hypothesis: The independe

Medieval church and crusades, Hi i need help on how to write an anylitical ...

Hi i need help on how to write an anylitical essay on the topic above

Data mining, I have 5 datasets and I have to answers all these question for...

I have 5 datasets and I have to answers all these question for each datasets A) Is this a supervised or unsupervised data set? If supervised, what is the class variable (if any)? B

Humanities, These essays should be a minimum of five paragraphs in length e...

These essays should be a minimum of five paragraphs in length each. They should contain a clear thesis statement in the first paragraph (an answer to the question!). Make sure your

Kohlbergs theory of moral development, Most children in middle childhood ab...

Most children in middle childhood abandon any belief in fantasy figures such as Santa Claus. How do the cognitive developments outlined in Chapter 11 support this disbelief? Are

Role of selective attention and working memory , Role of selective attentio...

Role of selective attention and working memory in executive functions The concepts of selective attention and working memory, introduced in Chapters 6 and 7, respectively, are cen

Spanish, When doing verb conjugations, there are E to IE and E to I but how...

When doing verb conjugations, there are E to IE and E to I but how do i know which IE or I gets used on a certain verb?

Sociology, According to Schaefer (2015), “a class system is a social rankin...

According to Schaefer (2015), “a class system is a social ranking based primarily on economic position in which achieved characteristics can influnce _______________,” the ability

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