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

Psych./Neuropsych. Assessment Integrated Report, Hello, I need assistance...

Hello, I need assistance on the Psychological and Neuropsychological Assessments Integrative Report Writing. There are 2 separate ‘Case Data’ (please note that these Case Data ar

Describe drug addiction, Problem 1: (a) Critically show the following ...

Problem 1: (a) Critically show the following concepts: drug addict, dependency and tolerance. Use relevant examples to support your answer. (b) Critically discuss the d

Digital signatures, Digital Signatures Digital signatures are based on ...

Digital Signatures Digital signatures are based on a grouping of the conventional idea of data hashing with public key-based encryption. Most hash functions are like to encrypt

Write a long note on the characteristics of a short story, Question 1 W...

Question 1 Write a long note on the characteristics of a short story 2 Write an analysis and a symbolic study of A Flowering Tree 3 Write a detailed note on Mulk Raj Anan

Family life education.., role of school, parent, peer in imparting family l...

role of school, parent, peer in imparting family life education

Indigenous peoples and the environment, Indigenous Peoples and the Environm...

Indigenous Peoples and the Environment: Indigenous Peoples are often thought of as the primary stewards of the planet's biological resources. Their ways of life have and cosmovisi

Define chi-square test, Question 1 State the advantages and disadvantages ...

Question 1 State the advantages and disadvantages of quantitative techniques Question 2 List down the guidelines for constructing a frequency distribution Question

Psychology, what would be a negative correlation between tall and short peo...

what would be a negative correlation between tall and short people and driving speed

Stacking, What do you understand by stacking? discuss the different methods...

What do you understand by stacking? discuss the different methods of stacking in libraries?

Management Information Systems, Does the experts have any knowledge with MI...

Does the experts have any knowledge with MIS and security issues

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