Make Your Own Developement Board @ 2014.4.21 JuluOSDev

  • Published on
    13-Jul-2015

  • View
    965

  • Download
    2

Transcript

  • Make Your Own Development Board

    ATMega8 series for example

    StarNight @ 2014.4.21 JuluOSDev

  • After sharing Simple Scheduler @ OSDC.tw 2014,

    it is a good chance to talk about the hardware implementation of

    Simple Osilloscope

  • 1. (Highest Order)Meet the specification.

    2. Smallest cost.

    3. Finish it in shortest time.

    by

    Boundary Conditions!!!

  • Lessons Learned from PMP (Partial)

    Initiating Develop project charter

    Planning Collect requirements Define scope Plan Quality Estimate costs Develop schedule

    Excuting Monitoring & controlling Closing

    The specification going to be met.

    Find the smallest cost.Find the shortest time.

  • The Specification of osilloscope

    Signal range: 0 ~ 5V

    Sampling frequency: 100 Hz

    Sampling channels: 6 ~ 8 channels

    Connects to computer with UART

    Communication protocal: Modbus

  • Students homework is a practice which finds the f(x) from x. However, engineers work is

    a problem which finds the x from f(x).

    by

  • The Cost and Time

    I can use: The ADC channels of AVR. The timer of AVR for periodic sampling. The USART function of AVR.

    I can buy an AVR with the money that I can afford.

    I am familiar with AVR, which shorts development time.

    There are open source resource for AVR, ex: toolchain, programmer ...

  • Read Datasheet

    Reference from: ATmega328 datasheet

  • Build a development board

    That will be an oscilloscope.https://github.com/starnight/ATmega328-Board

  • Tools

    Toolchain:avr-gcc

    Libc:avr-libc

    Downloader/Uploader:avrdude

    Prgrammer:USBtinyISP, USBasp ...

  • I flashedSimple Oscilloscope

    firmware into the development board.

    https://github.com/starnight/Simple-Oscilloscope

  • Function Generator for SignalsSchmitt Trigger Integrator

    Could reference: http://www.pcbheaven.com/circuitpages/Triangle_Wave_Generator/

  • Function Generator

  • Oscilloscope Console by python + pyserial + matplotlib

  • All Circuits Analysis Begins with

    On - Off

    For a resistor:v(t) = i(t) r(t)

    For a capacitor:q(t) = C(t) v(t)

    For an inductor:v(t) = d ( L(t) i(t) ) / dt

  • Lessons Learned from Oscilloscope

    Nyquist Frequency / Aliasing

    http://en.wikipedia.org/wiki/Aliasing

  • We need to integrate the knowledge learned from school and use it when implementation.

  • Build your own tools ~

    Thats maker !!!!!

  • Thank you and Q & A

    https://github.com/starnight/ATmega328-Board