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 max weber''s early life, Question 1 Explain the Conservative React...

Question 1 Explain the Conservative Reaction to the idea of Enlightenment Question 2 Explain Max Weber's early life Question 3 What is the difference between repressive

Natural resources, Natural resources: Natural resources are substances tha...

Natural resources: Natural resources are substances that exist naturally in the earth and were not made by human beings. Natural resources are naturally occurring substances that

New Media: Policy and Practice, Do you have solved assignment for unicaf li...

Do you have solved assignment for unicaf liverpool john moores university

Describe the term supervision, Question 1: (a) Explain the five main pu...

Question 1: (a) Explain the five main purposes of code of ethics in counseling. (b) Explain how attitude and orientation of a counselor in any psychotherapy is of highly i

Theories of human communication, Theories of Human Communication: Human co...

Theories of Human Communication: Human communication occurs while one or more people send and receive messages. All of the communication acts have the following elements: sources,

Family life education, #you being a teacher describe your experiences regar...

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

Prepare a short transcript on second counselling session, Jim called in for...

Jim called in for his second counselling. Last week, on his first appointment the counsellor told that Jim should like to control his anger. Jim was physically abusing his female p

I Need The answer , Most of the major groups of animals appeared after what...

Most of the major groups of animals appeared after what event?

Zurich, bestresearch wedsite

bestresearch wedsite

Basic principles of information security - risk management, Risk Manageme...

Risk Management Security is everyone's responsibility. Security awareness poster. U.S. Department of Commerce/Office of Security. A complete treatment of the topic of risk

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