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

Determine the costs of air pollution, In this project, you will use house p...

In this project, you will use house price hedonics to determine the costs of air pollution.  In particular, you will examine the costs imposed by ozone pollution in the Bay Area of

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

Sample of a good academic project proposal , Example Project Proposal ...

Example Project Proposal   Title   A Database System to Record Compliance with Software Licence Agreements. Introduction The area of software licensing has becom

What is an attitude, Question 1: (a) What is an attitude? (b) In wha...

Question 1: (a) What is an attitude? (b) In what circumstances do attitudes determine behaviours at work? Question 2: Understanding personalities in the workplace is

Electronic data interchange standards, EDI STANDARDS Commonly speaking,...

EDI STANDARDS Commonly speaking, EDI is measured to be a technical representation of a business discussion between two entities, either in-house or outside. Note, there is a ob

Adolescence and family education, you being a teacher describe your experie...

you being a teacher describe your experiences regarding the role of school, parent and peers in imparting family life education.

Parties involved in credit cards, PARTIES INVOLVED Cardholder: Th...

PARTIES INVOLVED Cardholder: The owner of the card used to create a purchase; the customer. Card-issuing bank: The financial organization or other organization that

Sociology, Explain Symbolic Interaction Theory and discuss its perspective ...

Explain Symbolic Interaction Theory and discuss its perspective on social processes, inequality, and institutions. Provide specific examples from the textbook to explain how this

History of documentaries, History of Documentaries: The earliest documenta...

History of Documentaries: The earliest documentaries in the US and France were either short newsreels, instructional pictures, records of current events, or travelogues (termed ac

Two page essay for art class, Contrast the Elevation of the Cross by Rubens...

Contrast the Elevation of the Cross by Rubens with Rembrandt''s Return of the Prodigal Son?

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