appin technology lab code number system conversion binary to decimal number conversion hexadecimal...

13
APPIN TECHNOLOGY LAB HOMTECH DIPLOMA PROGRAM EMBEDDED SYSTEMS AND ROBOTICS COURSE CONTENT MODULE: INTRODCUTION TO EMBEDDED SYSTEMS UNIT 1: EMBEDDED SYSTEMS OVERVIEW The overview Embedded system development Choice of programming languages Development tools Development kits Portability UNIT 2: EMBEDDED SYSTEMS DESIGN Introduction Systems design in general History of embedded systems Categories of embedded systems Metrics for embedded systems Hardware platforms Specification/design of embedded systems Operating systems for embedded Typical embedded system constraints Embedded system design issues Challenges and trends in embedded systems Design challenge – optimizing design metrics Current implication UNIT 3: BASIC MACHINE CONCEPTS Introduction Development/classification of microcontrollers (invisible) Harvard vs. Princeton architecture Revisiting computers Assemblers Compilers Linkers Loaders Debuggers The embedded software development process Embedded software development Otp and flash programming Different systems have different problems Relative embedded system importance

Upload: lekien

Post on 13-Apr-2018

250 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

HOMTECH DIPLOMA PROGRAM

EMBEDDED SYSTEMS AND ROBOTICS COURSE CONTENT

MODULE: INTRODCUTION TO EMBEDDED SYSTEMS

UNIT 1: EMBEDDED SYSTEMS OVERVIEW The overview Embedded system development Choice of programming languages Development tools Development kits Portability

UNIT 2: EMBEDDED SYSTEMS DESIGN Introduction Systems design in general History of embedded systems Categories of embedded systems Metrics for embedded systems Hardware platforms Specification/design of embedded systems Operating systems for embedded Typical embedded system constraints Embedded system design issues Challenges and trends in embedded systems Design challenge – optimizing design metrics Current implication

UNIT 3: BASIC MACHINE CONCEPTS Introduction Development/classification of microcontrollers (invisible) Harvard vs. Princeton architecture Revisiting computers Assemblers Compilers Linkers Loaders Debuggers The embedded software development process Embedded software development Otp and flash programming Different systems have different problems Relative embedded system importance

Page 2: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

MODULE: DIGITAL ELECTRONICS

UNIT 1: NUMBER SYSTEMS & CODES CONVERSIONS Number system Representation Counting in binary Binary arithmetic Addition Subtraction Multiplication Division Bitwise operations Conversion to and from other numeral systems Hexadecimal Octal Representing real numbers Binary coded decimal What are gray codes, and why are they used? Excess-3

UNIT 2: LAWS OF BOOLEAN ALGEBRA The basic Boolean laws Logic gates Logic gate symbols Inputs and outputs The inverting circle (o) Truth tables Logic ICS Universal gates Combinations of logic gates Working out the function of a combination of gates Substituting one type of gate with another Reducing the number of inputs Making a not gate from a NAND or nor gate Any gate can be built from NAND or nor gate NAND gate equivalents Substituting gates in logic system

UNIT 3: K-MAP 2-variable k-map Equivalent labeling Example: carry and sum of a half adder Grouping/circling k-maps Example of invalid groups 3-variable k-map

Page 3: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

UNIT 4: CIRCUITS Adders Truth table K-map sum K-map carry Full adder using and-or Full adder using x-or Subtracter Multipliers Dividers Parallel binary subtracter 4-bit binary full adder Introducing adder circuits Basic operation Combinational circuits Sum of products Circuit design using sum of products Limitations of sum-of-products Something to think about Digital multiplexers Digital demultiplexers Encoders and decoders

UNIT 5: LATCHES AND FLIP-FLOPS Set-reset flip-flops (SR flip-flops) Toggle flip-flops (t flip-flops) JK flip-flop D flip-flop Master-slave d flip-flop Clocked set-reset flip-flop The master-slave flip-flop What is the race around condition? Shift register Types of shift register Serial-in, serial-out Serial-in, parallel-out Parallel-in, serial-out Parallel-in, parallel-out, universal shift register Uses of shift register

UNIT 6: ALL ABOUT COUNTERS Counters in electronics Asynchronous (ripple) counters Synchronous counters Johnson counters (ring counter) Decade counters Up-down counters Ring counters

Page 4: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

Johnson ring counters or twisted ring counter Modulo-n counter Counters in computer science Counters in the internet

UNIT 7: MEMORY DEVICES Memory terminology Different types of memory Two types of ram Types of dram packages and dram memory

