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

English, what is the character sketch of the swindler in the story dusk by ...

what is the character sketch of the swindler in the story dusk by saki?

Public policy , can you find me 8 articles policies and write my reflection...

can you find me 8 articles policies and write my reflection for each one

Globalisation, cultural dimensions of globalisation

cultural dimensions of globalisation

marketing, little control over macro-environmen

little control over macro-environment

Nutrionist, Defining and understanding the elements of a group culture is e...

Defining and understanding the elements of a group culture is essential to forging a professional identity either online or in person. These elements are important because they ref

What are the main health hazards associated with lasers, Question: a) ...

Question: a) Name the two main types of vibration that could affect workers' health. What is the maximum Exposure Limit Value for hand-arm vibration that an employee may be

Impressionism, Questions: I need a report on Impressionism . Impressionis...

Questions: I need a report on Impressionism . Impressionism report for about 2500 words? Would you able to assist me in report? Let me know cost of report and some of examples

Modern art vs. ancient art, Modern Art vs. Ancient Art : Modern & ancient a...

Modern Art vs. Ancient Art : Modern & ancient art are two classifications of art and extremely loosely, human history. Both of the periods have distinct characteristics that help r

Guidance for content based image retrieval, i need advice regarding content...

i need advice regarding content based image retrieval project for my mtech thesis

What are the factors that affect group dynamics and function, Question 1: ...

Question 1: It is becoming clear that much of mental illnesses originate in some way from the individual's relations with groups and that groups may be used effectively in me

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