Presentation is loading. Please wait.

Presentation is loading. Please wait.

Embedded Systems – Shape the World Course Review: Jan – May 2015 edX – MOOC UT.6.02x University of Austin, Texas Jonathan Valvano & Ramesh Yerriballi Student:

Similar presentations


Presentation on theme: "Embedded Systems – Shape the World Course Review: Jan – May 2015 edX – MOOC UT.6.02x University of Austin, Texas Jonathan Valvano & Ramesh Yerriballi Student:"— Presentation transcript:

1 Embedded Systems – Shape the World Course Review: Jan – May 2015 edX – MOOC UT.6.02x University of Austin, Texas Jonathan Valvano & Ramesh Yerriballi Student: Craig Cook TriEmbed Group – 8 June 2015 www.triembed.org

2 Who am I? Bachelor of Information Technology Worked in IT since mid 90's Former Systems Administrator IT Manager Recently interested in Raspberry Pi and Ardunio

3 edX MOOC - Massive Online Open Course 28,000 students (approx) 4000 worked on real board finished one lab Tiva™ C Series TM4C123G LaunchPad Evaluation Board - ARM Cortex™-M4F CPU Sponsors: ARM and Texas Instruments Free (optional paid certificate)

4 Target Students High School or College student thinking about engineering career Tech who likes gadgets (should know about http://embedded.fm) Professional engineer expanding skills to embedded systems

5 Course Goals Understanding how the computer stores and manipulates data The understanding of embedded systems using modular design and abstraction C programming: considering both function and style The strategic use of memory

6 Course Goals (Continued) Debugging and verification using a simulator and on the real microcontroller How input/output using switches, LEDs, DACs, ADCs, motors, and serial ports The implementation of an I/O driver, multithreaded programming Understanding how local variables and parameters work

7 Course Goals (Continued) Analog to digital conversion (ADC), periodic sampling Simple motors (e.g., open and closed-loop stepper motor control) Digital to analog conversion (DAC), used to make simple sounds Design and implementation of elementary data structures

8 Buying Hardware Worldwide Course Element14 Digikey Mouser US$40 - US$70 parts http://edx-org- utaustinx.s3.amazonaws.com/UT601x/index.ht ml

9 Image from http://users.ece.utexas.edu/~valvano/Volume1/ E-Book/

10 Software Keil uVision (V4.74) - compiler/debugger/simulator developed by ARM TexaS - Test EXecute and Simulate C programming language

11 Support piazza (student forums) Study Groups (organized via piazza)

12

13 Module 1 Welcome and Introduction to course and staff Introduction Structure and Objectives Syllabus http://users.ece.utexas.edu/~valvano/Volume1/ E-Book/ Assessment New for Spring 2015

14

15

16 Module 1 Welcome and Introduction to course and staff Introduction Structure and Objectives Syllabus http://users.ece.utexas.edu/~valvano/Volume1/ E-Book/ Assessment New for Spring 2015

17 Module 2 Fundamental concepts Binary number systems Embedded Systems Introduction to Computers IO ports (GPIO) / Alternate function CPU registers Assembly Language Address space and memory map Software Development Process

18 Figure 2.6. An embedded system includes a microcomputer interfaced to external devices. http://users.ece.utexas.edu/~valvano/Volume1/E- Book/C2_FundamentalConcepts.htm

19 Module 2 Fundamental concepts Binary number systems Embedded Systems Introduction to Computers IO ports / Alternate function CPU registers Assembly Language Address space and memory map Software Development Process

20 Module 3 Electronics Electric Circuits Resistors Voltage Current Ohm’s Law

21 Module 4 Digital Logic Binary Information Implemented with MOS transistors Digital Logic Flip-flops are used for storage Binary Adder Digital Information stored in Memory

22

23 Module 4 Digital Logic Binary Information Implemented with MOS transistors Digital Logic Flip-flops are used for storage Binary Adder Digital Information stored in Memory

24 Logic Functions

25 Module 4 Digital Logic Binary Information Implemented with MOS transistors Digital Logic Flip-flops are used for storage Binary Adder Digital Information stored in Memory

26 Module 5 Introduction to C programming Introduction Structure and Organization of C Variables and Expressions Functions Conditional branching and loops Keyboard input using scanf C Keywords and Punctuation

27

28 Module 6 Microcontroller Input/Output Stellaris and Tiva pins Basic Concepts of Input and Output Ports I/O Programming and the Direction Register Debugging monitor using a LED Hardware Debugging Tools

29 Alternate Functions UART Universal asynchronous receiver/transmitter SSI Synchronous serial interface I2C Inter-integrated circuit Timer Periodic interrupts, input capture, and output compare PWM Pulse width modulation ADC Analog to digital converter, measure analog signals Analog Comparator Compare two analog signals QEI Quadrature encoder interface USB Universal serial bus Ethernet High-speed network CAN Controller area network

30 Module 6 Microcontroller Input/Output Stellaris and Tiva pins Basic Concepts of Input and Output Ports I/O Programming and the Direction Register Debugging monitor using a LED Hardware Debugging Tools

31 Initialize an I/O port for general use void PortF_Init(void){ volatile unsigned long delay; SYSCTL_RCGC2_R |= 0x00000020; // 1) activate clock for Port F delay = SYSCTL_RCGC2_R; // allow time for clock to start GPIO_PORTF_LOCK_R = 0x4C4F434B; // 2) unlock GPIO Port F GPIO_PORTF_CR_R = 0x1F; // allow changes to PF4-0 // only PF0 needs to be unlocked, other bits can't be locked GPIO_PORTF_AMSEL_R = 0x00; // 3) disable analog on PF GPIO_PORTF_PCTL_R = 0x00000000; // 4) PCTL GPIO on PF4-0 GPIO_PORTF_DIR_R = 0x0E; // 5) PF4,PF0 in, PF3-1 out GPIO_PORTF_AFSEL_R = 0x00; // 6) disable alt funct on PF7-0 GPIO_PORTF_PUR_R = 0x11; // enable pull-up on PF0 and PF4 GPIO_PORTF_DEN_R = 0x1F; // 7) enable digital I/O on PF4-0 }

32 Module 6 Microcontroller Input/Output Stellaris and Tiva pins Basic Concepts of Input and Output Ports I/O Programming and the Direction Register Debugging monitor using a LED Hardware Debugging Tools

33 Module 7 Design and Development Process Product Life Cycle Successive Refinement Quality Design Functions, Procedures, Methods, Subroutines Making Decisions

34

35 Module 7 Design and Development Process Product Life Cycle Successive Refinement Quality Design Functions, Procedures, Methods, Subroutines Making Decisions

36 Golden Rule of Software Development Write software for others as you wish they would write for you.

37 Module 7 Design and Development Process Product Life Cycle Successive Refinement Quality Design Functions, Procedures, Methods, Subroutines Making Decisions

38 Module 8 Interfacing Switches and LEDs Breadboards Switches LED interfaces Hardware and software design using flowcharts. Testing

39 Module 9 Arrays and Functional Debugging Debugging Theory SysTick Timer Arrays Strings Functional debugging

40 Module 10 Finite State Machines Phase Lock Loop Systick Structs Finite State Machines Stepper Motors

41

42 Finite State Machine http://users.ece.utexas.edu/~valvano/Volume1/E- Book/C10_FiniteStateMachines.htm Interactive Tool 10.1

43 Module 10 Finite State Machines Phase Lock Loop Systick Structs Finite State Machines Stepper Motors

44 Module 11 Serial Interfacing I/O Synchronization Universal Asynchronous Receiver/Transmitter (UART) - The Serial Interface Conversions Distributed Systems Interfacing the Nokia 5110

45

46 Module 11 Serial Interfacing I/O Synchronization Universal Asynchronous Receiver/Transmitter (UART) - The Serial Interface Conversions Distributed Systems Interfacing the Nokia 5110

47 Module 12 Interrupts Interrupt Concepts Inter-thread communication and synchronization Nested Vectored Interrupt Controller (NVIC) on the ARM Cortex-M Processor Edge-triggered Interrupts SysTick Periodic Interrupts DC Motor Interface with PWM

48 Module 13 DAC and Sound Approximating continuous signals in the digital domain Interactive Tool 13.1 Digital to Analog Conversion Interactive Tool 13.2 Sound Generated by Speakers Music Generation

49

50 Module 13 DAC and Sound Interactive Tool 13.1 http://users.ece.utexas.edu/~valvano/Volume1/ E-Book/C13_DACSound.htm

51 Module 13 DAC and Sound Approximating continuous signals in the digital domain Interactive Tool 13.1 Digital to Analog Conversion Interactive Tool 13.2 Sound Generated by Speakers Music Generation

52 Module 13 DAC and Sound Interactive Tool 13.2 http://users.ece.utexas.edu/~valvano/Volume1/ E-Book/C13_DACSound.htm

53 Module 13 DAC and Sound Approximating continuous signals in the digital domain Interactive Tool 13.1 Digital to Analog Conversion Sound Generated by Speakers Music Generation

54

55 3 Bit DAC

56 Module 14 ADC and Data Acquisition Analog to Digital Conversion ADC on the TM4C123/LM4F120 Nyquist Theorem Data Acquisition and Control Systems Robot Car Controller

57

58

59 Module 14 ADC and Data Acquisition Analog to Digital Conversion ADC on the TM4C123/LM4F120 Nyquist Theorem Data Acquisition and Control Systems Robot Car Controller

60

61 Module 14 ADC and Data Acquisition Analog to Digital Conversion ADC on the TM4C123/LM4F120 Nyquist Theorem Data Acquisition and Control Systems Robot Car Controller

62 Module 15 Systems Approach to Game Design Requirements Document Modular Design Introduction to Graphics Using Structures to Organizing Data Periodic Interrupt using Timer 2A Random Number Generator Summary and Best Practices

63

64 Lab 16 Internet of Things Introduction to the Internet of Things The internet in a nutshell Internet of Things IP Addresses CC3100 Booster pack Client Server communication Communication with a weather server Summary and best practices

65 Final Thoughts Many hours of work Great introduction to Embedded Systems Want to finish course Possible future presentations

66


Download ppt "Embedded Systems – Shape the World Course Review: Jan – May 2015 edX – MOOC UT.6.02x University of Austin, Texas Jonathan Valvano & Ramesh Yerriballi Student:"

Similar presentations


Ads by Google