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

Future evolution of electronic currency, FUTURE EVOLUTION The major foc...

FUTURE EVOLUTION The major focuses of digital cash development are 1) being proficient to use it throughout a wider range of hardware for example secured credit cards; and

Internet advantage, INTERNET ADVANTAGE There many advantages to using t...

INTERNET ADVANTAGE There many advantages to using the internet such as: Email:- Email is now a crucial communication tools in business. It is as well excellent f

Explain the ageing process, Problem: The existing welfare state has mad...

Problem: The existing welfare state has made provisions for the protection and welfare of the elderly. (a) Show the adequacy of these provisions. (b) What changes would y

Methodologies of historiography, I am looking for assignment help on the to...

I am looking for assignment help on the topic methodologies of historiography . It would be great if anyone help me. Please describe the given topics. Some of the major methodo

Orgaisational behaviour, Rajender Kumar was a production worker at competen...

Rajender Kumar was a production worker at competent Motors Limited (CML) which made components and accessories for the automotive industry. He had worked at CML for almost seven ye

Lexington and Concord, I need help with a paper I have to write on the batt...

I need help with a paper I have to write on the battle of Lexington and Concord. I would please like a straightforward answer.

Discuss the relevance of counseling in society, Question 1: Discuss the...

Question 1: Discuss the similarities and differences involved in counseling and psychotherapy practice. Question 2: Discuss counseling practices in relation to Structur

Delinquent patient accounts, Cash Receipts, Cash Disbursements & Delinquent...

Cash Receipts, Cash Disbursements & Delinquent Patient Accounts Under the terms of the contract all patients (including those with insurance) are required to make a deposit equi

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