UNIT 8: ENCODING SYSTEMS AND LOGIC ARRAYS Technical details Pal vs. Ntsc Pal vs. Secam Broadcast systems pal has been used with pal b/g/d/k/i Pal-m standard (brazil) Pal-nc Pal-n Pal l Programmable logic array Fixed logic versus programmable logic Advantages and disadvantages

MODULE: 8051-INTRODUCTION TO MICROCONTROLERS

UNIT 1: DESIGN PHILOSOPHIES Overview of microcontrollers RISC design philosophy Typical characteristics of RISC Early RISC Later RISC RISC and x86 Diminishing benefits Success stories CISC-complex instruction set computer

UNIT 2: APPLICATIONS OF A MICROCONTROLLER Components of microcontrollers UART Serial peripheral interface (SPI) Pulse width modulation (PWM) I2c bus technology Data transmission Bit timing Can bit timing layer

Page 5: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

UNIT 3: MICROCONTROLLER 8051 Introduction: microcontroller 8051 Memory organization Registers Addressing modes Register addressing Direct addressing Indirect addressing Register specific addressing Immediate addressing Index addressing The 8051 instruction set Timing Serial communication Programming in c Tr1=1; //start timer Interrupt enable (IE) special function register Interrupt priority (IP) special function register Interfacing LCD

MODULE: EMBEDDED SYSTEMS WITH C

UNIT 1: C AND DATA STRUCTURES C programming language history Characteristics of c Variables C operators Expressions Functions in c Arrays Pointers Input and output in c Preprocessor directives Bitwise operators and bitfields

UNIT 2: EMBEDDED C From the c program to the machine language Using the keil environment I/o port programming Serial port programming in c Interrupt programming in c LCD programming in c AVR using c

MODULE: EMBEDDED ROBOTICS

UNIT 1: ROBOTICS

Page 6: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

History of robotics Robot timeline Why build robots? What is a robot? Other specific hazardous environments Current research in robotics around the world Current research projects at MIT Balance of legged robots Analysis of gaits in legged animals The creep Kinematics of leg design Kinematics of robotic manipulator

UNIT 2: APPLICATIONS OF ROBOTICS Reading resistance Read a resistor's value Resistor tolerance Sensors for robots Analog sensors vs. Digital sensors Types of robot sensors Motors Path finder robot Mobile robot

MODULE: AVR

UNIT 1: AVR Introduction Features of AVR AVR basic families History Why should we use AVR?

UNIT 2: HARDWARE DESCRIPTION OF AVR Architecture of atmega AVR General purpose register Stack pointer Instruction execution timing Reset and interrupt handling Interrupt response time Pin diagram of atmega16 AVR AVR assembler directives The program and data addressing modes Instruction set AVR ASM bit manipulation I/o port programming on AVR AVR memories

Page 7: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

UNIT 3: AVR ON CHIP Timers/counters What is prescaler? Configuring and running the timer Timer 0 Timer 2 and timer 0 Timer 1 Interrupts Serial peripheral interface – SPI Serial communication Asynchronous versus synchronous serial transmission USART Analog to digital converter Interfacing LCD using AVR Seven segment display Keypad interfacing

MODULE: PIC

UNIT 1: INTRODUCTION: WORLD OF MICROCONTROLLERS This is how it all got started Microcontroller versus microprocessor Basic concept Binary number system Hexadecimal number system BCD code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion Marking numbers Bit Byte Logic circuits And gate Or gate Read only memory (rom) Interrupt Central processor unit (CPU) Bus Serial communication Baud rate Oscillator Power supply circuit Timers/counters Counters Watchdog timer A/D converter

Page 8: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

Internal architecture Instruction set

UNIT 2: PIC MICROCONTROLLERS Features of pic18fxx8 A brief history of the pic microcontroller Pic microcontroller peripherals The wreg register in the pic The pic file register Status register Data format representation Assembling and linking a pic program Instruction flow/pipelining Access bank Bank select register (BSR)

UNIT 3: INSTRUCTION SET FOR PIC18FXXX Instruction set Instruction execution time

UNIT 4: PIC MICROCONTROLLER L/0 PINS Pin diagram Tris register role in outputting data

UNIT 5: PIC PROGRAMMING IN ‘C’ Why program the pic18 in c? C data types for the pic18 Time delay I/o programming in c Logic operations in c Pragma and allocating a flxed address to data and code Timer programming Timer1 Counter programming Programming timers 0 and 1 in c Programming timers 2 and 3

UNIT 6: PIC18 SERIAL PORT PROGRAMMING What is rs-232? Start and stop bits Data transfer rate Pic18 serial port programming in assembly Spbrg register and baud rate in the pic18 Txreg register Rcreg register Txsta (transmit status and control register) Rcsta (receive status and control register) Pir1 (peripheral interrupt register 1)

