Skip to main content

Day 2: Math Operations, Overflow and Underflow, Printf and Scanf

Lab
Today we started with our first Arduino lab. We first wanted to make one LED on a breadboard blink, then get 4 LEDs to blink. I was able to do this successfully using the code below.

void setup() {
  // put your setup code here, to run once:

pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
pinMode(3, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(11, HIGH);
  
  delay(500);
  digitalWrite(11,LOW);
  digitalWrite(10,HIGH);
  
  delay(500);
  digitalWrite(10,LOW);
  digitalWrite(9,HIGH);
  
  delay(500);
  digitalWrite(9,LOW);
  
  delay(100);
  digitalWrite(11, HIGH);
  digitalWrite(3,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  delay(100);
  digitalWrite(11, LOW);
  digitalWrite(3,LOW);
  digitalWrite(10,LOW);
  digitalWrite(9,LOW);
  delay(100);
  digitalWrite(11, HIGH);
  digitalWrite(3,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  delay(100);
  digitalWrite(11, LOW);
  digitalWrite(3,LOW);
  digitalWrite(10,LOW);
  digitalWrite(9,LOW);
  delay(100);
  digitalWrite(11, HIGH);
  digitalWrite(3,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  delay(100);
  digitalWrite(11, LOW);
  digitalWrite(3,LOW);
  digitalWrite(10,LOW);
  digitalWrite(9,LOW);
  delay(100);
  digitalWrite(11, HIGH);
  digitalWrite(3,HIGH);
  digitalWrite(10,HIGH);
  digitalWrite(9,HIGH);
  delay(1000);
  digitalWrite(11, LOW);
  digitalWrite(3,LOW);
  digitalWrite(10,LOW);
  digitalWrite(9,LOW);
  delay(500);
4 LEDs blinking
}

This code would cause the top three lights to light up one after the other from top to bottom, then all four lights would blink on and off 3 times, then turn on again for a second, and then the cycle would repeat. 
Lecture
After we finished the lab, we went over efficient ways to do math in C. We reviewed symbolic constants, which can be defined like so:

#define PI 3.14159265

This would allow someone to use PI to perform math operations, rather than typing in the number every time.

I learned that the order of operations in C is the same as in mathematics. 

Next, we learned about increment and decrement operators. They were:


  • ++ to increment by 1
  • -- to decrement by 1
  • +=k to increment by k
  • -=k to decrement by k


#include <stdio.h>
#include <math.h>

int main(void){
float femur_length,humerus_length;
float femur_height_female,humerus_height_female,avg_height_female;
float femur_height_male,humerus_height_male,avg_height_male;
scanf("%f %f",&femur_length,&humerus_length);

femur_height_female=femur_length*1.94+28.7;
humerus_height_female=(humerus_length*2.8)+28.2;
avg_height_female=(femur_height_female+humerus_height_female)/2;
femur_height_male=(femur_length*1.88)+32;
humerus_height_male=(humerus_length*2.9)+27.9;
avg_height_male=(femur_height_male+humerus_height_male)/2;
printf("Female Femur Height %5.2f \n Female Humerus Height %5.2f \n Female Average Height %5.2f \n Male Femur Height %5.2f \n Male Humerus Height %5.2f \n Male Average Height %5.2f \n",femur_height_female,humerus_height_female,avg_height_female,femur_height_male,humerus_height_male,avg_height_male);
return 0;

}



Comments

Popular posts from this blog

Day 20: Structures, Programming with Pointers

Lecture Structures Structure defines set of data, but individual parts do not have to be the same type. Example 1.1 struct hurricane {  char name[10];  int year,category; }; Within a structure, variables and even arrays can be defined. Structures are also known as aggregate data types since multiple data values can be collected into a single data type. Individual values within a structure are called data members, and each member is given a name. In Example 1.1, the names of the data members are name, year, and category. To refer to a data member, the structure variable name followed by a period and a data member name is used.  Definition and Initialization Define structure. Keyword struct used to define name of structure (aka structure tag) and data members that are included in structure After structure defined, structure variables can be defined using declaration statements. Semicolon required after structure definition. Statements can appear before m...

Day 4: RGB Nightlight | Algorithm Development, Conditional Expressions, Selection Statements

Hardware: RGB Nightlight const int red=11; const int green=10; const int blue=9; const int button=4; boolean lastbutton=LOW; boolean currentbutton=LOW; int ledMode=0; void setup() {   // put your setup code here, to run once:   pinMode(button,INPUT);   pinMode(red,OUTPUT);   pinMode(green,OUTPUT);   pinMode(blue,OUTPUT); } boolean debounce(boolean last) {   boolean current=digitalRead(button);   if(last!=current)   {     delay(5);     current=digitalRead(button);   }   return current; } void setMode(int mode) {   //RED   if(mode==1)   {     digitalWrite(red,HIGH);     digitalWrite(green,LOW);     digitalWrite(blue,LOW);   }   if(mode==2)   {     //orange     digitalWrite(red,HIGH);     analogWrite(green,40);     digitalWrite(blue,LOW);...