Asservissement en température numérique d'une cavité ultra-stable au LPL pour le Strontium
|
|
- Janel Harris
- 5 years ago
- Views:
Transcription
1 Asservissement en température numérique d'une cavité ultra-stable au LPL pour le Strontium condition de stabilité +/- 10mK Résultas obtenus : 1mk sur la journée Compte tenu des constantes de temps d'intégration nous avons opté pour un lock numérique avec un uc 16 bits. ADC et DAC 12 bits MSP430F169 16bits Texas instruments, and IAR Workbench for MSP430 or Code composer studio for MSP430 Cahier des charges: La précision du lock en température devrait être de l'ordre de 10 mk, pour assurer une stabilité en fréquence du laser de l'ordre de quelques khz. L'élément chauffant a une résistance de 6 Ohm. Un courant de l'ordre de 0.6 A devrait fournir la puissance pour nous amener au point de fonctionnement vers 27 C. Élément de mesure : thermistor MC65F103B Alimentation DC maison linéaire et ajustable pour la partie chauffage. Ci-joint le code C du projet: gestion affiche LCD + calcul température + fonction standby + contrôle de la consigne de température + lock + timer + déclaration des variables + déclaration prototypes + fichier init système (ADC-DAC TIMER- PORT IN OUT) Carte PCB générique avec zone de prototypage pas 2.54mm.
2 Programme principal: void init_sys(void); void tempo_loop(long loop_number); // MSP430 Initialisation routine // wait void write_dac12_0(int out_data); // write DAC12_0 routine void write_dac12_1(unsigned short out_data); // write DAC12_1 routine int read_adc12(int chanel); // read routine on ADC12 char lock(); void standby(); // init state of state machine unsigned short racine(unsigned long valin); int Lcd_Cmd(int portp4); int lcd_display(char *disp); int lcd_display2(char *disp2); int lcd_print(char *s);
3 int Lcd_Clear(); void Lcd_Init(void); int load_lcd_consigne(void); int calcul_resistor_thermistance(void); void visu_etat_lock(void); int consigne=2048; static unsigned int DAC0_out; static unsigned int DAC1_out; static int ADC_in; static int ADC_in_2; static float ADC_in_2_convert_in_volt; static long error_signal; static long accu_out; static long prop; static unsigned long valin; static unsigned short valout; static long control; static char next_state = 0; static char state = 0; static char s[20]; static char t[20]; static double RTH; static double Temperature_in_degre;
4 static double calcul_ln; char i = 0; char j = 0; void main(void) init_sys(); // Initialise the MSP430 Lcd_Init(); tempo_loop(10); Lcd_Clear(); tempo_loop(10); Lcd_Cmd(0x80); lcd_display("welcome to"); Lcd_Cmd(0xc0); lcd_display("cnrs-lpl-ig-up13"); tempo_loop(10); Lcd_Clear(); tempo_loop(10); Lcd_Cmd(0x84); lcd_display("atelier"); Lcd_Cmd(0xc2); lcd_display("electronique"); tempo_loop(10); Lcd_Clear();
5 tempo_loop(10); sprintf(t,"t in Deg= %.3f",Temperature_in_degre); Lcd_Cmd(0x80); lcd_display(t); copy_ram_to_consigne(); Lcd_Cmd(0xc0); sprintf(s,"consigne= %d",consigne); lcd_display(s); standby(); _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt Gestion de l'affichage : //Table 1: Character LCD pins with 1 Controller //**********************************************// //1 VSS Power supply (GND) //2 VCC Power supply (+5V) //3 VEE Contrast adjust //4 RS 0 = Instruction input //1 = Data input //5 R/W 0 = Write to LCD module
6 //1 = Read from LCD module //6 EN Enable signal //7 D0 Data bus line 0 (LSB) //8 D1 Data bus line 1 //9 D2 Data bus line 2 //10 D3 Data bus line 3 //11 D4 Data bus line 4 //12 D5 Data bus line 5 //13 D6 Data bus line 6 //14 D7 Data bus line 7 (MSB) int Lcd_Port(int portp4) P4OUT = portp4; return 0; // Function for sending command to LCD int Lcd_Cmd(int portp4) //RS = 0x00; // => RS = 0 P1OUT &= ~BIT7; /* Pin P1.6 = 0 */ Lcd_Port(portP4); //E = 0x40; // Enable = 1
7 P1OUT = BIT6; /* Pin P1.7 = 1 */ tempo_loop(1000); //E = 0x00; // Enable = 0 P1OUT &= ~BIT6; /* Pin P1.7 = 0 */ return 0; // Function for sending data to LCD int Lcd_data(int portp4) Lcd_Port(portP4); //RS = 0x80; // RS = 1 P1OUT = BIT7; /* Pin P1.6 = 1 */ //E = 0x40; //Enable = 1 P1OUT = BIT6; /* Pin P1.7 = 1 */ tempo_loop(1000); //E = 0x00; // Enable = 0 P1OUT &= ~BIT6; /* Pin P1.7 = 0 */ return 0; int Lcd_Clear() Lcd_Cmd(0);
8 Lcd_Cmd(1); return 0; void Lcd_display_off() Lcd_Cmd(0); Lcd_Cmd(0x0C); void Lcd_Shift_Right() Lcd_Cmd(0x01); Lcd_Cmd(0x18); void Lcd_Shift_Left() Lcd_Cmd(0x01); Lcd_Cmd(0x1C); // Function for initializing LCD void Lcd_Init() Lcd_Cmd(0x38); //Function set: 2 Line, 8-bit, 5x7 dots
9 Lcd_Cmd(0x0c); Lcd_Cmd(0x01); Lcd_Cmd(0x06); //Clear LCD //Entry mode, auto increment with no shift Lcd_Cmd(0x83); // DDRAM addresses 0x80..0x8F + 0xC0..0xCF are used. // Function for sending string to LCD int lcd_display(char *disp) int x=0; while(disp[x]!=0) Lcd_data(disp[x]); x++; return 0; Calcul de la température + affichage int calcul_resistor_thermistance(void) WDTCTL = WDTPW + WDTHOLD; // stop Watch Dog Timer ADC_in_2_convert_in_volt = (ADC_in_2*2.498)/4096; RTH = (ADC_in_2_convert_in_volt*9100)/( ADC_in_2_convert_in_volt); float K = ; // T(25 C)
10 calcul_ln = log((rth/10000)); //log népérien Temperature_in_degre = 1/(calcul_ln/ /K) ; en degrès C //température sprintf(t,"t in Deg= %.3f",Temperature_in_degre); Lcd_Cmd(0x80); lcd_display(t); return 0; fonction standby void standby() WDTCTL = WDTPW + WDTHOLD; DAC0_out= consigne; DAC1_out= 0; // stop WatchDog // init DAC0 // init DAC1 accu_out= 0; P2OUT &= ~BIT1; /* Pin P2.1 = 0 */ P2OUT &= ~BIT2; /* Pin P2.2 = 0 */ P2OUT &= ~BIT3; /* Pin P2.3 = 0 */ P2OUT &= ~BIT4; /* Pin P2.4 = 0 */ P2OUT &= ~BIT5; /* Pin P2.5 = 0 */
11 fonction lock: char lock() error_signal = (ADC_in - consigne); // error_signal => int (16 bits) ( to 32767) prop = error_signal << 21; control = prop + accu_out ; // + (accu_out >> 8); visu_etat_lock(); if(p1in & 0x20) if (accu_out >= accu_out <= ) accu_out = accu_out; else accu_out = (error_signal << 7) + accu_out; if(control < 0) valin = 0; else valin = (control << 1);
12 valout = racine(valin); DAC1_out = valout >> 4; return 0; unsigned short racine(unsigned long valin) //on linéarise la réponse de la thermistance unsigned short valout=0; unsigned long diff=0l; for(int i=0; i<16; i++) diff <<= 2; valout <<=1; diff = valin >> 30; valin <<=2; if(diff > 2*valOut) return valout; diff -= (2*valOut)+1; valout++;
13 fonction timer pour échantillonnage #pragma vector = TIMERB0_VECTOR // timer pour échantillonner à 0.1s interrupt void Timer_B (void) WDTCTL = WDTPW + WDTCNTCL; write_dac12_1(dac1_out); DAC12_1 write_dac12_0(dac0_out); DAC12_0 ADC_in = read_adc12(inch_3); ADC_in_2 = read_adc12(inch_4); // clear and start WatchDog // write DAC1_out to // write DAC0_out to // read signal erreur // read tension thermistor calcul_resistor_thermistance(); if((p2in & 0x01)==0x01) consigne + //P2.0 modification de la valeur de if(p3in & 0x01) consigne = consigne + 10; //handle P1.7 switch if (P3IN & 0x02) consigne = consigne + 100; if(( P3IN & BIT0 ) == 0 && ( P3IN & BIT1 ) == 0 ) consigne = consigne + 1; P1IFG &= ~BIT1;
14 if((p1in & 0x01)==0x01) //P1.0 modification de la valeur de consigne - if(p3in & 0x01) consigne = consigne - 10; //handle P1.7 switch if (P3IN & 0x02) consigne = consigne - 100; if(( P3IN & BIT0 ) == 0 && ( P3IN & BIT1 ) == 0 ) consigne = consigne - 1; P1IFG &= ~BIT0; chargement_consigne(); DAC0_out = consigne; Lcd_Cmd(0xc0); sprintf(s,"consigne= %d",consigne); lcd_display(s); state = next_state; if(p1in & 0x10) // P1.4 mode standby ou lock state=0; else state=1;
15 switch (state) case 0:standby();break; case 1:lock();break; fonction init system and init ports void init_sys(void) P1SEL = 0x00; P2SEL = 0x00; P3SEL = 0x00; P4SEL = 0x00; P5SEL = 0x1B; P5.0 P6SEL = 0x18; Enable A/D channel A3 channel A4 // P1 I/O select // P2 I/O select // P3 I/O select // P4 I/O select // P5.1,3 SPI option select CS // P6.5 ADC_3 options select P1DIR = 0xC0; // P1 inputs direction P1.6 P1.7 outputs P2DIR = 0xFE; // P2 input direction P2.0 input P3DIR = 0xFC; // P3 output direction P3.0 P3.1 inputs P4DIR = 0xFF; // P4 output direction
16 P5DIR = 0xFF; P6DIR = 0xF7; //ADC12CTL0 = REF2_5V + REFON; ADC12CTL0 = SHT0_4 + ADC12ON; ADC12 ADC12CTL1 = SHP + ADC12SSEL_3; clock //ADC12MCTL0 = SREF_1; ADC12MCTL0 = SREF_2; // P5 output direction // P6.3 input/other output // Internal 2.5V ref on // Set sampling time, turn on // Use sampling timer & SMCLK // Use Internal 2.5V for ADC // Vr+ = VeREF+ (external) //DAC12_0CTL = DAC12IR + DAC12AMP_2 + DAC12RES; // 8bits, internal ref gain 1 (DAC_0 select with DAC12AMP_2) //DAC12_1CTL = DAC12IR + DAC12AMP_2 + DAC12RES; // 8bits, internal ref gain 1 (DAC_1 select with DAC12AMP_2) DAC12_0CTL = DAC12IR + DAC12SREF_3 + DAC12AMP_7 + DAC12ENC; //Ref = Veref+, Full-Speed, Enable Conv. DAC12_1CTL = DAC12IR + DAC12SREF_3 + DAC12AMP_7 + DAC12ENC; //Ref = Veref+, Full-Speed, Enable Conv. // DCO frequency ~200 khz DCOCTL &= ~(DCO1 + DCO0); BCSCTL1 &= ~RSEL2; BCSCTL1 = RSEL1; // + ~RSEL0; // timer B TBCCTL0 = CCIE; TBCTL = TASSEL_2 + MC_1 + ID_3; mode // CCR0 interrupt enabled // clk = SMCLK/8 (=DCO/8), Up //TBCCR0 = 2500; // timer count at 1/2500 clk : 0,1s TBCCR0 = 250;
17
CPE 323 Introduction to Embedded Computer Systems: ADC12 and DAC12. Instructor: Dr Aleksandar Milenkovic Lecture Notes
CPE 323 Introduction to Embedded Computer Systems: ADC12 and DAC12 Instructor: Dr Aleksandar Milenkovic Lecture Notes Outline MSP430: System Architecture ADC12 Module DAC12 Module CPE 323 2 ADC12 Introduction
More information#define PD4 (*((volatile unsigned long *)0x )) #define PE3 (*((volatile unsigned long *)0x ))
//Table 1: Character LCD pins with 1 Controller //**********************************************// //1 VSS Power supply (GND) //2 VCC Power supply (+5V) //3 VEE Contrast adjust //4 RS 0 = Instruction input
More information// Conditions for 9600/4=2400 Baud SW UART, SMCLK = 1MHz #define Bitime_5 0x05*4 // ~ 0.5 bit length + small adjustment #define Bitime 13*4//0x0D
/****************************************************************************** * * * 1. Device starts up in LPM3 + blinking LED to indicate device is alive * + Upon first button press, device transitions
More informationCPE 325: Embedded Systems Laboratory Laboratory #11 Tutorial Analog-to-Digital Converter and Digital-to-Analog Converter
CPE 325: Embedded Systems Laboratory Laboratory #11 Tutorial Analog-to-Digital Converter and Digital-to-Analog Converter Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka
More informationInterfacing CMR3000-D01 to an MSP430 ultra low-power microcontroller
Interfacing CMR3000-D01 to an MSP430 ultra low-power microcontroller 1 INTRODUCTION The objective of this document is to show how to set up SPI/I2C communication between VTI Technologies CMR3000-D01 digital
More informationCPE 325: Embedded Systems Laboratory Laboratory #7 Tutorial MSP430 Timers, Watchdog Timer, Timers A and B
CPE 325: Embedded Systems Laboratory Laboratory #7 Tutorial MSP430 Timers, Watchdog Timer, Timers A and B Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective This
More informationTexas Instruments Microcontroller HOW-TO GUIDE Interfacing Keypad with MSP430F5529
Texas Instruments Microcontroller HOW-TO GUIDE Interfacing Keypad with MSP430F5529 Contents at a Glance PS PRIMER MSP430 kit... 3 Keypad... 4 Interfacing keypad... 4 Interfacing keypad with MSP430F5529...
More informationInterfacing CMA3000-D01 to an MSP430 ultra low-power microcontroller
Interfacing CMA3000-D01 to an MSP430 ultra low-power microcontroller 1 INTRODUCTION The objective of this document is to show how to set up SPI/I2C communication between VTI Technologies CMA3000-D01 digital
More informationECE2049: Embedded Computing in Engineering Design C Term Spring 2019 Lecture #22: MSP430F5529 Operating Mode & the WDT
ECE2049: Embedded Computing in Engineering Design C Term Spring 2019 Lecture #22: MSP430F5529 Operating Mode & the WDT Reading for Today: User's Guide 1.4, Ch 16 Reading for Next Class: Review all since
More informationTexas Instruments Mixed Signal Processor Tutorial Abstract
Texas Instruments Mixed Signal Processor Tutorial Abstract This tutorial goes through the process of writing a program that uses buttons to manipulate LEDs. One LED will be hard connected to the output
More informationCPE 323: MSP430 Timers
CPE 323: MSP430 Timers Aleksandar Milenkovic Electrical and Computer Engineering The University of Alabama in Huntsville milenka@ece.uah.edu http://www.ece.uah.edu/~milenka Outline Watchdog Timer TimerA
More informationCPE/EE 323 Introduction to Embedded Computer Systems Homework V
CPE/EE 323 Introduction to Embedded Computer Systems Homework V 1(15) 2(15) 3(25) 4(25) 5(20) Total Problem #1 (15 points) Power, Low power systems A sensor platform features a microcontroller, a sensor,
More informationECE PRACTICE EXAM #2 Clocks, Timers, and Digital I/O
ECE2049 -- PRACTICE EXAM #2 Clocks, Timers, and Digital I/O Study HW3, Class Notes, Davies Ch 2.6, 5.8, 8, 9.2-3, 9.7, MSP43F5529 User's Guide Ch 5, 17, 28 Work all problems with your note sheet first
More informationECE 492 WINTER 2015 GROUP 2. Texas Instruments MSP430-FR Bit ADC Setup Guide
APPLICATION NOTE MIKE PAPPAS ECE 492 WINTER 2015 GROUP 2 Texas Instruments MSP430-FR5969 12-Bit ADC Setup Guide March 2015 Table of Contents Preface... 3 Pin Assignments... 4 Configuring the ADC... 4 Sampling
More informationUniversity of Texas at El Paso Electrical and Computer Engineering Department. EE 3176 Laboratory for Microprocessors I.
University of Texas at El Paso Electrical and Computer Engineering Department EE 3176 Laboratory for Microprocessors I Fall 2016 LAB 04 Timer Interrupts Goals: Learn about Timer Interrupts. Learn how to
More information2.996/6.971 Biomedical Devices Design Laboratory Lecture 6: Microprocessors II
2.996/6.971 Biomedical Devices Design Laboratory Lecture 6: Microprocessors II Instructor: Dr. Hong Ma Oct. 1, 2007 Structure of MSP430 Program 1. Declarations 2. main() 1. Watch-dog timer servicing 2.
More informationMSP430. More on MSP430
MSP430 More on MSP430 CodeComposer TI recently launched Code Composer Essentials v3. This IDE s latest version (version 3) supports all available MSP430 devices. The new features of CCE v3 include: - Free
More informationECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #15: More ADC Examples
ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #15: More ADC Examples Reading for Today: TI example code Reading for Next Class: Users Guide 6.2, Davies Ch 6.6-6.9 HW #4 (on
More informationLab 1: I/O, timers, interrupts on the ez430-rf2500
Lab 1: I/O, timers, interrupts on the ez430-rf2500 UC Berkeley - EE 290Q Thomas Watteyne January 25, 2010 1 The ez430-rf2500 and its Components 1.1 Crash Course on the MSP430f2274 The heart of this platform
More informationCPE 323 Introduction to Embedded Computer Systems: MSP430 System Architecture An Overview
CPE 323 Introduction to Embedded Computer Systems: MSP430 System Architecture An Overview Aleksandar Milenkovic Electrical and Computer Engineering The University of Alabama in Huntsville milenka@ece.uah.edu
More informationLecture 5: MSP430 Interrupt
ECE342 Intro. to Embedded Systems Lecture 5: MSP430 Interrupt Ying Tang Electrical and Computer Engineering Rowan University 1 How A Computer React to Inputs? Polling: the processor regularly looks at
More informationECE2049: Embedded Computing in Engineering Design A Term Fall 2017 Lecture #16: Interrupts and Event Driven Code
ECE2049: Embedded Computing in Engineering Design A Term Fall 2017 Lecture #16: Interrupts and Event Driven Code Reading for Today: Example code Reading for Next Class: Review all since exam 1 HW #4 (on
More informationC Language Programming through the ADC and the MSP430 (ESCAPE)
OpenStax-CNX module: m46087 1 C Language Programming through the ADC and the MSP430 (ESCAPE) Matthew Johnson Based on C Language Programming through the ADC and the MSP430 by Matthew Johnson This work
More informationECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class)
ECE2049 Homework #2 The MSP430 Architecture & Basic Digital IO (DUE Friday 9/8/17 at 4 pm in class) Your homework should be neat and professional looking. You will loose points if your HW is not properly
More informationWhat is an Interrupt?
MSP430 Interrupts What is an Interrupt? Reaction to something in I/O (human, comm link) Usually asynchronous to processor activities interrupt handler or interrupt service routine (ISR) invoked to take
More informationUsing peripherals on the MSP430 (if time)
Today's Plan: Announcements Review Activities 1&2 Programming in C Using peripherals on the MSP430 (if time) Activity 3 Announcements: Midterm coming on Feb 9. Will need to write simple programs in C and/or
More informationGetting Started with the Texas Instruments ez430
1 of 6 03.01.2009 01:33 HOME Running Your Code>> Getting Started with the Texas Instruments ez430 Working with the Workbench Software Step 1: Each program needs an associated project. The project includes
More informationECE2049: Embedded Computing in Engineering Design C Term Spring Lecture #7: More Digital IO
ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #7: More Digital IO Reading for Today: Davies 7.5-7.9, Users Guide Ch 12 Reading for Next Class: Davies 7.5-7.9, Users Guide
More informationCopyright 2015 by Stephen A. Zajac & Gregory M. Wierzba. All rights reserved..spring 2015.
Copyright 2015 by Stephen A. Zajac & Gregory M. Wierzba. All rights reserved..spring 2015. Copyright 2015 by Stephen A. Zajac & Gregory M. Wierzba. All rights reserved..spring 2015. Copyright 2015 by Stephen
More informationMSP430 Interrupts. Change value of internal variable (count) Read a data value (sensor, receive) Write a data value (actuator, send)
MSP430 Interrupts What is an Interrupt? Reaction to something in I/O (human, comm link) Usually asynchronous to processor activities interrupt handler or interrupt service routine (ISR) invoked to take
More informationTimers and Clocks CS4101 嵌入式系統概論. Prof. Chung-Ta King. Department of Computer Science National Tsing Hua University, Taiwan
CS4101 嵌入式系統概論 Timers and Clocks Prof. Chung-Ta King Department of Computer Science, Taiwan Materials from MSP430 Microcontroller Basics, John H. Davies, Newnes, 2008 Recall the Container Thermometer Container
More informationInterrupts, Low Power Modes
Interrupts, Low Power Modes Registers Status Register Interrupts (Chapter 6 in text) A computer has 2 basic ways to react to inputs: 1) polling: The processor regularly looks at the input and reacts as
More informationSupporting Information for. Simultaneous Atomic-Level Visualization and High Precision
Electronic Supplementary Material (ESI) for RSC Advances. This journal is The Royal Society of Chemistry 2017 Supporting Information for Simultaneous Atomic-Level Visualization and High Precision Photocurrent
More informationUC Berkeley EE40/100 Lab Lab 6: Microcontroller Input/Output B. Boser, etc.
UCBerkeleyEE40/100Lab Lab6:MicrocontrollerInput/Output B.Boser,etc. NAME1: NAME2: SID: SID: Microcontrollersareverymuchslimmeddowncomputers.Nodisks,novirtualmemory,nooperatingsystem.Thinkofthem justlikeothercircuitcomponentswiththeaddedbenefitofbeingconfigurablewithaprogram.becauseofthis,
More informationBlock diagram of processor (Harvard)
Block diagram of processor (Harvard) Register transfer view of Harvard architecture Separate busses for instruction memory and data memory Example: PIC 16 load path OP REG AC 16 16 store path rd wr data
More information6. General purpose Input/Output
Chapter 6 6. General purpose Input/Output This chapter starts with a description of one of the simplest integrated peripherals of the MSP430 the General Purpose 8-bit Input Output (GPIO). The Input/Output
More informationECE2049: Embedded Computing in Engineering Design C Term Spring Lecture #11: More Clocks and Timers
ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #11: More Clocks and Timers Reading for Today: Davie's Ch 8.3-8.4, 8.9-8.10, User's Guide Ch. 17 Reading for Next Class: User's
More informationAnalog Peripherals. Introduction. Objectives
Analog Peripherals Introduction In this section we ll take a look at the MSP430 analog peripherals. It s not possible in this limited amount of time to give you a complete overview of the possible analog
More informationName: Clint Furrer Project Number: TI003 Project Description: Safety Walking Lights. Description:
Description: This project addresses the concern and problem of pedestrians walking with automotive traffic. I walk to and from a bus stop every morning and evening for work. There is usually low light
More informationFall. Accelerometer RGB LED control Vishal Shah Rebel Sequeira Pratiksha Patil Pranali Dhuru Chris Blackden. George Mason University
Fall 13 Accelerometer RGB LED control Vishal Shah Rebel Sequeira Pratiksha Patil Pranali Dhuru Chris Blackden George Mason University Introduction The ECE 511 course gave us the opportunity to team up
More informationWhy embedded systems?
MSP430 Intro Why embedded systems? Big bang-for-the-buck by adding some intelligence to systems. Embedded Systems are ubiquitous. Embedded Systems more common as prices drop, and power decreases. Which
More informationECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #8: Making it work: LEDs, Buttons & Keypad
ECE2049: Embedded Computing in Engineering Design A Term Fall 2018 Lecture #8: Making it work: LEDs, Buttons & Keypad Reading for Today: Users Guide Ch 12 Reading for Next Class: Review all reading, notes,
More informationDesigning for Ultra-Low Power with MSP430
Designing for Ultra-Low Power with MSP430 Christian Hernitscheck MSP430 FAE Europe Texas Instruments 2006 Texas Instruments Inc, Slide 1 Agenda Introduction to Ultra-Low Power Looking for Ultra-Low Power
More informationCONTENTS: Program 1 in C:
CONTENTS: 1) Program 1 in C (Blink) 2) Program 2 in C (Interrupt ) 3) ADC example 4) Addressing Modes 5) Selected Assembly instructions 6) ADC10 register descriptions Program 1 in C: /* * PHYS319 Lab3
More informationLab 4: Interrupt. CS4101 Introduction to Embedded Systems. Prof. Chung-Ta King. Department of Computer Science National Tsing Hua University, Taiwan
CS4101 Introduction to Embedded Systems Lab 4: Interrupt Prof. Chung-Ta King Department of Computer Science, Taiwan Introduction In this lab, we will learn interrupts of MSP430 Handling interrupts in MSP430
More informationIV B.Tech. I Sem (R13) ECE : Embedded Systems : UNIT -2 1 UNIT 2
IV B.Tech. I Sem (R13) ECE : Embedded Systems : UNIT -2 1 UNIT 2 1. Block diagram of MSP430x5xx series micro-controller --------------------- 1 2. CPU architecture of MSP430x5xx ------------------------------------------------
More informationAlex Milenkovich 1. CPE/EE 421 Microcomputers: The MSP430 Introduction. Outline
Outline CPE/EE 421 Microcomputers: The MSP430 Introduction Instructor: Dr Aleksandar Milenkovic Lecture Notes MSP430: An Introduction The MSP430 family Technology Roadmap Typical Applications The MSP430
More informationFile: /media/j/texas/my msp430/g3tr/g3tr.c Pagina 1 di 5
File: /media/j/texas/my msp430/g3tr/g3tr.c Pagina 1 di 5 /+ filename: g3tr.c G3TR means: Giuseppe Talarico Transistor Type Recognizer This version is for launchpad MSP430 Just only two 10K resistors and
More informationECE2049: Embedded Computing in Engineering Design C Term Spring 2018
ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #19: Using SPI The LCD Screen and DAC Reading for Today: User's Manual Ch 35, Davies 101.5, DAC datasheet Reading for Next Class:
More informationECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #20: Using SPI The DAC
ECE2049: Embedded Computing in Engineering Design C Term Spring 2018 Lecture #20: Using SPI The DAC Reading for Today: Users Guide Ch 35, MCP4921, data sheet, on-line articles Reading for Next Class: Users
More information@databasescaling Wednesday, 18 th April 2013
andyjpb@ashurst.eu.org @databasescaling Wednesday, 18 th April 2013 OSHUG #24 1 / 56 Writing C For Constrained Systems a@jpb.li @databasescaling Wednesday, 18 th April 2013 OSHUG #24 2 / 56 Writing C For
More informationAlex Milenkovich 1. CPE/EE 421 Microcomputers. Course Administration. Review: Outline. Getting Started with EasyWeb2. Review: MSP bit RISC
CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S12 Course Administration Instructor: URL: TA: Labs: Test I: Text: Review: Today: Aleksandar Milenkovic milenka@ece.uah.edu www.ece.uah.edu/~milenka
More informationInterrupts CS4101 嵌入式系統概論. Prof. Chung-Ta King. Department of Computer Science National Tsing Hua University, Taiwan
CS4101 嵌入式系統概論 Interrupts Prof. Chung-Ta King Department of Computer Science, Taiwan Materials from MSP430 Microcontroller Basics, John H. Davies, Newnes, 2008 Inside MSP430 (MSP430G2551) 1 Introduction
More informationReview Activity 1 CALL and RET commands in assembler
Today's Plan: Announcements Review Activity 1 CALL and RET commands in assembler Lecture test Programming in C continue Announcements: Projects: should be starting to think about. You will need to provide
More informationECE 492 WINTER 2015 GROUP 2. Texas Instruments MSP430-FR Bit ADC Setup Guide
APPLICATION NOTE MIKE PAPPAS ECE 492 WINTER 2015 GROUP 2 Texas Instruments MSP430-FR5969 12-Bit ADC Setup Guide March 2015 Table of Contents Preface... 3 Pin Assignments... 4 Configuring the ADC... 4 Sampling
More informationLC-E201A. Application note. 1. Mechanical Specification: LC-E021A-application note page 1 of 16 Revision:
LC-E201A Application note 1. Mechanical Specification: LC-E021A-application note page 1 of 16 Revision: 2. Input/ Output Pin Assignment Pin No. Symbol I/O Description Remark 1 NC Do not connect 2 GDR O
More informationvolatile int results[5]; // variables para la interrupcion del acelerometro //Funciones del acelerometro para mandar y recibir información
Anexo A. Código de programación #include #include #include "lcdlib.h" // variables para guardar informacion de los canales analógicos volatile int results[5]; // variables para la interrupcion
More informationCPE/EE 421 Microcomputers
CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S19 CPE/EE 421/521 Microcomputers 1 Course Administration Instructor: URL: Aleksandar Milenkovic milenka@ece.uah.edu www.ece.uah.edu/~milenka
More informationLab Experiment 9: LCD Display
Lab Experiment 9: LCD Display 1 Introduction Liquid Crystal Displays (LCDs) provide an effective way for processors to communicate with the outside world. The LPC2148 board used in the lab is equipped
More informationThe modules in this lab room are 4 line by 16 character display modules. The data sheet/users manual for the module is posted on My.Seneca.
LCD Modules A common output display device used with low cost embedded systems is a character LCD display. The displays are available as complete modules with a standard microprocessor parallel interface.
More informationHacettepe University
MSP430 Teaching Materials Week 5 FUNDAMENTALS OF INTERFACING AND TIMERS for MSP430 Hacettepe University Elements in Basic MCU Interface Power Source Feeds CPU and peripherals Clock Oscillators System synchronization
More informationUniversity of Texas at El Paso Electrical and Computer Engineering Department. EE 3176 Laboratory for Microprocessors I.
University of Texas at El Paso Electrical and Computer Engineering Department EE 3176 Laboratory for Microprocessors I Fall 2016 LAB 06 Analog to Digital Conversion Goals: Bonus: Pre Lab Questions: Display
More informationEEL 4924 Electrical Engineering Design (Senior Design) Team Baudiophile. Wireless Headphones
EEL 4924 Electrical Engineering Design (Senior Design) Final Design Report 25 April 2012 Team Baudiophile Wireless Headphones Team Members: Name: Stephen Brewer Name: Eli Chen Project Abstract Our project
More informationECE2049 Homework #4 Analog-to-Digital Conversion and the ADC12 (Due Thursday 2/15/2018 to box outside AK-011 by 9 am)
ECE2049 Homework #4 Analog-to-Digital Conversion and the ADC12 (Due Thursday 2/15/2018 to box outside AK-011 by 9 am) PLEASE (NEATLY) SHOW ALL WORK! Comment all code well. Do not make the grader guess
More informationMSP430F149 P3.4/UTXD0 P3.5/URXD0 P1.5 P1.6 P1.7 MSP430F149 P1.0 P5.4 P5.3 P5.2 P5.1. Figure B-1. BSL Replicator Block Diagram
Appendix B Appendix B MSP430 BSL Replicator Author: Greg Morton, MSP430 Applications B.1 BSL Replicator Overview The BSL Replicator application, executing on a host MSP430F149 device, uses the BSL protocol
More informationEMBEDDED HARDWARE DESIGN. Tutorial Interfacing LCD with Microcontroller /I
EMBEDDED HARDWARE DESIGN Tutorial Interfacing LCD with Microcontroller 2009-10/I LCD (Liquid Crystal Display) has become very popular option for displaying in Embedded Applications. Since they are very
More informationRTC Interface 89C51 DS M. Krishna Kumar MAM/M7/LU17/V1/ Vcc VCC 5 SDA P1.0 6 SCL P KHz 3 BAT 3.
RTC Interface 89C51 Vcc P1.0 10k 10k 5 SDA DS 1307 8 VCC P1.1 6 SCL X1 1 + 3 BAT X2 2 32.768KHz - 3.6V 4 GND INTB\SQW 7 M. Krishna Kumar MAM/M7/LU17/V1/2004 1 RTC Interface contd. DS 1307 is a real time
More informationHacettepe University
MSP430 Teaching Materials Week 5 FUNDAMENTALS OF INTERFACING AND TIMERS for MSP430 Hacettepe University Elements in Basic MCU Interface Power Source Feeds CPU and peripherals Clock Oscillators System synchronization
More informationECE 4510/5530 Microcontroller Applications Week 9
ECE 45/553 Microcontroller Applications Week 9 Dr. Bradley J. Bazuin Associate Professor Department of Electrical and Computer Engineering College of Engineering and Applied Sciences Lab 7 & 8 Elements
More informationReading: Davies , 8.3-4, , MSP430x55xx User's Guide Ch. 5,17
ECE2049 Homework #3 Clocks & Timers (Due Tuesday 9/19/17 At the BEGINNING of class) Your homework should be neat and professional looking. You will loose points if your HW is not properly submitted (by
More informationReading: Davies , 8.3-4, , MSP430x55xx User's Guide Ch. 5,17, MSP430F5529 Launchpad User's Guide
ECE2049 Homework #3 Clocks & Timers (Due Thursday 2/8/18 At the BEGINNING of class) Your homework should be neat and professional looking. You will loose points if your HW is not properly submitted (by
More informationLaboratory 3 Working with the LCD shield and the interrupt system
Laboratory 3 Working with the LCD shield and the interrupt system 1. Working with the LCD shield The shields are PCBs (Printed Circuit Boards) that can be placed over the Arduino boards, extending their
More informationECET 491Senior Design Project Title: Wind Speed Data Logger
ECET 491Senior Design Project Title: Wind Speed Data Logger Department of Computer, Electrical, and Information Technology Indiana University-Purdue University Fort Wayne Date: 02/19/2012 Student: Chuck
More informationNetwork Embedded Systems Sensor Networks Fall Hardware. Marcus Chang,
Network Embedded Systems Sensor Networks Fall 2013 Hardware Marcus Chang, mchang@cs.jhu.edu 1 Embedded Systems Designed to do one or a few dedicated and/or specific functions Embedded as part of a complete
More informationCPE/EE 421 Microcomputers
CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S11 MSP430 Documentation MSP430 home page (TI) www.ti.com/msp430 User s manual http://www.ece.uah.edu/~milenka/cpe421-05s/manuals/slau049c.pdf
More informationCPE/EE 421 Microcomputers
CPE/EE 421 Microcomputers Instructor: Dr Aleksandar Milenkovic Lecture Note S13 *Material used is in part developed by Dr. D. Raskovic and Dr. E. Jovanov CPE/EE 421/521 Microcomputers 1 MSP430 Documentation
More informationThe digital I/O is configured with user software. The setup and operation of the digital I/O is discussed in the following sections.
Digital I/O Introduction www.ti.com 8. Digital I/O Introduction MSP43 devices have up to eight digital I/O ports implemented, P to P8. Each port has up to eight I/O pins. Every I/O pin is individually
More informationChapter 26 Topic Page 26.1 ADC12 Introduction
Chapter 26 The module is a high-performance 12-bit analog-to-digital converter (ADC). This chapter describes the. The is implemented in the MSP430x43x MSP430x44x, MSP430FG461x devices. Topic Page 26.1
More information5xx Active & Low Power Mode Operation
5xx Active & Low Power Mode Operation 38 Lab 2: ULP Operation Lab Goals Learn ULP Best Practices Learn & understand how to configure two key modules of the 5xx to achieve ultra-low power operation. Power
More information4 Degrees of Freedom MEMS Sensor Improvements
4 Degrees of Freedom MEMS Sensor Improvements Design Document Name: Xin Zhou Yue Zhang Team Dec12-09 Ang Lv Nicholas Everett Jenn Grubb Advisor: Degang Chen Client: Bee Line Company Bob Last Updated: Dec
More informationCPE 323: MSP430 Serial Communication
CPE 323: MSP430 Serial Communication Aleksandar Milenkovic Electrical and Computer Engineering The University of Alabama in Huntsville milenka@ece.uah.edu http://www.ece.uah.edu/~milenka Outline Introduction
More informationMIDTERM#1. 2-(3pts) What is the difference between Von Neumann & Harvard processor architectures?
CSE421-Microprocessors & Microcontrollers-Spring 2013 (March 26, 2013) NAME: MIDTERM#1 1- (2pts) What does MSP stand for in MSP430? Why? Mixed Signal Processor. It contains both analog and digital circuitry.
More informationUniversity of Texas at El Paso Electrical and Computer Engineering Department. EE 3176 Laboratory for Microprocessors I.
University of Texas at El Paso Electrical and Computer Engineering Department EE 3176 Laboratory for Microprocessors I Fall 2016 LAB 08 UART Communication Goals: Learn about UART Communication and the
More informationLCD. Configuration and Programming
LCD Configuration and Programming Interfacing and Programming with Input/Output Device: LCD LCD (liquid crystal display) is specifically manufactured to be used with microcontrollers, which means that
More informationWireless Sensor Networks (WSN)
Wireless Sensor Networks (WSN) Operating Systems M. Schölzel Operating System Tasks Traditional OS Controlling and protecting access to resources (memory, I/O, computing resources) managing their allocation
More informationLecture (09) PIC16F84A LCD interface LCD. Dr. Ahmed M. ElShafee
Lecture (09) PIC16F84A LCD interface PIC16F84A LCD interface Assignment 01, 4 Zones fire controller board Assignment 02, automatic water tank controller Dr. Ahmed M. ElShafee ١ ٢ LCD LCD (Liquid Crystal
More informationLecture test next week
Lecture test next week Write a short program in Assembler doing. You will be given the print outs of all the assembler programs from the manual You can bring any notes you want Today: Announcements General
More informationPhysics 319 Spring 2015: Introduction to the Programming and Use of Microprocessors
Physics 319 Spring 2015: Introduction to the Programming and Use of Microprocessors Sing Chow, Andrzej Kotlicki, Ryan Wicks, and Carl Michal December 2014 This lab is going to introduce you to the world
More informationSI 021 S-DIAS SSI Interface Module
SI 021 S-DIAS SSI Interface Module Date of creation: 16.06.2014 Version date: 18.10.2017 Article number: 20-022-021-E Publisher: SIGMATEK GmbH & Co KG A-5112 Lamprechtshausen Tel.: +43/6274/4321 Fax: +43/6274/4321-18
More information// sets the position of cursor in row and column
CODE: 1] // YES_LCD_SKETCH_10_14_12 #include //lcd(rs, E, D4, D5, D6, D7) LiquidCrystal lcd(8, 9, 4, 5, 6, 7); int numrows = 2; int numcols = 16; void setup() Serial.begin(9600); lcd.begin(numrows,
More informationEEL 4924 Electrical Engineering Design (Senior Design) Final Design Report 18 April 2011
EEL 4924 Electrical Engineering Design (Senior Design) Final Design Report 18 April 2011 Project Name: Multi-Zone Climate Control System Team Name: G 2 Intelligent HVAC System Solutions Team Members: Name:
More informationTowards Hard Real-time Performance in a Highly Asynchronous Multitasking MSP430 Application Andrew E. Kalman, Ph.D.
Towards Hard Real-time Performance in a Highly Asynchronous Multitasking MSP430 Application Andrew E. Kalman, Ph.D. Slide 1 Outline Overview Part I: TimerA does PWM Part II: TimerB drives a Stepper Part
More informationC-DIAS Analog Input Module CAI 086 For eight, ±10V voltage inputs
C-DIAS ANALOG INPUT MODULE CAI 086 C-DIAS Analog Input Module CAI 086 For eight, ±10V voltage inputs This analog input module is used for the input of voltage values in the range of ±100mV / ±1.0V and10v.
More informationHands-On: Implementing an RF link with MSP430 and CC1100
Hands-On: Implementing an RF link with MSP430 and CC1100 Keith Quiring MSP430 Applications Engineer Texas Instruments 2006 Texas Instruments Inc, Slide 1 Overview Introduction Target Hardware Library File
More informationAuto-Alignment Laser Mirrors First Semester Report Fall Semester 2013
Auto-Alignment Laser Mirrors First Semester Report Fall Semester 2013 -Full Report- by Michael M. Rader Prepared to partially fulfill requirements for ECE401 Department of Electrical and Computer Engineering
More informationTPL5000EVM User's Guide
User's Guide TPL5000EVM User's Guide 1 Introduction The Texas Instruments TPL5000EVM evaluation module (EVM) allows a designer to configure the delay timers of the TPL5000 and measure its very low current
More informationApplication Note. Connecting standard LCD modules to. the MB90670/5 series. History 01 th Feb. 97 MM V1.0 started 28 th June 00 TKa V1.
Application Note Connecting standard LCD modules to the MB90670/5 series Fujitsu Microelectronics Europe GmbH, Microcontroller Application Group History 01 th Feb. 97 MM V1.0 started 28 th June 00 TKa
More informationTechnical Data. C-DIAS-MULTI l/o MODULE CIO 013
C-DIAS-MULTI l/o MODULE CIO 013 C-DIAS-Multi I/O Module CIO 013 6 x digital inputs (+24V, 5mA, 5ms) input 3 useable as interrupt (+24V, 5mA, 10 s) 2 x digital counter inputs (+5V, 5mA, 1 s) 8 x digital
More informationECE2049: Embedded Computing in Engineering Design A Term Fall Lecture #9: Exam Review w/ Solutions
ECE2049: Embedded Computing in Engineering Design A Term Fall 2018 Lecture #9: Exam Review w/ Solutions Reading for Today: Review all reading and notes, Davies Ch 1, 2, 4,7, MSP430 User's Guide Ch 6.1,
More informationLab 4 Interrupts ReadMeFirst
Lab 4 Interrupts ReadMeFirst Lab Folder Content 1) ReadMeFirst 2) Interrupt Vector Table 3) Pin out Summary Objectives Understand how interrupts work Learn to program Interrupt Service Routines in C Language
More information