Page 9: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

Programming the pic18 to transfer data serially Importance of the txif flag Programming the pic18 to receive data serially Importance of the rcif flag bit Quadrupling the baud rate in the pic18 Baud rates for brgh = 0 Pic18 serial port programming in c

UNIT 7: INTERRUPT PROGRAMMING Interrupts vs. Polling Interrupt service routine Programming timer interrupts Pic18 interrupt programming in c using c18 compiler Programming external hardware interrupts Programming the serial communication interrupts Portb-change interrupt

UNIT 8: INTERFACING LCD USING PIC18 LCD 16x2 How LCD works? Keypad interfacing Scanning a matrix keypad

MODULE: PRACTICLE APPLICATIONS USING MICROCONTROLLERS

UNIT 1: INTRODUCTION: INTERFACING COMPONENTS USING MICROCONTROLLERS History of 8051 Architecture of 8051 Memory organization Registers Addressing modes

UNIT 2: OVERVIEW OF EMBEDDED C From the c program to the machine language Using the keil environment

UNIT 3: LEDS Led Interfacing or using push button switch with 8051 Interfacing relay with 8051 using keil c – at89c51 Interfacing relay with 8051 using transistor Interfacing relay with 8051 using transistors – circuit diagram Interfacing of LCD LCD pin functions LCD sample program

UNIT 4: INTERFACING OF SEVEN SEGMENT DISPLAY

Page 10: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

Seven segment configurations Multiplexing 7 segment display to 8051

UNIT 5: INTERFACING OF MATRIX DISPLAY Block diagram Circuit diagram

UNIT 6: INTERFACING OF KEYPAD Keypad interfacing Scanning a matrix keypad Interfacing dc motor to 8051 L293 motor driver Bi directional dc motor using 8051 Bidirectional motor with pushbutton control Stepping sequence of stepper motors Full step sequence Half step sequence Interfacing using l293d Interfacing using uln2003 Interfacing bipolar stepper motor Ultrasonic range finder using 8051 Hc-sr04 ultrasonic module Hc-sr04 timing diagram Ultrasonic range finder using 8051- circuit diagram About the program

MODULE: EMBEDDED LINUX

UNIT 1: MODULE EMBEDDED LINUX What is Unix? What is Linux Red hat Linux Embedded OS architecture Boot loader Linux boot process Runlevel scripts Finishing up Linux root file system Important features of files and directories Linux commands Introduction to GCC compiler Working with vi editor Storage issues Installation of Linux

Page 11: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

MODULE: EMBEDDED OS

UNIT 1: BASICS OF OPERATING SYSTEM Introduction to OS process management Real time operating system What is a process? Interprocess communication Memory management I\o subsystem File system organization Who can access a file?

UNIT 2: POSIX Posix thread programming What are pthreads?

UNIT 3: RTOS Introduction to RTOS Non-real-time systems Real-time systems Real time scheduling Performance metrics of RTOS RTOS considerations Memory management Priority based scheduling Requirements of RTOS

UNIT 4: RTLINUX Introduction Compiling and configuring RTlinux Why RTlinux?

MODULE: ARM

UNIT 1: INTRODUCTION TO ARM Arm embedded systems History of arm Arm7 Applications Device information The arm in the market Further work on the arm The development of arm3 Arm becomes the advanced RISC machine Development of arm6

Page 12: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB

Arm design objectives RISC machine Introduction to arm7 Introducing to types of arm Arm9

UNIT 2: ARM PROGRAMMING MODEL Pipelines Arm7 block diagram Arm7 functional diagram Programmer's model Registers The stack pointer, sp or r13 The link register, lr or r14 The program counter, pc or r15 The memory system Exceptions Exception priorities Interrupt latencies Reset The arm c compiler

UNIT 3: PIN CONFIGURATION OF LPC 2148 P0.0 to p0.31 Instruction set Thumb instruction set overview General information Pseudo-instructions Examples to understand implementation of commands

UNIT 4: PORGAMMING ON KEIL

UNIT 5: ARM C/C++ COMPILER DETAILS Highlights C language definition C++ language definition Data sizes Optimizations Function calling conventions In-line assembler Code and data location Linker scripting Source code browsing Debug records C library routines Arm programming in c Lpc2148 timer programming Setting up & configuring timers Interfacing 16x2 LCD with lpc2148 tutorial

Page 13: APPIN TECHNOLOGY LAB code Number system conversion Binary to decimal number conversion Hexadecimal to decimal number conversion Hexadecimal to binary number conversion

APPIN TECHNOLOGY LAB