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

Visual arts by indigenous peoples, Visual arts by indigenous peoples: Visu...

Visual arts by indigenous peoples: Visual arts by indigenous peoples of the Americas encompass the visual artistic traditions of the indigenous peoples of the Americas from ancien

Relate selected global efforts in information system, Write a 3-5 page rese...

Write a 3-5 page research paper exploring 3-5 topics regarding global efforts in the information systems industry. The paper needs to clearly identify the global topics, how it''s

Contemporary film, Contemporary Film: Contemporary Cinema focuses on the p...

Contemporary Film: Contemporary Cinema focuses on the period in the United States beginning with the late 1960's and early 1970's and the struggle of the motion picture industry t

Duty ethics, What would a strict deontologist do? Why?

What would a strict deontologist do? Why?

Global supply chain management, identeify one process your organization is ...

identeify one process your organization is involved in. this may be a service operation. a)Develop a process map (flow chart) for this process these may be in inform of delays, err

Environmental management systems, Do your experts should provide Environmen...

Do your experts should provide Environmental Management Systems Questions assignment help? I get a new assignment and I m stuck in my assignment I need urgent help in my college as

Forensics, Forensics: Forensic science (frequently shortened to forensics)...

Forensics: Forensic science (frequently shortened to forensics) is the application of a wide spectrum of sciences to answer questions of interest to the legal system. It may be in

Three broad model of electronic bill presentment and payment, Three broad m...

Three broad models of EBPP have emerged. These are 1.   Consolidation, wherever many bills for any one receiver are made accessible at one Web site, most usually the recipient'

Explain the term cognitive dissonance, Problem 1: (a) Explain the term ...

Problem 1: (a) Explain the term cognitive dissonance. (b) How can cognitive dissonance act as a powerful motivator? (c) How can the Attribution theory be used to motivate

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