18-heater Arduino code
|
|
- Cora Noreen Cain
- 6 years ago
- Views:
Transcription
1 18-heater Arduino code Modified from original code by Charith Fernanado: #include <DueTimer.h> // Creation of variables volatile int idimmer=0; volatile boolean read_data=0; // Include timer for Arduino Due board // Integer variable used to delay the start of the dimming loop // Boolean to tell the Arduino Due whether to read serial data volatile int i1=0; // Variable used as a counter for heater 1 volatile int i2=0; // Variable used as a counter for heater 2 volatile int i3=0; volatile int i4=0; volatile int i5=0; volatile int i6=0; volatile int i7=0; volatile int i8=0; volatile int i9=0; volatile int i10=0; volatile int i11=0; volatile int i12=0; volatile int i13=0; volatile int i14=0; volatile int i15=0; volatile int i16=0; volatile int i17=0; volatile int i18=0; volatile boolean zero_cross1=0; // Boolean that switches when input waveform crosses zero // Definition of physical pin for each heater int AC_pin1 = 35; // Heater 1 is connected to physical pin 35 int AC_pin2 = 36; // Heater 2 is connected to physical pin 36 int AC_pin3 = 37; int AC_pin4 = 38; int AC_pin5 = 39; int AC_pin6 = 40; int AC_pin7 = 41; int AC_pin8 = 44; int AC_pin9 = 45; int AC_pin10 = 46; int AC_pin11 = 47; int AC_pin12 = 48; int AC_pin13 = 49; int AC_pin14 = 50; int AC_pin15 = 51; int AC_pin16 = 52; int AC_pin17 = 53; int AC_pin18 = 3;
2 int dim1 = 64; // Initial dimming level of heater 1 (0-64); 0 = on, 64 = off. // This means that we have 64 steps of dimming int dim2 = 64; // Initial dimming level of heater 2 int dim3 = 64; int dim4 = 64; int dim5 = 64; int dim6 = 64; int dim7 = 64; int dim8 = 64; int dim9 = 64; int dim10 = 64; int dim11 = 64; int dim12 = 64; int dim13 = 64; int dim14 = 64; int dim15 = 64; int dim16 = 64; int dim17 = 64; int dim18 = 64; // Beginning of the code void setup(){ pinmode(ac_pin1, OUTPUT); pinmode(ac_pin2, OUTPUT); pinmode(ac_pin3, OUTPUT); pinmode(ac_pin4, OUTPUT); pinmode(ac_pin5, OUTPUT); pinmode(ac_pin6, OUTPUT); pinmode(ac_pin7, OUTPUT); pinmode(ac_pin8, OUTPUT); pinmode(ac_pin9, OUTPUT); pinmode(ac_pin10, OUTPUT); pinmode(ac_pin11, OUTPUT); pinmode(ac_pin12, OUTPUT); pinmode(ac_pin13, OUTPUT); pinmode(ac_pin14, OUTPUT); pinmode(ac_pin15, OUTPUT); pinmode(ac_pin16, OUTPUT); pinmode(ac_pin17, OUTPUT); pinmode(ac_pin18, OUTPUT); attachinterrupt(2, zero_crosss_int,rising); Serial.begin(115200); Timer3.attachInterrupt(counter).start(131); // Start of setup loop // Define pins as outputs to drive triacs // Define pin 2 as the input signal of the // zero-cross signal and call the function // at the zero-cross // Start bit/sec // Define timer #3 to start the function // counter every 131 us = 1/64 th of the // half sine-wave period 8.33ms Timer1.attachInterrupt(dim_counter).start(50); // Define the timer #1 to start the function // dim_counter every 50 us
3 // End of setup loop void zero_crosss_int(){ // Function triggered by zero crossing // This loop starts the reading of the serial buffer at each zero-cross. idimmer=0; // Initialize the variable idimmer read_data=true; // Tell Arduino to start reading the data in the serial buffer // End of zero-cross loop // Allow 2300 us for reading the serial buffer delay loop void dim_counter(){ // Definition of dim_counter loop // This loop introduces a delay of 2300 us to match the delay between the appearance of the zero- // cross signal and the actual zero-crossing event. This delay is just enough time for the serial // buffer to be read. Just inserting a delay here would cause the serial read to be stopped. if (idimmer==46){ read_data=false; // dim_counter is started every 50us. Thus if idimmer==46, // 2300us have elapsed since the triggering zero-crossing // Tell Arduino to stop reading the data in the serial buffer zero_cross1 = true; // Set the Boolean to true to tell the dimming function that a // delayed zero-crossing has actually occurred i1=0; // Initialize variable for dimming sequence ( heater 1) i2=0; // Initialize variable for dimming sequence ( heater 2) i3=0; i4=0; i5=0; i6=0; i7=0; i8=0; i9=0; i10=0; i11=0; i12=0; i13=0; i14=0; i15=0; i16=0; i17=0; i18=0; digitalwrite(ac_pin1, LOW); // Turn heater 1 OFF, or leave it off if already off digitalwrite(ac_pin2, LOW); // Turn heater 2 OFF, or leave it off if already off digitalwrite(ac_pin3, LOW); digitalwrite(ac_pin4, LOW); digitalwrite(ac_pin5, LOW); digitalwrite(ac_pin6, LOW); digitalwrite(ac_pin7, LOW); digitalwrite(ac_pin8, LOW); digitalwrite(ac_pin9, LOW); digitalwrite(ac_pin10, LOW);
4 else{ digitalwrite(ac_pin11, LOW); digitalwrite(ac_pin12, LOW); digitalwrite(ac_pin13, LOW); digitalwrite(ac_pin14, LOW); digitalwrite(ac_pin15, LOW); digitalwrite(ac_pin16, LOW); digitalwrite(ac_pin17, LOW); digitalwrite(ac_pin18, LOW); idimmer++; // Increment on the idimmer loop // Until idimmer reaches 46, do nothing idimmer++; // Increment on the idimmer loop // End of the if idimmer==46 loop // End of dim_counter loop // Turn on the triacs at the appropriate times dimmer loop void counter() { // Start of the loop of the actual dimming // Each step is 1/64 th of a half-cycle if(zero_cross1 == true) { // Check that the delayed zero-cross has occurred if(i1>=dim1) { // Check if heater 1 set-point has been reached digitalwrite(ac_pin1, HIGH); // Turn heater 1 ON i1=0; // Reset time step counter of heater 1 zero_cross1=false; // Reset zero-cross Boolean // If set-point has not been reached, continue i1++; if(i2>=dim2) { // For heater 2 digitalwrite(ac_pin2, HIGH); i2=0; i2++; if(i3>=dim3) { digitalwrite(ac_pin3, HIGH); i3=0; i3++; if(i4>=dim4) { digitalwrite(ac_pin4, HIGH); i4=0; i4++; if(i5>=dim5) { digitalwrite(ac_pin5, HIGH);
5 i5=0; i5++; if(i6>=dim6) { digitalwrite(ac_pin6, HIGH); i6=0; i6++; if(i7>=dim7) { digitalwrite(ac_pin7, HIGH); i7=0; i7++; if(i8>=dim8) { digitalwrite(ac_pin8, HIGH); i8=0; i8++; if(i9>=dim9) { digitalwrite(ac_pin9, HIGH); i9=0; i9++; if(i10>=dim10) { digitalwrite(ac_pin10, HIGH); i10=0; i10++; if(i11>=dim11) { digitalwrite(ac_pin11, HIGH); i11=0; i11++; if(i12>=dim12) { digitalwrite(ac_pin12, HIGH); i12=0;
6 i12++; if(i13>=dim13) { digitalwrite(ac_pin13, HIGH); i13=0; i13++; if(i14>=dim14) { digitalwrite(ac_pin14, HIGH); i14=0; i14++; if(i15>=dim15) { digitalwrite(ac_pin15, HIGH); i15=0; i15++; if(i16>=dim16) { digitalwrite(ac_pin16, HIGH); i16=0; i16++; if(i17>=dim17) { digitalwrite(ac_pin17, HIGH); i17=0; i17++; if(i18>=dim18) { digitalwrite(ac_pin18, HIGH); i18=0; i18++; // End of dimming loop for all heaters //Read serial input data read loop
7 void loop() { // Continuously run loop reads serial input data while (read_data==true ) { if (Serial.available() > 0){ if (Serial.find("s")) { // Find the character s which defines the // beginning of the string (example: s3,17,60 ) dim1 = Serial.parseInt(); // Look for the next valid integer in the // incoming serial stream and set as // set it as the heater 1 setpoint dim2 = Serial.parseInt(); dim3 = Serial.parseInt(); dim4 = Serial.parseInt(); dim5 = Serial.parseInt(); dim6 = Serial.parseInt(); dim7 = Serial.parseInt(); dim8 = Serial.parseInt(); dim9 = Serial.parseInt(); dim10 = Serial.parseInt(); dim11 = Serial.parseInt(); dim12 = Serial.parseInt(); dim13 = Serial.parseInt(); dim14 = Serial.parseInt(); dim15 = Serial.parseInt(); dim16 = Serial.parseInt(); dim17 = Serial.parseInt(); dim18 = Serial.parseInt(); else{ dim1 = 64; dim2 = 64; dim3 = 64; dim4 = 64; dim5 = 64; dim6 = 64; dim7 = 64; dim8 = 64; dim9 = 64; dim10 = 64; dim11 = 64; dim12 = 64; dim13 = 64; dim14 = 64; dim15 = 64; dim16 = 64; dim17 = 64; dim18 = 64; // If the serial buffer is empty, then make all heater // set-points equal to 64; i.e., turn all heaters off
Arduino Credit Card Decoder Code
1 of 5 5/21/2011 10:00 AM " Account Projects Code & Files Forums Design Sketches Photos Videos Chat Arduino Credit Card Decoder Code Home 2 of 5 5/21/2011 10:00 AM Articles Arduino Credit Card Decoder
More information4Serial SIK BINDER //77
4Serial SIK BINDER //77 SIK BINDER //78 Serial Communication Serial is used to communicate between your computer and the RedBoard as well as between RedBoard boards and other devices. Serial uses a serial
More informationMEDIS Module 2. Microcontroller based systems for controlling industrial processes. Chapter 4: Timer and interrupts. M. Seyfarth, Version 0.
MEDIS Module 2 Microcontroller based systems for controlling industrial processes Chapter 4: Timer and interrupts M. Seyfarth, Version 0.1 Steuerungstechnik 1: Speicherprogrammierbare Steuerungstechnik
More informationMicrocontrollers and Interfacing week 8 exercises
2 HARDWARE DEBOUNCING Microcontrollers and Interfacing week 8 exercises 1 More digital input When using a switch for digital input we always need a pull-up resistor. For convenience, the microcontroller
More informationUnit 13 Timers and Counters
Unit 13 Timers and Counters 1 2 Review of some key concepts from the first half of the semester A BRIEF SUMMARY 3 A Few Big Ideas 1 Setting and clearing bits in a register tells the hardware what do and
More informationATmega Interrupts. Reading. The AVR Microcontroller and Embedded Systems using Assembly and C) by Muhammad Ali Mazidi, Sarmad Naimi, and Sepehr Naimi
1 P a g e ATmega Interrupts Reading The AVR Microcontroller and Embedded Systems using Assembly and C) by Muhammad Ali Mazidi, Sarmad Naimi, and Sepehr Naimi Chapter 10: AVR Interrupt Programming in Assembly
More informationArduino Prof. Dr. Magdy M. Abdelhameed
Course Code: MDP 454, Course Name:, Second Semester 2014 Arduino What is Arduino? Microcontroller Platform Okay but what s a Microcontroller? Tiny, self-contained computers in an IC Often contain peripherals
More informationArrays and Loops. Programming for Engineers Winter Andreas Zeller, Saarland University
Arrays and Loops Programming for Engineers Winter 2015 Andreas Zeller, Saarland University Datatypes millis() has the type unsigned long integer values in [0 2 32 1] Usual integer numbers ( int ) are
More informationChapter 2 The Basic Functions
Chapter 2 The Basic Functions 2.1 Overview The code you learn to write for your Arduino is very similar to the code you write in any other computer language. This implies that all the basic concepts remain
More informationRotary Encoder Basics
Rotary Encoder Basics A rotary encoder has a fixed number of positions per revolution. These positions are easily felt as small clicks you turn the encoder. The Keyes module that I have has thirty of these
More informationArduino: Serial Monitor Diagrams & Code Brown County Library
Arduino: Serial Monitor Diagrams & Code All projects require the use of the serial monitor in your Arduino IDE program (or whatever you are using to transfer code to the Arduino). Project 01: Monitor how
More informationMonitor your home remotely using the Arduino
Monitor your home remotely using the Arduino WiFi Shield How to monitor some data in your home using precisely this Arduino WiFi shield. Along with the Arduino Uno board, the final system will form an
More informationRTC rtc(dst_on); U8GLIB_SH1106_128X64 u8g(u8g_i2c_opt_none U8G_I2C_OPT_DEV_0);
#include #include #include #include RTC rtc(dst_on); U8GLIB_SH1106_128X64 u8g(u8g_i2c_opt_none U8G_I2C_OPT_DEV_0); const int WIDTH=128; const int HEIGHT=35; const
More informationGeneral Purpose Programmable Peripheral Devices. Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar
Chapter 15 General Purpose Programmable Peripheral Devices by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar Microprocessor & Interfacing (140701) Rahul Patel 1
More informationAdapted from a lab originally written by Simon Hastings and Bill Ashmanskas
Physics 364 Arduino Lab 1 Adapted from a lab originally written by Simon Hastings and Bill Ashmanskas Vithayathil/Kroll Introduction Last revised: 2014-11-12 This lab introduces you to an electronic development
More informationEnergia MSP-430!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1
Energia MSP-430 1 3 Energia 4 4 4 6 8 9 Energia 11 18 2 IIB Energia MSP-430 IIB C C++ 3 Energia Energia MSP-430 Windows Mac OS Linux MSP-430, http://www.energia.nu, Max OS X, windows Linux Mac OS X, energia-
More informationSERIAL COMMUNICATION. _creates a data stream by sending one bit at a me _occurs sequen ally H...E...L...L...O
SERIAL COMMUNICATION Bits, Bytes, Data Rates and Protocols ASCI interpreta on Using terminal to view serial Data Serial Out from Arduino Serial In to Processing SERIAL COMMUNICATION _creates a data stream
More informationParts List. XBEE/Wifi Adapter board 4 standoffs ¼ inch screws Cable XBEE module or Wifi module
Rover Wifi Module 1 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and documentation. There is a 90 day warranty for the Sten-Bot kit against component
More informationMPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine
MPLAB SIM MPLAB IDE Software Simulation Engine 2004 Microchip Technology Incorporated MPLAB SIM Software Simulation Engine Slide 1 Welcome to this web seminar on MPLAB SIM, the software simulator that
More informationThis is the Arduino Uno: This is the Arduino motor shield: Digital pins (0-13) Ground Rail
Reacting to Sensors In this tutorial we will be going over how to program the Arduino to react to sensors. By the end of this workshop you will have an understanding of how to use sensors with the Arduino
More informationDigital Design through. Arduino
Digital Design through 1 Arduino G V V Sharma Contents 1 Display Control through Hardware 2 1.1 Powering the Display.................................. 2 1.2 Controlling the Display.................................
More informationLab 02 Arduino 數位感測訊號處理, SPI I2C 介面實驗. More Arduino Digital Signal Process
Lab 02 Arduino 數位感測訊號處理, SPI I2C 介面實驗 More Arduino Digital Signal Process Blink Without Delay Sometimes you need to do two things at once. For example you might want to blink an LED (or some other timesensitive
More informationParts List. XBEE/Wifi Adapter board 4 standoffs ¼ inch screws Cable XBEE module or Wifi module
Rover Wifi Module 1 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and documentation. There is a 90 day warranty for the Sten-Bot kit against component
More informationSetup Examples. NetArrays Project Program Development
Setup Examples NetArrays Project Program Development NetArrays Project Program Development Example 2005, 2007, 2008, 2009 RTP Corporation Not for reproduction in any printed or electronic media without
More informationLecture 7. Processing Development Environment (or PDE)
Lecture 7 Processing Development Environment (or PDE) Processing Class Overview What is Processing? Installation and Intro. Serial Comm. from Arduino to Processing Drawing a dot & controlling position
More informationArduino Part 3. Introductory Medical Device Prototyping
Introductory Medical Device Prototyping Arduino Part 3, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Functions More functions: Math functions Trigonometry
More information3 Wire LED Module (SKU:DFR0090)
3 Wire LED Module (SKU:DFR0090) Contents 1 Introduction 2 Connection 3 Pinout Diagram 4 Sample Code 4.1 Test Procedure 4.2 Operating procedure Introduction This is 8 digital bits serial LED display. It
More informationNote. The above image and many others are courtesy of - this is a wonderful resource for designing circuits.
Robotics and Electronics Unit 2. Arduino Objectives. Students will understand the basic characteristics of an Arduino Uno microcontroller. understand the basic structure of an Arduino program. know how
More informationLaboratory 5 Communication Interfaces
Laboratory 5 Communication Interfaces Embedded electronics refers to the interconnection of circuits (micro-processors or other integrated circuits) with the goal of creating a unified system. In order
More informationBASIC ARDUINO WORKSHOP. Mr. Aldwin and Mr. Bernardo
BASIC ARDUINO WORKSHOP Mr. Aldwin and Mr. Bernardo 1 BASIC ARDUINO WORKSHOP Course Goals Introduce Arduino Hardware and Understand Input Software and Output Create simple project 2 Arduino Open-source
More informationIntroduction to Microprocessors: Arduino
Introduction to Microprocessors: Arduino tswsl1989@sucs.org October 7, 2013 What is an Arduino? Open Source Reference designs for hardware Firmware tools + GUI Mostly based around 8-bit Atmel AVR chips
More informationGoal: Strengthen our understanding of C and program our Mudduino boards
Goal: Strengthen our understanding of C and program our Mudduino boards #include #define myarraysize 10 int myarray[myarraysize] = 34, 18, -12, 7, 5; int i; printf("values are: ["); for(i=0;
More informationLab 4 - Asynchronous Serial Communications
Lab 4 - Asynchronous Serial Communications Part 1 - Software Loopback In serial communications one of the important tools we have that allows us to verify the communications channel is working properly
More informatione-pg Pathshala Subject: Computer Science Paper: Embedded System Module: Interrupt Programming in Embedded C Module No: CS/ES/20 Quadrant 1 e-text
e-pg Pathshala Subject: Computer Science Paper: Embedded System Module: Interrupt Programming in Embedded C Module No: CS/ES/20 Quadrant 1 e-text In this lecture embedded C program for interrupt handling
More informationFreescale Semiconductor, I
nc. Application Note Rev. 0, 4/2004 Using the HCS12X PIT as a 24-bit Elapsed Timer By Stephen Pickering 8/16-bit Systems Group East Kilbride, Scotland Introduction The HCS12X Programmable Interrupt Timer
More informationProcess Synchronization
Process Synchronization Concurrent access to shared data may result in data inconsistency Multiple threads in a single process Maintaining data consistency requires mechanisms to ensure the orderly execution
More informationCounter & LED (LED Blink)
1 T.R.E. Meeting #1 Counter & LED (LED Blink) September 17, 2017 Contact Info for Today s Lesson: President Ryan Muller mullerr@vt.edu 610-573-1890 Learning Objectives: Learn how to use the basics of Arduino
More informationLab 8. Arduino and WiFi - IoT applications
Lab 8. Arduino and WiFi - IoT applications IoT - Internet of Things is a recent trend that refers to connecting smart appliances and electronics such as microcontrollers and sensors to the internet. In
More informationConnecting Arduino to Processing
Connecting Arduino to Processing Introduction to Processing So, you ve blinked some LEDs with Arduino, and maybe you ve even drawn some pretty pictures with Processing - what s next? At this point you
More informationArduino Board Design. Nicholas Skadberg 4/30/09 EE290. Dr. Pushkin Kachroo
Arduino Board Design Nicholas Skadberg 4/30/09 EE290 Dr. Pushkin Kachroo Abstract In an effort to further understand the concept of digital control using a microprocessor, a simple serial output device
More informationgenie.attacheventhandler(mygenieeventhandler); // Attach the user function Event Handler for processing events
#include #include #include //#include Genie genie; #define RESETLINE 4 Timer t1,t4,t2; int needsave = 1; int timesince = 0; int pulses, A_SIG = 0, B_SIG
More informationXC Input and Output. 1 Outputting Data
XC Input and Output IN THIS DOCUMENT Outputting Data Inputting Data Waiting for a Condition on an Input Pin Controlling I/O Data Rates with Timers Case Study: UART (Part 1) Responding to Multiple Inputs
More informationThe Big Idea: Background: About Serial
Lesson 6 Lesson 6: Serial Serial Input Input The Big Idea: Information coming into an Arduino sketch is called input. This lesson focuses on text in the form of characters that come from the user via the
More informationanalogwrite(); The analogwrite function writes an analog value (PWM wave) to a PWM-enabled pin.
analogwrite(); The analogwrite function writes an analog value (PWM wave) to a PWM-enabled pin. Syntax analogwrite(pin, value); For example: analogwrite(2, 255); or analogwrite(13, 0); Note: Capitalization
More informationSerial.begin ( ); Serial.println( ); analogread ( ); map ( );
Control and Serial.begin ( ); Serial.println( ); analogread ( ); map ( ); A system output can be changed through the use of knobs, motion, or environmental conditions. Many electronic systems in our world
More informationUniversity of Portland EE 271 Electrical Circuits Laboratory. Experiment: Arduino
University of Portland EE 271 Electrical Circuits Laboratory Experiment: Arduino I. Objective The objective of this experiment is to learn how to use the Arduino microcontroller to monitor switches and
More informationCreating Java Programs with Greenfoot
Creating Java Programs with Greenfoot Using Loops, Variables, and Strings 1 Copyright 2012, Oracle and/or its affiliates. All rights Overview This lesson covers the following topics: Create a while loop
More informationThe short program to blink the red LED used the delay() function. This is very handy function for introducing a short time delays into programs.
Timing The short program to blink the red LED used the delay() function. This is very handy function for introducing a short time delays into programs. It helps buffer the differing time scales of humans
More informationEXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments
EXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments TEMPERATURE MEASUREMENT AND CONTROL USING LM35 Purpose: To measure
More informationSquareWear Programming Reference 1.0 Oct 10, 2012
Content: 1. Overview 2. Basic Data Types 3. Pin Functions 4. main() and initsquarewear() 5. Digital Input/Output 6. Analog Input/PWM Output 7. Timing, Delay, Reset, and Sleep 8. USB Serial Functions 9.
More informationPROJECT FINAL: WEARABLE
PROJECT FINAL: WEARABLE David Snow Wearable Computing Jackson McConnell Dec/09/2014 DEVICE: iris Project iris is a device that gamifies the experience of your daily drive. This is a device for all those
More informationInterrupts Arduino, AVR, and deep dark programming secrets. What is an Interrupt?
Interrupts Arduino, AVR, and deep dark programming secrets What is an Interrupt? A transfer of program control that is not directed by the programmer Like a phone call in the middle of a conversation Stop
More informationWorkshop on Microcontroller Based Project Development
Organized by: EEE Club Workshop on Microcontroller Based Project Development Presented By Mohammed Abdul Kader Assistant Professor, Dept. of EEE, IIUC Email:kader05cuet@gmail.com Website: kader05cuet.wordpress.com
More informationContents. List of Figures. TermDriver Datasheet 1. 1 Overview 2. 2 Features 2. 3 Installation with Arduino 3
TermDriver Datasheet 1 Contents 1 Overview 2 2 Features 2 3 Installation with Arduino 3 4 Operation 4 4.1 ANSI escape codes......................... 5 4.2 High-resolution modes........................
More informationArduino - DigitalReadSerial
arduino.cc Arduino - DigitalReadSerial 5-6 minutes Digital Read Serial This example shows you how to monitor the state of a switch by establishing serial communication between your Arduino or Genuino and
More informationE11 Lecture 4: More C!!! Profs. David Money Harris & Sarah Harris Fall 2011
E11 Lecture 4: More C!!! Profs. David Money Harris & Sarah Harris Fall 2011 Outline Logistics Serial Input Physical Inputs/Outputs Randomness Operators Control Statements Logistics Logistics Tutoring hours:
More informationSerial 8Channel AC 230VSSR and Dimmer
Serial 8Channel AC 230VSSR and Dimmer www.researchdesignlab.com Page 1 Contents OVERVIEW... 3 SERIAL 8 CHANNEL AC 230V SSR AND DIMMER... 3 FEATURES... 4 BTA12400 IC... 4 MOC 3021... 5 FIRING ANGLE... 7
More informationGoal: Understand how to write programs for the Mudduino
Goal: Understand how to write programs for the Mudduino #include int main(void) int i = 0; i = i + 25; while(1) return 0; printf("%d\n, i); i++; // This is template behind Arduino sketches int
More informationBarry the Plant Watering Robot
Barry the Plant Watering Robot We are going to create the controller board for Barry, a robot who will do some of our plant watering chores for us. We aren t going to build all of Barry, but this will
More informationIntroduction to Arduino
Introduction to Arduino Paco Abad May 20 th, 2011 WGM #21 Outline What is Arduino? Where to start Types Shields Alternatives Know your board Installing and using the IDE Digital output Serial communication
More informationMore Fun with Timer Interrupts
More Fun with Timer Interrupts Chords Objective: Play a musical chord each time you press a button: Button RC0 RC1 RC2 Timer Timer0 Timer1 Timer3 RB0 A3 C4 E4 RB1 B3 D4 F4 RB2 C4 E4 G4 Calculations: Assume
More informationArduino Programming and Interfacing
Arduino Programming and Interfacing Stensat Group LLC, Copyright 2017 1 Robotic Arm Experimenters Kit 2 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and
More informationIntroduction to Embedded Systems
Stefan Kowalewski, 4. November 25 Introduction to Embedded Systems Part 2: Microcontrollers. Basics 2. Structure/elements 3. Digital I/O 4. Interrupts 5. Timers/Counters Introduction to Embedded Systems
More informationSequence structure. The computer executes java statements one after the other in the order in which they are written. Total = total +grade;
Control Statements Control Statements All programs could be written in terms of only one of three control structures: Sequence Structure Selection Structure Repetition Structure Sequence structure The
More informationArduino: What is it? What can it do?
Arduino: What can it do? tswsl1989@sucs.org May 20, 2013 What is an Arduino? According to Arduino: Arduino is a tool for making computers that can sense and control more of the physical world than your
More informationReal Time Data Plotting
Real Time Data Plotting Introduction This lesson will show how to write a program plot data on a X-Y graph. On the Arduino, write a program to sample a sensor and print the voltage to the Serial interface.
More informationGuide for measurements of Mobile Communications and Quantum Technologies Laboratory
Guide for measurements of Mobile Communications and Quantum Technologies Laboratory Arduino/Moteino development Place of measurement: Department of Networked Systems and Services, Mobile Communications
More informationCS111: PROGRAMMING LANGUAGE II
CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1(c): Java Basics (II) Lecture Contents Java basics (part II) Conditions Loops Methods Conditions & Branching Conditional Statements A
More informationSupplementary Data. //Timer period in microseconds. We use 1ms resolution
Supplementary Data Firmware for the Controller //------------------------------------------ // Tube-climber controller // Alar Ainla, 2017 GMW Group Harvard //------------------------------------------
More informationFUNCTIONS For controlling the Arduino board and performing computations.
d i g i t a l R e a d ( ) [Digital I/O] Reads the value from a specified digital pin, either HIGH or LOW. digitalread(pin) pin: the number of the digital pin you want to read HIGH or LOW Sets pin 13 to
More informationIntroduction to Arduino. Wilson Wingston Sharon
Introduction to Arduino Wilson Wingston Sharon cto@workshopindia.com Physical computing Developing solutions that implement a software to interact with elements in the physical universe. 1. Sensors convert
More informationMAE106 Laboratory Exercises Lab # 1 - Laboratory tools
MAE106 Laboratory Exercises Lab # 1 - Laboratory tools University of California, Irvine Department of Mechanical and Aerospace Engineering Goals To learn how to use the oscilloscope, function generator,
More informationHands-on Lab 2: LabVIEW NI-DAQ Basics 2
Hands-on Lab 2: LabVIEW NI-DAQ Basics 2 Recall that the final objective is position regulation using computer-controlled state feedback. Computer control requires both software, like LabVIEW and hardware,
More informationInterrupts & Interrupt Service Routines (ISRs)
ECE3411 Fall 2015 Lecture 2c. Interrupts & Interrupt Service Routines (ISRs) Marten van Dijk, Syed Kamran Haider Department of Electrical & Computer Engineering University of Connecticut Email: vandijk,
More informationCSCE374 Robotics Fall 2013 Notes on the irobot Create
CSCE374 Robotics Fall 2013 Notes on the irobot Create This document contains some details on how to use irobot Create robots. 1 Important Documents These notes are intended to help you get started, but
More informationMake your own secret locking mechanism to keep unwanted guests out of your space!
KNOCK LOCK Make your own secret locking mechanism to keep unwanted guests out of your space! Discover : input with a piezo, writing your own functions Time : 1 hour Level : Builds on projects : 1,,3,4,5
More informationArduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S
Arduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S Overview Motivation Circuit Design and Arduino Architecture Projects Blink the LED Switch Night Lamp
More informationChapter 5: Process Synchronization. Operating System Concepts 9 th Edition
Chapter 5: Process Synchronization Silberschatz, Galvin and Gagne 2013 Chapter 5: Process Synchronization Background The Critical-Section Problem Peterson s Solution Synchronization Hardware Mutex Locks
More information1 Making Decisions in Arduino Programs
ME 120: If-then-else structures in Arduino October 11, 2018 Gerald Recktenwald gerry@pdx.edu 1 Making Decisions in Arduino Programs It s incredibly useful that computer programs can respond to changing
More informationImperativ Programming. morning (again) Jens Dalsgaard Nielsen Aalborg University (1/24)
Imperativ Programming morning (again) Jens Dalsgaard Nielsen (jdn@es.aau.dk) Aalborg University (1/24) message Changed timing today Jens Dalsgaard Nielsen (jdn@es.aau.dk) Aalborg University (2/24) Jens
More informationProject 17 Shift Register 8-Bit Binary Counter
Project 17 Shift Register 8-Bit Binary Counter In this project, you re going to use additional ICs (Integrated Circuits) in the form of shift registers in order to drive LEDs to count in binary (I will
More informationGamma sensor module GDK101
Application Note: Interfacing with Arduino over I 2 C The Arduino makes an ideal platform for prototyping and data collection with the Gamma sensors. Electrical Connections Interfacing with the sensor
More informationCHAPTER 11 INTERRUPTS PROGRAMMING
CHAPTER 11 INTERRUPTS PROGRAMMING Interrupts vs. Polling An interrupt is an external or internal event that interrupts the microcontroller To inform it that a device needs its service A single microcontroller
More informationSkill Level: Beginner
ADXL345 Quickstart Guide by zaggrad January 10, 2011 Skill Level: Beginner Description: The ADXL345 is a small, thin, low power, 3-axis accelerometer with high resolution (13-bit) measurement at up to
More informationCmpSci 187: Programming with Data Structures Spring 2015
CmpSci 187: Programming with Data Structures Spring 2015 Lecture #9 John Ridgway February 26, 2015 1 Recursive Definitions, Algorithms, and Programs Recursion in General In mathematics and computer science
More informationProgramming Language. Functions. Eng. Anis Nazer First Semester
Programming Language Functions Eng. Anis Nazer First Semester 2016-2017 Definitions Function : a set of statements that are written once, and can be executed upon request Functions are separate entities
More informationThe 8255A: Programmable Peripheral Interface
CMP:885 Peripherals Summary- EE39: Computer Organization, rchitecture and MicroProcessors http://www.ee.iitb.ac.in/ sumantra/courses/up/up.html The 855: Programmable Peripheral Interface PROGRMMER S VIEW
More informationTimer0..Timer3. Interrupt Description Input Conditions Enable Flag
Timer0..Timer3 Timers are pretty useful: likewise, Microchip provides four different timers for you to use. Like all interrupts, you have to Enable the interrupt, Set the conditions of the interrupt, and
More informationConnecting Arduino to Processing a
Connecting Arduino to Processing a learn.sparkfun.com tutorial Available online at: http://sfe.io/t69 Contents Introduction From Arduino......to Processing From Processing......to Arduino Shaking Hands
More informationNI-DAQmx Basic Course NITS John Shannon
NI-DAQmx Basic Course NITS 2005 John Shannon Agenda Intro to DAQMX Difference between traditional / DaqMX MAX and DAQ Assistance Analog Input / Output Property Nodes Buffered / Continuous Acquisition Analog
More informationThe Simon State Machine Part 1
The Simon State Machine Part 1 Lab Summary This lab is the first part to a two-part lab where you will be combining all the components you created throughout the semester into one functioning state machine.
More informationLab 3 XBees and LCDs and Accelerometers, Oh My! Part 1: Wireless Communication Using XBee Modules and the Arduino
University of Pennsylvania Department of Electrical and Systems Engineering ESE 205 Electrical Circuits and Systems Laboratory I Lab 3 XBees and LCDs and Accelerometers, Oh My! Introduction: In the first
More informationAdvanced Activities - Information and Ideas
Advanced Activities - Information and Ideas Congratulations! You successfully created and controlled the robotic chameleon using the program developed for the chameleon project. Here you'll learn how you
More informationLaboratory 4 Usage of timers
Laboratory 4 Usage of timers 1. Timer based interrupts Beside external interrupt, the MCU responds to internal ones which are triggered by external events (on the external pins). The source of the internal
More informationArduino Programming Part 4: Flow Control
Arduino Programming Part 4: Flow Control EAS 199B, Winter 2010 Gerald Recktenwald Portland State University gerry@me.pdx.edu Goal Make choices based on conditions in the environment Logical expressions:
More informationUniversity of Hull Department of Computer Science C4DI Interfacing with Arduinos
Introduction Welcome to our Arduino hardware sessions. University of Hull Department of Computer Science C4DI Interfacing with Arduinos Vsn. 1.0 Rob Miles 2014 Please follow the instructions carefully.
More informationThis tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno.
This tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno. Note that there are two different module types: the temperature sensor module and
More informationLøkkestrukturer. Trykknap: Button, Se eksempler / Digital / Button. Decision: If: Version 01/ Loops, løkker mm. i Arduino.
Loops, løkker mm. i Arduino Links til: Trykknap If, If Else If For-Loop While, Do While PWM Serial Read Funktioner Array, Matrix Trykknap: Button, Se eksempler / Digital / Button int buttonpin=2 pinmode(buttonpin,
More informationComputer Science CS221 Test 2 Name. 1. Give a definition of the following terms, and include a brief example. a) Big Oh
Computer Science CS221 Test 2 Name 1. Give a definition of the following terms, and include a brief example. a) Big Oh b) abstract class c) overriding d) implementing an interface 10/21/1999 Page 1 of
More informationRochester Institute of Technology CMPE 663/EEEE 663 Graduate Student Project
Rochester Institute of Technology CMPE 663/EEEE 663 Graduate Student Project Graduate Student Project: Extend the USART Demo project to include blocking and non-blocking (interrupt driven) versions of
More information