Download - Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Transcript
Page 1: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Make Your Own Development Board

ATMega8 series for example

StarNight @ 2014.4.21 JuluOSDev

Page 3: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

1. 符合規格 (Highest Order)Meet the specification.

2. 最小成本

Smallest cost.

3. 最短完成時間

Finish it in shortest time.

by 王迺慤老師

工程師的三個核心價值

Boundary Conditions!!!

Page 4: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

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.

Page 5: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

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

Page 6: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

學校作業通常是從定義域去找值域,但工程師要做的是從值域去找定義域。

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 王迺慤老師

Page 7: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

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 ...

Page 9: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Build a development board

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

Page 10: Make Your Own Developement Board @ 2014.4.21 JuluOSDev
Page 12: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

I flashedSimple Oscilloscope

firmware into the development board.

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

Page 13: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Function Generator for SignalsSchmitt Trigger Integrator

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

Page 14: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Function Generator

Page 15: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Oscilloscope Console by python + pyserial + matplotlib

Page 16: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

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

Page 17: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Lessons Learned from Oscilloscope

Nyquist Frequency / Aliasing

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

Page 18: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

學校教了我們很多東西,而我們應要知道,如何將這些知識應用在實做,而不只是封存在腦袋中。

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

Page 19: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Build your own tools ~

That’s maker !!!!!

自己的國家自己救!

自己的工具自己做!

Page 20: Make Your Own Developement Board @ 2014.4.21 JuluOSDev

Thank you and Q & A

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