// fork from System:シンプル
addDescription("h1","ブレッドボード回路図")
addDescription("","案外便利そうだ これ")
// ライブラリを作る
!breadboard =\()
//ブレッドボードを描く
scale(1.05)
rect()
fs("black")
scale(0.05)
shift(-10,0)
grid(1,20)
scale(0.2)
rect()
shift(-6,0)
grid(5,20)
scale(0.2)
rect()
shift(0,0)
grid(5,20)
scale(0.2)
rect()
shift(6,0)
grid(5,20)
scale(0.2)
rect()
shift(10,0)
grid(1,20)
scale(0.2)
rect()
!atmega168p = \(x,y)
!label = \(x,y,v)
shift(x,y)
lw(100)
scale(0.3)
text(v)
shift(x,y)
lw(4)
shift(2,6.5)
fs("black")
ss("gray")
grid(1,14)
fig()
xy(1,0)
xy(2,0)
fig()
xy(-1,0)
xy(-2,0)
scale(2,14)
rect()
fs("gray")
shift(0,-6.9)
ss("transparent")
scale(0.5)
rect()
fs("white")
rotate(1/2)
scale(0.5)
text("Atmega168p")
fs("black")
shift(-0.2,-6.75)
label(-2,0,"RESET")
label(-2,1,"RXD")
label(-2,2,"TXD")
label(-2,6,"VCC")
label(-2,7,"GND")
label(-2,8,"XTAL1")
label(-2,9,"XTAL2")
!vwire = \(col,x,y0,y1)
lw(5)
ss(col)
fig(0)
xy(x, y0)
xy(x, y1)
!hwire = \(col,y,x0,x1)
lw(5)
ss(col)
fig(0)
xy(x0, y)
xy(x1, y)
!label = \(s,x,y)
shift(x,y)
fs("black")
ss("black")
lw(200)
scale(0.5)
text(s)
!register = \(x,y,v)
// == REGISTER ===
shift(x,y)
lw(1)
ss("gray")
fig(0)
xy(0, 0)
xy(4, 0)
fs("#aa6")
ss("transparent")
shift(2,0)
scale(2,1)
rect()
col("black")
scale(0.4)
lw(200)
text(v +"Ω")
!capacitor = \(x,y,v)
// == capacitor ===
shift(x,y)
lw(1)
ss("gray")
fig(0)
xy(0, 0)
xy(4, 0)
fs("#6af")
ss("transparent")
shift(2,0-0.3)
scale(4,1.5)
rotate(1/4)
apoly(4,0.3)
col("black")
scale(0.4)
lw(200)
text(v + "F")
!ecapacitor = \(x,y,v)
// == capacitor + ===
shift(x,y)
lw(1)
ss("gray")
fig(0)
xy(0, 0)
xy(4, 0)
fs("#009")
ss("transparent")
shift(2,-0.8)
scale(3,3)
rotate(1/4)
apoly(4,0.2)
fs("#aaf")
shift(0,-0.8)
scale(1.7,0.3)
circle()
col("white")
scale(0.3)
lw(200)
text(v + "F")
!led = \(x,y)
// == LED ===
shift(x,y)
lw(1)
ss("gray")
fig(0)
xy(0, 0)
xy(4, 0)
fs("#f00")
ss("transparent")
shift(2,0)
shift(0,-0.3)
shift(0,-0.5)
circle()
rect()
col("white")
shift(0,-0.3)
scale(0.2)
lw(200)
text("LED")
!speaker = \(x,y)
shift(x,y)
// == SPEAKER ===
shift(-5,0)
ss("#0aa")
fs("white")
shift(4,-4)
lw(2)
fig(1)
xy(0,0)
xy(4,0)
xy(3,1)
xy(3,2)
xy(1,2)
xy(1,1)
ss("black")
lw(2)
fig()
xy(5,-2)
xy(5,0)
ss("red")
lw(2)
fig()
xy(7,-2)
xy(7,0)
// ライブラリ ここまで
scale(2)
fs("#ddf")
rect()
scale(1.6)
shift(0,0.1)
breadboard()
scale(1/200)
shift(-100,-95)
scale(10)
vwire("green",20,-3,0)
vwire("blue",0,-3,0)
label("VCC",0,-4)
label("GND",20,-4)
hwire("gray",4,-2,8)
label("RESET",0,4)
hwire("gray",5,-2,8)
label("TXD",-1,5)
hwire("gray",6,-2,8)
label("RXD",-1,6)
hwire("red",10,0,8)
vwire("black",5,11,19)
hwire("black",11,6,8)
hwire("black",19,6,14)
hwire("black",19,18,20)
atmega168p(11,4)
register(0,0,"1K")
capacitor(0,2,"10p")
ecapacitor(0,8,"100μ")
led(0,12)
speaker(12,0)
tw:ina_ani
mce2
1404575801