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

Characteristics of italian renaissance art, Characteristics of Italian Rena...

Characteristics of Italian Renaissance Art Do your experts provide Characteristics of Italian Renaissance Art Questions assignment help? I need urgent help in my college assi

Write a long note about magazines, Question 1 Write a long note about maga...

Question 1 Write a long note about magazines Question 2 Write a long note on documentary photography and social documentary Question 3 Write a long note on thriller and

Behaviour management, Gender behaviour management in secondary school

Gender behaviour management in secondary school

Two main streams of sociological perspectives, QUESTION 1 (a) Discuss a...

QUESTION 1 (a) Discuss any two main streams of sociological perspectives and how they differ in their theoretical approaches? (b) How the theory of symbolic interactionism i

Feminist research method, Feminist research method: Feminist Method is a m...

Feminist research method: Feminist Method is a means of conducting of scientific investigations and generating theory from an explicitly Feminist Standpoint. Feminist methodologie

Explain the problem emotions and the role of a counsellor, Question: Th...

Question: The experience of growing old will bring with it many emotional and social traumas. These will be lived differently by those concerned and in some cases will need cou

Human anatomy, Human Anatomy: Human anatomy can be precisely defined as a ...

Human Anatomy: Human anatomy can be precisely defined as a complementary basic medical science, which deals with the scientific study of morphology of human body. In simpler words

Languages in latin american cultures, Language Spanish is the most com...

Language Spanish is the most commonly used language in many Latin American countries. Portuguese is the main language of Brazil, and even French is spoken in some small parts

Explain the social and religious differences in suicide, Problem 1: In ...

Problem 1: In the year 2000 an estimated 815 000 people died from suicide around the world. This represents an annual global mortality rate of about 14.5 per 100 000 population

Explain the skills and attitudes, Problem: It is important to show peop...

Problem: It is important to show people that you are paying close attention, that you care, and that you are actively listening. The better the helper listens, the more the ind

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