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

Project in vb6, i have project multiplex which is window based in which i ...

i have project multiplex which is window based in which i have make a form current booking where i show seats and now i want that seats should be coloures at time of execution whi

IT for business, can I have quote for the bachelor of business assignment f...

can I have quote for the bachelor of business assignment for subject IT for business with minimum 1500 words and deadline 23 may

Symmetric cryptography, Symmetric Cryptography Until recently, symmetri...

Symmetric Cryptography Until recently, symmetric encryption techniques were used to secure information transmitted on public networks. Traditional, symmetric cryptographic syst

Overtaken rules - traffic congestion, Overtaken Rules - Traffic Congestion ...

Overtaken Rules - Traffic Congestion There are several precaution steps should be taken into consideration to inhibit accidents when one vehicle overtaking and passing the oth

Omni project, Project Name : OMNI Project Role : Leading and Managing ...

Project Name : OMNI Project Role : Leading and Managing the Team Involved in Requirement Gathering, System Design. Documentation. Skill Used : DB2, IBM Websphere, Java,

Electronic data interchange, ELECTRONIC DATA INTERCHANGE Electronic Dat...

ELECTRONIC DATA INTERCHANGE Electronic Data Interchange (EDI) refers to the planned transmission of data between organizations by electronic funds. It is used to transmit elect

Explain the two categories of readers, Question 1 Explain meaning of techn...

Question 1 Explain meaning of technical writers and also explain its role Question 2 What is Audience Analysis? Explain its significance in Technical Communication Question 3

ACT, Help with the ACT

Help with the ACT

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

Measurement tools, Select a specific patient/patient group. Identify the cl...

Select a specific patient/patient group. Identify the clinical problems they may have. Identify an appropriate measurement tools (or more than one tool) that may be used in the ove

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