Compare commits

..

No commits in common. "master" and "initial_experiment" have entirely different histories.

40 changed files with 207 additions and 11742 deletions

View file

@ -1,4 +0,0 @@
# Arachnouphobia
This is a small WS2812B strip controller based on a STM32F030F4P6 whose only job it is to deliver random light flashes. This is surprisingly effective to deter spiders! More information can be found [here](https://25120.org/post/arachnouphobia/).

View file

@ -1,293 +0,0 @@
EESchema-LIBRARY Version 2.4
#encoding utf-8
#
# arachnouphobia-rescue_SW_DIP4_C-arachnorepel-rescue
#
DEF arachnouphobia-rescue_SW_DIP4_C-arachnorepel-rescue SW 0 40 Y N 1 F N
F0 "SW" 200 50 50 H V L CNN
F1 "arachnouphobia-rescue_SW_DIP4_C-arachnorepel-rescue" 200 -50 50 H V L CNN
F2 "" -150 0 60 V V C CNN
F3 "" -150 0 60 V V C CNN
$FPLIST
DIP8*
$ENDFPLIST
DRAW
C -150 -75 10 1 1 0 F
C -150 75 10 1 1 0 N
C -50 -75 10 1 1 0 F
C -50 75 10 1 1 0 N
C 50 -75 10 1 1 0 F
C 50 75 10 1 1 0 N
C 150 -75 10 1 1 0 F
C 150 75 10 1 1 0 N
P 2 1 1 10 -150 -75 -200 50 N
P 2 1 1 0 -150 -75 -150 -100 N
P 2 1 1 0 -150 100 -150 85 N
P 2 1 1 10 -50 -75 -100 50 N
P 2 1 1 0 -50 -75 -50 -100 N
P 2 1 1 0 -50 100 -50 85 N
P 2 1 1 10 50 -75 0 50 N
P 2 1 1 0 50 -75 50 -100 N
P 2 1 1 0 50 100 50 85 N
P 2 1 1 10 150 -75 100 50 N
P 2 1 1 0 150 -75 150 -100 N
P 2 1 1 0 150 100 150 85 N
X ~ 1 -150 -150 50 U 35 40 1 1 B
X ~ 2 -50 -150 50 U 35 40 1 1 B
X ~ 3 50 -150 50 U 35 40 1 1 B
X ~ 4 150 -150 50 U 35 40 1 1 B
X ~ 5 150 150 50 D 0 40 1 1 B
X ~ 6 50 150 50 D 0 40 1 1 B
X ~ 7 -50 150 50 D 0 40 1 1 B
X ~ 8 -150 150 50 D 0 40 1 1 B
ENDDRAW
ENDDEF
#
# conn_M1_3
#
DEF conn_M1_3 K 0 40 Y Y 1 F N
F0 "K" -10 190 50 H V L CNN
F1 "conn_M1_3" -10 -205 50 H V L CNN
F2 "" 0 0 60 H V C CNN
F3 "" 0 0 60 H V C CNN
DRAW
P 2 0 1 15 0 -100 100 -100 N
P 2 0 1 15 0 0 100 0 N
P 2 0 1 15 0 100 100 100 N
X ~ 1 -50 100 50 R 35 35 1 1 P
X ~ 2 -50 0 50 R 35 35 1 1 P
X ~ 3 -50 -100 50 R 35 35 1 1 P
ENDDRAW
ENDDEF
#
# conn_M1_5
#
DEF conn_M1_5 K 0 40 Y Y 1 F N
F0 "K" -10 290 50 H V L CNN
F1 "conn_M1_5" -10 -305 50 H V L CNN
F2 "" 0 0 60 H V C CNN
F3 "" 0 0 60 H V C CNN
DRAW
P 2 0 1 15 0 -200 100 -200 N
P 2 0 1 15 0 -100 100 -100 N
P 2 0 1 15 0 0 100 0 N
P 2 0 1 15 0 100 100 100 N
P 2 0 1 15 0 200 100 200 N
X ~ 1 -50 200 50 R 35 35 1 1 P
X ~ 2 -50 100 50 R 35 35 1 1 P
X ~ 3 -50 0 50 R 35 35 1 1 P
X ~ 4 -50 -100 50 R 35 35 1 1 P
X ~ 5 -50 -200 50 R 35 35 1 1 P
ENDDRAW
ENDDEF
#
# conn_USB_MINI_T
#
DEF conn_USB_MINI_T K 0 40 Y Y 1 F N
F0 "K" 0 400 50 H V C CNN
F1 "conn_USB_MINI_T" 0 -400 50 H V C CNN
F2 "" 0 100 60 H V C CNN
F3 "" 0 100 60 H V C CNN
DRAW
S -100 325 100 -325 0 1 0 N
S -75 300 75 -300 0 1 0 f
X +5V 1 150 250 50 L 35 35 1 1 P
X D- 2 150 150 50 L 35 35 1 1 P
X D+ 3 150 50 50 L 35 35 1 1 P
X ID 4 150 -50 50 L 35 35 1 1 P
X GND 5 150 -150 50 L 35 35 1 1 P
X GND T 150 -250 50 L 35 35 1 1 P
ENDDRAW
ENDDEF
#
# power1_+3,3V
#
DEF power1_+3,3V #PWR 0 0 N Y 1 F P
F0 "#PWR" 0 -75 30 H I C CNN
F1 "power1_+3,3V" 0 75 30 H V C CNN
F2 "" 0 0 50 H I C CNN
F3 "" 0 0 60 H V C CNN
DRAW
P 5 0 1 0 -20 -10 0 0 20 -10 0 40 -20 -10 F
X +3,3V 1 0 0 0 U 35 35 1 1 W N
ENDDRAW
ENDDEF
#
# power1_+5V
#
DEF power1_+5V #PWR 0 0 N Y 1 F P
F0 "#PWR" 0 -75 30 H I C CNN
F1 "power1_+5V" 0 75 30 H V C CNN
F2 "" 0 0 50 H I C CNN
F3 "" 0 0 60 H V C CNN
DRAW
P 5 0 1 0 -20 -10 0 0 20 -10 0 40 -20 -10 F
X +5V 1 0 0 0 U 35 35 1 1 W N
ENDDRAW
ENDDEF
#
# power1_GND
#
DEF power1_GND #PWR 0 0 Y Y 1 F P
F0 "#PWR" 0 0 30 H I C CNN
F1 "power1_GND" 0 -70 30 H I C CNN
F2 "" 0 0 60 H V C CNN
F3 "" 0 0 60 H V C CNN
DRAW
P 2 0 1 10 -50 0 50 0 N
P 2 0 1 8 -25 -25 25 -25 N
X GND 1 0 0 0 U 30 30 1 1 W N
ENDDRAW
ENDDEF
#
# rcl_C
#
DEF rcl_C C 0 10 N Y 1 F N
F0 "C" 100 50 50 H V L CNN
F1 "rcl_C" 100 -50 50 H V L CNN
F2 "" 100 -150 50 H I L CNN
F3 "" 0 0 60 H V C CNN
$FPLIST
C*
0402*
0603*
0805*
1206*
1210*
$ENDFPLIST
DRAW
S -60 -15 60 -50 0 1 0 F
S -60 50 60 15 0 1 0 F
X ~ 1 0 100 50 D 25 25 1 1 P
X ~ 2 0 -100 50 U 25 25 1 1 P
ENDDRAW
ENDDEF
#
# rcl_R
#
DEF rcl_R R 0 0 N Y 1 F N
F0 "R" 50 0 50 H V L CNN
F1 "rcl_R" 0 0 50 V V C CNN
F2 "" 50 -100 50 H I L CNN
F3 "" 0 0 60 H V C CNN
$FPLIST
R*
0402*
0603*
0805*
1206*
$ENDFPLIST
DRAW
S -40 100 40 -100 0 1 0 N
X ~ 1 0 150 50 D 35 35 1 1 P
X ~ 2 0 -150 50 U 35 35 1 1 P
ENDDRAW
ENDDEF
#
# regu_MCP1700-3302
#
DEF regu_MCP1700-3302 U 0 40 Y Y 1 F N
F0 "U" 200 -150 50 H V R CNN
F1 "regu_MCP1700-3302" 0 150 50 H V C CNN
F2 "sot:SOT23" 200 -250 50 H I R CNN
F3 "" 0 0 60 H V C CNN
$FPLIST
SOT23*
$ENDFPLIST
DRAW
S -200 100 200 -100 0 1 0 N
P 9 0 1 1 -165 15 -165 -15 -140 -15 -140 -25 -115 0 -140 25 -140 15 -145 15 -165 15 F
P 9 0 1 1 110 15 110 -15 135 -15 135 -25 160 0 135 25 135 15 130 15 110 15 F
P 26 0 1 1 -175 25 -150 25 -150 50 -100 0 -150 -50 -150 -25 -175 -25 -175 0 -200 0 -200 -100 200 -100 200 0 175 0 125 -50 125 -25 100 -25 100 25 125 25 125 50 175 0 200 0 200 100 -200 100 -200 0 -175 0 -175 25 F
X GND 1 0 -200 100 U 35 0 1 1 I
X VO 2 300 0 100 L 35 0 1 1 I
X VI 3 -300 0 100 R 35 0 1 1 I
ENDDRAW
ENDDEF
#
# sensor_SFH320
#
DEF sensor_SFH320 Q 0 0 N N 1 F N
F0 "Q" 0 50 50 H V L CNN
F1 "sensor_SFH320" 0 -40 50 H V L CNN
F2 "led:LED_PLCC2" 0 -150 50 H I L CNN
F3 "" 0 0 60 H V C CNN
DRAW
S -80 70 -70 -70 0 0 0 F
P 5 0 0 0 -30 -50 -35 -65 -50 -70 -10 -90 -30 -50 F
P 2 0 1 0 -115 35 -125 45 N
P 2 0 1 0 -115 70 -125 80 N
P 2 0 1 0 -115 70 -125 80 N
P 2 0 1 0 -115 70 -125 80 N
P 2 0 1 0 -115 70 -125 80 N
P 2 0 1 0 -80 0 -100 0 N
P 2 0 1 0 0 100 -75 25 N
P 3 0 1 0 0 -100 -50 -50 -75 -25 N
P 4 0 1 0 -120 25 -105 40 -95 15 -120 25 F
P 4 0 1 0 -120 60 -105 75 -95 50 -120 60 F
P 4 0 1 0 -120 60 -105 75 -95 50 -120 60 F
P 4 0 1 0 -120 60 -105 75 -95 50 -120 60 F
P 4 0 1 0 -120 60 -105 75 -95 50 -120 60 F
X E 1 0 -150 50 U 35 35 1 1 P
X C 2 0 150 50 D 35 35 1 1 P
ENDDRAW
ENDDEF
#
# stm_STM32F030F4P6
#
DEF stm_STM32F030F4P6 U 0 40 Y Y 1 F N
F0 "U" -450 -750 50 H V L CNN
F1 "stm_STM32F030F4P6" 450 -750 50 H V R CNN
F2 "tssop:TSSOP20" 450 -850 50 H I R CNN
F3 "" -400 -200 60 H V C CNN
DRAW
S 450 700 -450 -700 0 1 0 f
X BOOT0 1 -550 -500 100 R 35 50 1 1 I
X PA4 10 550 200 100 L 35 50 1 1 B
X PA5 11 550 100 100 L 35 50 1 1 B
X PA6 12 550 0 100 L 35 50 1 1 B
X PA7 13 550 -100 100 L 35 50 1 1 B
X PB1 14 550 -600 100 L 35 50 1 1 B
X GND 15 -550 -600 100 R 35 50 1 1 W
X VCC 16 -550 600 100 R 35 50 1 1 W
X PA9 17 550 -200 100 L 35 50 1 1 B
X PA10 18 550 -300 100 L 35 50 1 1 B
X PA13 19 550 -400 100 L 35 50 1 1 B
X (OSC_IN)PF0 2 -550 -200 100 R 35 50 1 1 B
X PA14 20 550 -500 100 L 35 50 1 1 B
X (OSC_OUT)PF1 3 -550 -300 100 R 35 50 1 1 B
X NRST 4 -550 0 100 R 35 50 1 1 I
X AVCC 5 -550 500 100 R 35 50 1 1 W
X PA0 6 550 600 100 L 35 50 1 1 B
X PA1 7 550 500 100 L 35 50 1 1 B
X PA2 8 550 400 100 L 35 50 1 1 B
X PA3 9 550 300 100 L 35 50 1 1 B
ENDDRAW
ENDDEF
#
# transistor_BSS138
#
DEF transistor_BSS138 Q 0 0 N N 1 F N
F0 "Q" 100 50 50 H V L CNN
F1 "transistor_BSS138" 100 -50 50 H V L CNN
F2 "sot:SOT23" 100 -150 50 H I L CNN
F3 "" 0 0 60 H V C CNN
$FPLIST
SOT23*
$ENDFPLIST
DRAW
S -28 -40 -21 -70 0 0 10 f
S -28 15 -21 -15 0 0 10 f
S -28 70 -21 40 0 0 10 f
P 5 0 0 0 0 0 30 10 20 0 30 -10 0 0 F
P 2 0 1 0 -50 -50 -50 50 N
P 2 0 1 0 50 -50 -20 -50 N
P 2 0 1 0 50 50 -20 50 N
P 3 0 1 0 50 -50 50 0 -25 0 N
X G 1 -100 -50 50 R 35 35 1 1 P
X S 2 50 -100 50 U 35 35 1 1 P
X D 3 50 100 50 D 35 35 1 1 P
ENDDRAW
ENDDEF
#
#End Library

View file

@ -1,3 +0,0 @@
EESchema-DOCLIB Version 2.0
#
#End Doc Library

View file

@ -1,46 +0,0 @@
EESchema-LIBRARY Version 2.4
#encoding utf-8
#
# SW_DIP4_C-arachnorepel-rescue
#
DEF SW_DIP4_C-arachnorepel-rescue SW 0 40 Y N 1 F N
F0 "SW" 200 50 50 H V L CNN
F1 "SW_DIP4_C-arachnorepel-rescue" 200 -50 50 H V L CNN
F2 "" -150 0 60 V V C CNN
F3 "" -150 0 60 V V C CNN
$FPLIST
DIP8*
$ENDFPLIST
DRAW
C -150 -75 10 1 1 0 F
C -150 75 10 1 1 0 N
C -50 -75 10 1 1 0 F
C -50 75 10 1 1 0 N
C 50 -75 10 1 1 0 F
C 50 75 10 1 1 0 N
C 150 -75 10 1 1 0 F
C 150 75 10 1 1 0 N
P 2 1 1 10 -150 -75 -200 50 N
P 2 1 1 0 -150 -75 -150 -100 N
P 2 1 1 0 -150 100 -150 85 N
P 2 1 1 10 -50 -75 -100 50 N
P 2 1 1 0 -50 -75 -50 -100 N
P 2 1 1 0 -50 100 -50 85 N
P 2 1 1 10 50 -75 0 50 N
P 2 1 1 0 50 -75 50 -100 N
P 2 1 1 0 50 100 50 85 N
P 2 1 1 10 150 -75 100 50 N
P 2 1 1 0 150 -75 150 -100 N
P 2 1 1 0 150 100 150 85 N
X ~ 1 -150 -150 50 U 35 40 1 1 B
X ~ 2 -50 -150 50 U 35 40 1 1 B
X ~ 3 50 -150 50 U 35 40 1 1 B
X ~ 4 150 -150 50 U 35 40 1 1 B
X ~ 5 150 150 50 D 0 40 1 1 B
X ~ 6 50 150 50 D 0 40 1 1 B
X ~ 7 -50 150 50 D 0 40 1 1 B
X ~ 8 -150 150 50 D 0 40 1 1 B
ENDDRAW
ENDDEF
#
#End Library

File diff suppressed because it is too large Load diff

View file

@ -1,346 +0,0 @@
(export (version D)
(design
(source /home/f/proj/elektronik/arachnorepel/kicad/arachnorepel.sch)
(date "Do 19 Jan 2017 20:43:13 CET")
(tool "Eeschema 4.0.5")
(sheet (number 1) (name /) (tstamps /)
(title_block
(title)
(company)
(rev)
(date)
(source arachnorepel.sch)
(comment (number 1) (value ""))
(comment (number 2) (value ""))
(comment (number 3) (value ""))
(comment (number 4) (value "")))))
(components
(comp (ref U2)
(value STM32F030F4P6)
(footprint tssop:TSSOP20)
(libsource (lib stm) (part STM32F030F4P6))
(sheetpath (names /) (tstamps /))
(tstamp 5880F838))
(comp (ref Q1)
(value BSS138)
(footprint sot:SOT23)
(libsource (lib transistor) (part BSS138))
(sheetpath (names /) (tstamps /))
(tstamp 5880F888))
(comp (ref R1)
(value 4k7)
(footprint rcl:0603_B)
(libsource (lib rcl) (part R))
(sheetpath (names /) (tstamps /))
(tstamp 5880F8C9))
(comp (ref R2)
(value 10k)
(footprint rcl:0603_B)
(libsource (lib rcl) (part R))
(sheetpath (names /) (tstamps /))
(tstamp 5880F9A1))
(comp (ref C4)
(value 100n)
(footprint rcl:0603_B)
(libsource (lib rcl) (part C))
(sheetpath (names /) (tstamps /))
(tstamp 5880FB4C))
(comp (ref C3)
(value 100n)
(footprint rcl:0603_B)
(libsource (lib rcl) (part C))
(sheetpath (names /) (tstamps /))
(tstamp 5880FBAF))
(comp (ref U1)
(value MCP1700-3302)
(footprint sot:SOT23)
(libsource (lib regu) (part MCP1700-3302))
(sheetpath (names /) (tstamps /))
(tstamp 5880FD6D))
(comp (ref C2)
(value 100n)
(footprint rcl:0603_B)
(libsource (lib rcl) (part C))
(sheetpath (names /) (tstamps /))
(tstamp 5880FE09))
(comp (ref K3)
(value SWD)
(footprint conn:PINHEAD_1_5)
(libsource (lib conn) (part M1_5))
(sheetpath (names /) (tstamps /))
(tstamp 58810206))
(comp (ref K1)
(value LED)
(footprint conn:PSS254-3W)
(libsource (lib conn) (part M1_3))
(sheetpath (names /) (tstamps /))
(tstamp 588102F1))
(comp (ref C1)
(value 1µ)
(footprint rcl:0603_B)
(libsource (lib rcl) (part C))
(sheetpath (names /) (tstamps /))
(tstamp 5881056F))
(comp (ref K2)
(value MICROUSB)
(footprint conn:USB_B_MICRO_W_SMT_AMPHENOL_10103593)
(libsource (lib conn) (part USB_MINI_T))
(sheetpath (names /) (tstamps /))
(tstamp 58810A58))
(comp (ref C5)
(value 1µ)
(footprint rcl:0603_B)
(libsource (lib rcl) (part C))
(sheetpath (names /) (tstamps /))
(tstamp 58811402))
(comp (ref SW1)
(value CONFIG)
(footprint dip:DIP8_300)
(libsource (lib sw) (part SW_DIP4/C))
(sheetpath (names /) (tstamps /))
(tstamp 5881152C))
(comp (ref Q2)
(value SFH320)
(footprint led:LED_5mm_100)
(libsource (lib sensor) (part SFH320))
(sheetpath (names /) (tstamps /))
(tstamp 588120AF))
(comp (ref R3)
(value 4k7)
(footprint rcl:0603_B)
(libsource (lib rcl) (part R))
(sheetpath (names /) (tstamps /))
(tstamp 58812134)))
(libparts
(libpart (lib transistor) (part BSS138)
(footprints
(fp SOT23*))
(fields
(field (name Reference) Q)
(field (name Value) BSS138)
(field (name Footprint) sot:SOT23))
(pins
(pin (num 1) (name G) (type passive))
(pin (num 2) (name S) (type passive))
(pin (num 3) (name D) (type passive))))
(libpart (lib rcl) (part C)
(footprints
(fp C*)
(fp 0402*)
(fp 0603*)
(fp 0805*)
(fp 1206*)
(fp 1210*))
(fields
(field (name Reference) C)
(field (name Value) C))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))))
(libpart (lib conn) (part M1_3)
(fields
(field (name Reference) K)
(field (name Value) M1_3))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))
(pin (num 3) (name ~) (type passive))))
(libpart (lib conn) (part M1_5)
(fields
(field (name Reference) K)
(field (name Value) M1_5))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))
(pin (num 3) (name ~) (type passive))
(pin (num 4) (name ~) (type passive))
(pin (num 5) (name ~) (type passive))))
(libpart (lib regu) (part MCP1700-3302)
(footprints
(fp SOT23*))
(fields
(field (name Reference) U)
(field (name Value) MCP1700-3302)
(field (name Footprint) sot:SOT23))
(pins
(pin (num 1) (name GND) (type input))
(pin (num 2) (name VO) (type input))
(pin (num 3) (name VI) (type input))))
(libpart (lib rcl) (part R)
(footprints
(fp R*)
(fp 0402*)
(fp 0603*)
(fp 0805*)
(fp 1206*))
(fields
(field (name Reference) R)
(field (name Value) R))
(pins
(pin (num 1) (name ~) (type passive))
(pin (num 2) (name ~) (type passive))))
(libpart (lib sensor) (part SFH320)
(fields
(field (name Reference) Q)
(field (name Value) SFH320)
(field (name Footprint) led:LED_PLCC2))
(pins
(pin (num 1) (name E) (type passive))
(pin (num 2) (name C) (type passive))))
(libpart (lib stm) (part STM32F030F4P6)
(fields
(field (name Reference) U)
(field (name Value) STM32F030F4P6)
(field (name Footprint) tssop:TSSOP20))
(pins
(pin (num 1) (name BOOT0) (type input))
(pin (num 2) (name "(OSC_IN)PF0") (type BiDi))
(pin (num 3) (name "(OSC_OUT)PF1") (type BiDi))
(pin (num 4) (name NRST) (type input))
(pin (num 5) (name AVCC) (type power_in))
(pin (num 6) (name PA0) (type BiDi))
(pin (num 7) (name PA1) (type BiDi))
(pin (num 8) (name PA2) (type BiDi))
(pin (num 9) (name PA3) (type BiDi))
(pin (num 10) (name PA4) (type BiDi))
(pin (num 11) (name PA5) (type BiDi))
(pin (num 12) (name PA6) (type BiDi))
(pin (num 13) (name PA7) (type BiDi))
(pin (num 14) (name PB1) (type BiDi))
(pin (num 15) (name GND) (type power_in))
(pin (num 16) (name VCC) (type power_in))
(pin (num 17) (name PA9) (type BiDi))
(pin (num 18) (name PA10) (type BiDi))
(pin (num 19) (name PA13) (type BiDi))
(pin (num 20) (name PA14) (type BiDi))))
(libpart (lib sw) (part SW_DIP4/C)
(footprints
(fp DIP8*))
(fields
(field (name Reference) SW)
(field (name Value) SW_DIP4/C))
(pins
(pin (num 1) (name ~) (type BiDi))
(pin (num 2) (name ~) (type BiDi))
(pin (num 3) (name ~) (type BiDi))
(pin (num 4) (name ~) (type BiDi))
(pin (num 5) (name ~) (type BiDi))
(pin (num 6) (name ~) (type BiDi))
(pin (num 7) (name ~) (type BiDi))
(pin (num 8) (name ~) (type BiDi))))
(libpart (lib conn) (part USB_MINI_T)
(fields
(field (name Reference) K)
(field (name Value) USB_MINI_T))
(pins
(pin (num 1) (name +5V) (type passive))
(pin (num 2) (name D-) (type passive))
(pin (num 3) (name D+) (type passive))
(pin (num 4) (name ID) (type passive))
(pin (num 5) (name GND) (type passive))
(pin (num T) (name GND) (type passive)))))
(libraries
(library (logical conn)
(uri /usr/share/kicad/fruchtilib/lib/conn.lib))
(library (logical stm)
(uri /usr/share/kicad/fruchtilib/lib/stm.lib))
(library (logical rcl)
(uri /usr/share/kicad/fruchtilib/lib/rcl.lib))
(library (logical regu)
(uri /usr/share/kicad/fruchtilib/lib/regu.lib))
(library (logical sensor)
(uri /usr/share/kicad/fruchtilib/lib/sensor.lib))
(library (logical sw)
(uri /usr/share/kicad/fruchtilib/lib/sw.lib))
(library (logical transistor)
(uri /usr/share/kicad/fruchtilib/lib/transistor.lib)))
(nets
(net (code 1) (name "Net-(K2-Pad4)")
(node (ref K2) (pin 4)))
(net (code 2) (name +5V)
(node (ref K1) (pin 1))
(node (ref C2) (pin 1))
(node (ref U1) (pin 3))
(node (ref R1) (pin 1))
(node (ref C1) (pin 1))
(node (ref K2) (pin 1)))
(net (code 3) (name "Net-(K2-Pad2)")
(node (ref K2) (pin 2)))
(net (code 4) (name "Net-(K2-Pad3)")
(node (ref K2) (pin 3)))
(net (code 5) (name GND)
(node (ref U2) (pin 15))
(node (ref U1) (pin 1))
(node (ref SW1) (pin 8))
(node (ref SW1) (pin 6))
(node (ref SW1) (pin 5))
(node (ref C5) (pin 2))
(node (ref C3) (pin 2))
(node (ref C4) (pin 2))
(node (ref Q1) (pin 2))
(node (ref C2) (pin 2))
(node (ref U2) (pin 1))
(node (ref K1) (pin 3))
(node (ref K3) (pin 5))
(node (ref Q2) (pin 1))
(node (ref K2) (pin T))
(node (ref SW1) (pin 7))
(node (ref C1) (pin 2))
(node (ref K2) (pin 5)))
(net (code 6) (name /SWCLK)
(node (ref K3) (pin 4))
(node (ref U2) (pin 20)))
(net (code 7) (name /NRST)
(node (ref U2) (pin 4))
(node (ref K3) (pin 2))
(node (ref R2) (pin 2)))
(net (code 8) (name +3,3V)
(node (ref U2) (pin 16))
(node (ref U1) (pin 2))
(node (ref C5) (pin 1))
(node (ref K3) (pin 1))
(node (ref C4) (pin 1))
(node (ref C3) (pin 1))
(node (ref R2) (pin 1))
(node (ref U2) (pin 5))
(node (ref R3) (pin 2)))
(net (code 9) (name /DO)
(node (ref Q1) (pin 3))
(node (ref R1) (pin 2))
(node (ref K1) (pin 2)))
(net (code 10) (name "Net-(Q2-Pad2)")
(node (ref R3) (pin 1))
(node (ref Q2) (pin 2))
(node (ref U2) (pin 6)))
(net (code 11) (name "Net-(SW1-Pad4)")
(node (ref SW1) (pin 4))
(node (ref U2) (pin 10)))
(net (code 12) (name "Net-(SW1-Pad3)")
(node (ref SW1) (pin 3))
(node (ref U2) (pin 9)))
(net (code 13) (name "Net-(SW1-Pad2)")
(node (ref SW1) (pin 2))
(node (ref U2) (pin 8)))
(net (code 14) (name "Net-(SW1-Pad1)")
(node (ref SW1) (pin 1))
(node (ref U2) (pin 7)))
(net (code 15) (name "Net-(Q1-Pad1)")
(node (ref U2) (pin 13))
(node (ref Q1) (pin 1)))
(net (code 16) (name /SWDIO)
(node (ref K3) (pin 3))
(node (ref U2) (pin 19)))
(net (code 17) (name "Net-(U2-Pad12)")
(node (ref U2) (pin 12)))
(net (code 18) (name "Net-(U2-Pad2)")
(node (ref U2) (pin 2)))
(net (code 19) (name "Net-(U2-Pad3)")
(node (ref U2) (pin 3)))
(net (code 20) (name "Net-(U2-Pad11)")
(node (ref U2) (pin 11)))
(net (code 21) (name "Net-(U2-Pad14)")
(node (ref U2) (pin 14)))
(net (code 22) (name "Net-(U2-Pad17)")
(node (ref U2) (pin 17)))
(net (code 23) (name "Net-(U2-Pad18)")
(node (ref U2) (pin 18)))))

View file

@ -1,40 +0,0 @@
update=So 07 Apr 2019 12:47:53 CEST
version=1
last_client=eeschema
[pcbnew]
version=1
LastNetListRead=
UseCmpFile=1
PadDrill=0.600000000000
PadDrillOvalY=0.600000000000
PadSizeH=1.500000000000
PadSizeV=1.500000000000
PcbTextSizeV=1.500000000000
PcbTextSizeH=1.500000000000
PcbTextThickness=0.300000000000
ModuleTextSizeV=1.000000000000
ModuleTextSizeH=1.000000000000
ModuleTextSizeThickness=0.150000000000
SolderMaskClearance=0.000000000000
SolderMaskMinWidth=0.000000000000
DrawSegmentWidth=0.200000000000
BoardOutlineThickness=0.100000000000
ModuleOutlineThickness=0.150000000000
[cvpcb]
version=1
NetIExt=net
[schematic_editor]
version=1
PageLayoutDescrFile=
PlotDirectoryName=
SubpartIdSeparator=0
SubpartFirstId=65
NetFmtName=
SpiceForceRefPrefix=0
SpiceUseNetNumbers=0
LabSize=60
[general]
version=1
[eeschema]
version=1
LibDir=

View file

@ -1,558 +0,0 @@
EESchema Schematic File Version 4
LIBS:arachnouphobia-cache
EELAYER 30 0
EELAYER END
$Descr A4 11693 8268
encoding utf-8
Sheet 1 1
Title ""
Date ""
Rev ""
Comp ""
Comment1 ""
Comment2 ""
Comment3 ""
Comment4 ""
$EndDescr
$Comp
L stm:STM32F030F4P6 U2
U 1 1 5880F838
P 5450 2800
F 0 "U2" H 5000 2050 50 0000 L CNN
F 1 "STM32F030F4P6" H 5900 2050 50 0000 R CNN
F 2 "tssop:TSSOP20" H 5900 1950 50 0001 R CNN
F 3 "" H 5050 2600 60 0000 C CNN
1 5450 2800
1 0 0 -1
$EndComp
$Comp
L transistor:BSS138 Q1
U 1 1 5880F888
P 6700 2850
F 0 "Q1" H 6800 2900 50 0000 L CNN
F 1 "BSS138" H 6800 2800 50 0000 L CNN
F 2 "sot:SOT23" H 6800 2700 50 0001 L CNN
F 3 "" H 6700 2850 60 0000 C CNN
1 6700 2850
1 0 0 -1
$EndComp
Wire Wire Line
6600 2900 6000 2900
$Comp
L rcl:R R1
U 1 1 5880F8C9
P 6750 2500
F 0 "R1" H 6800 2500 50 0000 L CNN
F 1 "4k7" V 6750 2500 50 0000 C CNN
F 2 "rcl:0603_B" H 6800 2400 50 0001 L CNN
F 3 "" H 6750 2500 60 0000 C CNN
1 6750 2500
1 0 0 -1
$EndComp
Wire Wire Line
6750 2650 6750 2700
$Comp
L power1:GND #PWR01
U 1 1 5880F915
P 6750 3000
F 0 "#PWR01" H 6750 3000 30 0001 C CNN
F 1 "GND" H 6750 2930 30 0001 C CNN
F 2 "" H 6750 3000 60 0000 C CNN
F 3 "" H 6750 3000 60 0000 C CNN
1 6750 3000
1 0 0 -1
$EndComp
Wire Wire Line
6750 3000 6750 2950
$Comp
L power1:+5V #PWR02
U 1 1 5880F936
P 6750 2300
F 0 "#PWR02" H 6750 2225 30 0001 C CNN
F 1 "+5V" H 6750 2375 30 0000 C CNN
F 2 "" H 6750 2300 50 0001 C CNN
F 3 "" H 6750 2300 60 0000 C CNN
1 6750 2300
1 0 0 -1
$EndComp
Wire Wire Line
6750 2300 6750 2350
Text Label 7050 2700 2 50 ~ 0
DO
Wire Wire Line
7050 2700 6750 2700
Connection ~ 6750 2700
$Comp
L rcl:R R2
U 1 1 5880F9A1
P 4850 2550
F 0 "R2" H 4800 2550 50 0000 R CNN
F 1 "10k" V 4850 2550 50 0000 C CNN
F 2 "rcl:0603_B" H 4900 2450 50 0001 L CNN
F 3 "" H 4850 2550 60 0000 C CNN
1 4850 2550
1 0 0 -1
$EndComp
Text Label 6350 3200 2 50 ~ 0
SWDIO
Text Label 6350 3300 2 50 ~ 0
SWCLK
Wire Wire Line
6350 3300 6000 3300
Wire Wire Line
6000 3200 6350 3200
Text Label 4500 2800 0 50 ~ 0
NRST
Wire Wire Line
4500 2800 4850 2800
Wire Wire Line
4850 2800 4850 2700
Connection ~ 4850 2800
Wire Wire Line
4850 2200 4850 2300
Wire Wire Line
3650 2200 3850 2200
Wire Wire Line
4900 2300 4850 2300
Connection ~ 4850 2300
$Comp
L rcl:C C4
U 1 1 5880FB4C
P 4650 2350
F 0 "C4" H 4750 2400 50 0000 L CNN
F 1 "100n" H 4750 2300 50 0000 L CNN
F 2 "rcl:0603_B" H 4750 2200 50 0001 L CNN
F 3 "" H 4650 2350 60 0000 C CNN
1 4650 2350
-1 0 0 -1
$EndComp
$Comp
L rcl:C C3
U 1 1 5880FBAF
P 4250 2350
F 0 "C3" H 4350 2400 50 0000 L CNN
F 1 "100n" H 4350 2300 50 0000 L CNN
F 2 "rcl:0603_B" H 4350 2200 50 0001 L CNN
F 3 "" H 4250 2350 60 0000 C CNN
1 4250 2350
-1 0 0 -1
$EndComp
$Comp
L power1:GND #PWR03
U 1 1 5880FBEF
P 4850 3450
F 0 "#PWR03" H 4850 3450 30 0001 C CNN
F 1 "GND" H 4850 3380 30 0001 C CNN
F 2 "" H 4850 3450 60 0000 C CNN
F 3 "" H 4850 3450 60 0000 C CNN
1 4850 3450
1 0 0 -1
$EndComp
Wire Wire Line
4850 3300 4850 3400
Wire Wire Line
4850 3300 4900 3300
Wire Wire Line
4900 3400 4850 3400
Connection ~ 4850 3400
$Comp
L power1:GND #PWR04
U 1 1 5880FC44
P 4250 2550
F 0 "#PWR04" H 4250 2550 30 0001 C CNN
F 1 "GND" H 4250 2480 30 0001 C CNN
F 2 "" H 4250 2550 60 0000 C CNN
F 3 "" H 4250 2550 60 0000 C CNN
1 4250 2550
1 0 0 -1
$EndComp
Wire Wire Line
4250 2450 4250 2500
Wire Wire Line
2550 2500 2850 2500
Wire Wire Line
4650 2500 4650 2450
Connection ~ 4250 2500
Wire Wire Line
4650 2250 4650 2200
Connection ~ 4850 2200
Wire Wire Line
4250 2150 4250 2200
Connection ~ 4650 2200
$Comp
L power1:+3,3V #PWR05
U 1 1 5880FD1D
P 4250 2150
F 0 "#PWR05" H 4250 2075 30 0001 C CNN
F 1 "+3,3V" H 4250 2225 30 0000 C CNN
F 2 "" H 4250 2150 50 0001 C CNN
F 3 "" H 4250 2150 60 0000 C CNN
1 4250 2150
1 0 0 -1
$EndComp
Connection ~ 4250 2200
$Comp
L regu:MCP1700-3302 U1
U 1 1 5880FD6D
P 3350 2200
F 0 "U1" H 3550 2050 50 0000 R CNN
F 1 "MCP1700-3302" H 3350 2350 50 0000 C CNN
F 2 "sot:SOT23" H 3550 1950 50 0001 R CNN
F 3 "" H 3350 2200 60 0000 C CNN
1 3350 2200
1 0 0 -1
$EndComp
Wire Wire Line
3350 2400 3350 2500
$Comp
L rcl:C C2
U 1 1 5880FE09
P 2850 2350
F 0 "C2" H 2950 2400 50 0000 L CNN
F 1 "100n" H 2950 2300 50 0000 L CNN
F 2 "rcl:0603_B" H 2950 2200 50 0001 L CNN
F 3 "" H 2850 2350 60 0000 C CNN
1 2850 2350
1 0 0 -1
$EndComp
Wire Wire Line
2850 2150 2850 2200
Wire Wire Line
2550 2200 2850 2200
Wire Wire Line
2850 2450 2850 2500
Connection ~ 3350 2500
$Comp
L power1:+5V #PWR06
U 1 1 5880FEAE
P 2850 2150
F 0 "#PWR06" H 2850 2075 30 0001 C CNN
F 1 "+5V" H 2850 2225 30 0000 C CNN
F 2 "" H 2850 2150 50 0001 C CNN
F 3 "" H 2850 2150 60 0000 C CNN
1 2850 2150
1 0 0 -1
$EndComp
Connection ~ 2850 2200
$Comp
L power1:GND #PWR07
U 1 1 58810043
P 3500 3450
F 0 "#PWR07" H 3500 3450 30 0001 C CNN
F 1 "GND" H 3500 3380 30 0001 C CNN
F 2 "" H 3500 3450 60 0000 C CNN
F 3 "" H 3500 3450 60 0000 C CNN
1 3500 3450
1 0 0 -1
$EndComp
Wire Wire Line
3500 3450 3500 3400
Wire Wire Line
3500 3400 3450 3400
Text Label 3850 3200 2 50 ~ 0
SWDIO
Text Label 3850 3300 2 50 ~ 0
SWCLK
Wire Wire Line
3850 3300 3450 3300
Wire Wire Line
3450 3200 3850 3200
Text Label 3850 3100 2 50 ~ 0
NRST
Wire Wire Line
3450 3100 3850 3100
$Comp
L power1:+3,3V #PWR08
U 1 1 588100FF
P 3500 2950
F 0 "#PWR08" H 3500 2875 30 0001 C CNN
F 1 "+3,3V" H 3500 3025 30 0000 C CNN
F 2 "" H 3500 2950 50 0001 C CNN
F 3 "" H 3500 2950 60 0000 C CNN
1 3500 2950
1 0 0 -1
$EndComp
Wire Wire Line
3500 3000 3450 3000
Wire Wire Line
3500 3000 3500 2950
$Comp
L conn:M1_5 K3
U 1 1 58810206
P 3400 3200
F 0 "K3" H 3390 3490 50 0000 L CNN
F 1 "SWD" H 3390 2895 50 0000 L CNN
F 2 "conn:PINHEAD_1_5" H 3400 3200 60 0001 C CNN
F 3 "" H 3400 3200 60 0000 C CNN
1 3400 3200
-1 0 0 -1
$EndComp
$Comp
L conn:M1_3 K1
U 1 1 588102F1
P 4300 3200
F 0 "K1" H 4290 3390 50 0000 L CNN
F 1 "LED" H 4290 2995 50 0000 L CNN
F 2 "conn:PSS254-3W" H 4300 3200 60 0001 C CNN
F 3 "" H 4300 3200 60 0000 C CNN
1 4300 3200
1 0 0 -1
$EndComp
Text Label 4050 3200 0 50 ~ 0
DO
Wire Wire Line
4050 3200 4250 3200
$Comp
L power1:GND #PWR09
U 1 1 588103C8
P 4200 3350
F 0 "#PWR09" H 4200 3350 30 0001 C CNN
F 1 "GND" H 4200 3280 30 0001 C CNN
F 2 "" H 4200 3350 60 0000 C CNN
F 3 "" H 4200 3350 60 0000 C CNN
1 4200 3350
1 0 0 -1
$EndComp
Wire Wire Line
4200 3350 4200 3300
Wire Wire Line
4200 3300 4250 3300
$Comp
L power1:+5V #PWR010
U 1 1 5881046E
P 4200 3050
F 0 "#PWR010" H 4200 2975 30 0001 C CNN
F 1 "+5V" H 4200 3125 30 0000 C CNN
F 2 "" H 4200 3050 50 0001 C CNN
F 3 "" H 4200 3050 60 0000 C CNN
1 4200 3050
1 0 0 -1
$EndComp
Wire Wire Line
4200 3050 4200 3100
Wire Wire Line
4200 3100 4250 3100
$Comp
L rcl:C C1
U 1 1 5881056F
P 2550 2350
F 0 "C1" H 2650 2400 50 0000 L CNN
F 1 "1µ" H 2650 2300 50 0000 L CNN
F 2 "rcl:0603_B" H 2650 2200 50 0001 L CNN
F 3 "" H 2550 2350 60 0000 C CNN
1 2550 2350
1 0 0 -1
$EndComp
Wire Wire Line
2550 2450 2550 2500
Connection ~ 2850 2500
Wire Wire Line
2550 2200 2550 2250
$Comp
L conn:USB_MINI_T K2
U 1 1 58810A58
P 2750 3150
F 0 "K2" H 2750 3550 50 0000 C CNN
F 1 "MICRO USB" H 2750 2750 50 0000 C CNN
F 2 "conn:USB_B_MICRO_W_SMT_AMPHENOL_10103593" H 2750 3250 60 0001 C CNN
F 3 "" H 2750 3250 60 0000 C CNN
1 2750 3150
1 0 0 -1
$EndComp
$Comp
L power1:GND #PWR011
U 1 1 58810B50
P 2950 3450
F 0 "#PWR011" H 2950 3450 30 0001 C CNN
F 1 "GND" H 2950 3380 30 0001 C CNN
F 2 "" H 2950 3450 60 0000 C CNN
F 3 "" H 2950 3450 60 0000 C CNN
1 2950 3450
1 0 0 -1
$EndComp
Wire Wire Line
2950 3300 2900 3300
Wire Wire Line
2950 3300 2950 3400
$Comp
L power1:+5V #PWR012
U 1 1 58810CF1
P 2950 2850
F 0 "#PWR012" H 2950 2775 30 0001 C CNN
F 1 "+5V" H 2950 2925 30 0000 C CNN
F 2 "" H 2950 2850 50 0001 C CNN
F 3 "" H 2950 2850 60 0000 C CNN
1 2950 2850
1 0 0 -1
$EndComp
Wire Wire Line
2950 2850 2950 2900
Wire Wire Line
2950 2900 2900 2900
$Comp
L rcl:C C5
U 1 1 58811402
P 3850 2350
F 0 "C5" H 3950 2400 50 0000 L CNN
F 1 "1µ" H 3950 2300 50 0000 L CNN
F 2 "rcl:0603_B" H 3950 2200 50 0001 L CNN
F 3 "" H 3850 2350 60 0000 C CNN
1 3850 2350
-1 0 0 -1
$EndComp
Wire Wire Line
3850 2450 3850 2500
Connection ~ 3850 2500
Wire Wire Line
3850 2250 3850 2200
Connection ~ 3850 2200
$Comp
L arachnouphobia-rescue:SW_DIP4_C-arachnorepel-rescue SW1
U 1 1 5881152C
P 6300 2450
F 0 "SW1" V 5900 2450 50 0000 C CNN
F 1 "CONFIG" V 6000 2450 50 0000 C CNN
F 2 "dip:DIP8_300" V 6150 2450 60 0001 C CNN
F 3 "" V 6150 2450 60 0000 C CNN
1 6300 2450
0 1 1 0
$EndComp
$Comp
L power1:GND #PWR013
U 1 1 588117C3
P 6500 2650
F 0 "#PWR013" H 6500 2650 30 0001 C CNN
F 1 "GND" H 6500 2580 30 0001 C CNN
F 2 "" H 6500 2650 60 0000 C CNN
F 3 "" H 6500 2650 60 0000 C CNN
1 6500 2650
1 0 0 -1
$EndComp
Wire Wire Line
6500 2650 6500 2600
Wire Wire Line
6500 2300 6450 2300
Wire Wire Line
6450 2400 6500 2400
Connection ~ 6500 2400
Wire Wire Line
6450 2500 6500 2500
Connection ~ 6500 2500
Wire Wire Line
6450 2600 6500 2600
Connection ~ 6500 2600
Wire Wire Line
6150 2600 6000 2600
Wire Wire Line
6000 2500 6150 2500
Wire Wire Line
6150 2400 6000 2400
Wire Wire Line
6000 2300 6150 2300
Wire Wire Line
2900 3400 2950 3400
Connection ~ 2950 3400
$Comp
L sensor:SFH320 Q2
U 1 1 588120AF
P 6250 1750
F 0 "Q2" V 6400 1750 50 0000 C CNN
F 1 "SFH320" V 6300 1750 50 0000 C CNN
F 2 "led:LED_5mm_100" H 6250 1600 50 0001 L CNN
F 3 "" H 6250 1750 60 0000 C CNN
1 6250 1750
0 -1 -1 0
$EndComp
$Comp
L rcl:R R3
U 1 1 58812134
P 5850 1750
F 0 "R3" V 5750 1750 50 0000 C CNN
F 1 "4k7" V 5850 1750 50 0000 C CNN
F 2 "rcl:0603_B" H 5900 1650 50 0001 L CNN
F 3 "" H 5850 1750 60 0000 C CNN
1 5850 1750
0 1 1 0
$EndComp
Wire Wire Line
6000 1750 6050 1750
Wire Wire Line
6050 1750 6050 2200
Wire Wire Line
6050 2200 6000 2200
Connection ~ 6050 1750
$Comp
L power1:+3,3V #PWR014
U 1 1 58812304
P 5650 1700
F 0 "#PWR014" H 5650 1625 30 0001 C CNN
F 1 "+3,3V" H 5650 1775 30 0000 C CNN
F 2 "" H 5650 1700 50 0001 C CNN
F 3 "" H 5650 1700 60 0000 C CNN
1 5650 1700
1 0 0 -1
$EndComp
Wire Wire Line
5650 1700 5650 1750
Wire Wire Line
5650 1750 5700 1750
$Comp
L power1:GND #PWR015
U 1 1 5881239D
P 6450 1800
F 0 "#PWR015" H 6450 1800 30 0001 C CNN
F 1 "GND" H 6450 1730 30 0001 C CNN
F 2 "" H 6450 1800 60 0000 C CNN
F 3 "" H 6450 1800 60 0000 C CNN
1 6450 1800
1 0 0 -1
$EndComp
Wire Wire Line
6450 1800 6450 1750
Wire Wire Line
6450 1750 6400 1750
Text Notes 2600 1750 0 50 ~ 0
Case: Hammond 1551P
Wire Wire Line
6750 2700 6750 2750
Wire Wire Line
4850 2800 4900 2800
Wire Wire Line
4850 2300 4850 2400
Wire Wire Line
4850 3400 4850 3450
Wire Wire Line
4250 2500 4250 2550
Wire Wire Line
4250 2500 4650 2500
Wire Wire Line
4850 2200 4900 2200
Wire Wire Line
4650 2200 4850 2200
Wire Wire Line
4250 2200 4650 2200
Wire Wire Line
4250 2200 4250 2250
Wire Wire Line
3350 2500 3850 2500
Wire Wire Line
2850 2200 2850 2250
Wire Wire Line
2850 2200 3050 2200
Wire Wire Line
2850 2500 3350 2500
Wire Wire Line
3850 2500 4250 2500
Wire Wire Line
3850 2200 4250 2200
Wire Wire Line
6500 2400 6500 2300
Wire Wire Line
6500 2500 6500 2400
Wire Wire Line
6500 2600 6500 2500
Wire Wire Line
2950 3400 2950 3450
Wire Wire Line
6050 1750 6100 1750
$EndSCHEMATC

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,466 +0,0 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,5.0.1*
G04 #@! TF.CreationDate,2019-01-10T18:43:16+01:00*
G04 #@! TF.ProjectId,arachnorepel,61726163686E6F726570656C2E6B6963,rev?*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Legend,Bot*
G04 #@! TF.FilePolarity,Positive*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 5.0.1) date Do 10 Jan 2019 18:43:16 CET*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10C,0.150000*%
%ADD11C,0.250000*%
G04 #@! TA.AperFunction,NonConductor*
%ADD12C,0.150000*%
G04 #@! TD*
G04 APERTURE END LIST*
D10*
X83000000Y-110750000D02*
X83000000Y-103700000D01*
X110750000Y-86250000D02*
G75*
G03X113750000Y-89250000I3000000J0D01*
G01*
X89250000Y-113750000D02*
G75*
G03X86250000Y-110750000I-3000000J0D01*
G01*
X89250000Y-113750000D02*
X89250000Y-117000000D01*
X83000000Y-110750000D02*
X86250000Y-110750000D01*
X110750000Y-86250000D02*
X110750000Y-83000000D01*
X117000000Y-89250000D02*
X113750000Y-89250000D01*
X83000000Y-96300000D02*
X83000000Y-83000000D01*
X117000000Y-117000000D02*
X89250000Y-117000000D01*
X117000000Y-89250000D02*
X117000000Y-117000000D01*
X83000000Y-83000000D02*
X110750000Y-83000000D01*
D11*
G04 #@! TO.C,C1*
X96400000Y-99150000D02*
X97600000Y-99150000D01*
X97600000Y-101850000D02*
X96400000Y-101850000D01*
X96400000Y-101850000D02*
X96400000Y-99150000D01*
X97600000Y-99150000D02*
X97600000Y-101850000D01*
G04 #@! TO.C,C2*
X97900000Y-99150000D02*
X99100000Y-99150000D01*
X99100000Y-101850000D02*
X97900000Y-101850000D01*
X97900000Y-101850000D02*
X97900000Y-99150000D01*
X99100000Y-99150000D02*
X99100000Y-101850000D01*
G04 #@! TO.C,C3*
X96900000Y-107150000D02*
X98100000Y-107150000D01*
X98100000Y-109850000D02*
X96900000Y-109850000D01*
X96900000Y-109850000D02*
X96900000Y-107150000D01*
X98100000Y-107150000D02*
X98100000Y-109850000D01*
G04 #@! TO.C,C4*
X107650000Y-108100000D02*
X107650000Y-106900000D01*
X110350000Y-106900000D02*
X110350000Y-108100000D01*
X110350000Y-108100000D02*
X107650000Y-108100000D01*
X107650000Y-106900000D02*
X110350000Y-106900000D01*
G04 #@! TO.C,Q1*
X111000000Y-101700000D02*
X111000000Y-100300000D01*
X108000000Y-100300000D02*
X108000000Y-101700000D01*
X108000000Y-100300000D02*
X111000000Y-100300000D01*
X108000000Y-101700000D02*
X111000000Y-101700000D01*
G04 #@! TO.C,R1*
X108150000Y-98100000D02*
X108150000Y-96900000D01*
X110850000Y-96900000D02*
X110850000Y-98100000D01*
X110850000Y-98100000D02*
X108150000Y-98100000D01*
X108150000Y-96900000D02*
X110850000Y-96900000D01*
G04 #@! TO.C,R2*
X110350000Y-105400000D02*
X110350000Y-106600000D01*
X107650000Y-106600000D02*
X107650000Y-105400000D01*
X107650000Y-105400000D02*
X110350000Y-105400000D01*
X110350000Y-106600000D02*
X107650000Y-106600000D01*
G04 #@! TO.C,U1*
X103000000Y-101200000D02*
X103000000Y-99800000D01*
X100000000Y-99800000D02*
X100000000Y-101200000D01*
X100000000Y-99800000D02*
X103000000Y-99800000D01*
X100000000Y-101200000D02*
X103000000Y-101200000D01*
G04 #@! TO.C,U2*
X100300000Y-111800000D02*
X100300000Y-105200000D01*
X100300000Y-105200000D02*
X101900000Y-105200000D01*
X101900000Y-105200000D02*
X102500000Y-105800000D01*
X102500000Y-105800000D02*
X103100000Y-105200000D01*
X103100000Y-105200000D02*
X104700000Y-105200000D01*
X104700000Y-105200000D02*
X104700000Y-111800000D01*
X104700000Y-111800000D02*
X100300000Y-111800000D01*
D12*
G04 #@! TO.C,K2*
X87600000Y-103700000D02*
X83000000Y-103700000D01*
X87600000Y-96300000D02*
X87600000Y-103700000D01*
X83000000Y-96300000D02*
X87600000Y-96300000D01*
D11*
G04 #@! TO.C,C5*
X100150000Y-104100000D02*
X100150000Y-102900000D01*
X102850000Y-102900000D02*
X102850000Y-104100000D01*
X102850000Y-104100000D02*
X100150000Y-104100000D01*
X100150000Y-102900000D02*
X102850000Y-102900000D01*
G04 #@! TO.C,R3*
X103350000Y-114400000D02*
X103350000Y-115600000D01*
X100650000Y-115600000D02*
X100650000Y-114400000D01*
X100650000Y-114400000D02*
X103350000Y-114400000D01*
X103350000Y-115600000D02*
X100650000Y-115600000D01*
G04 #@! TD*
G04 #@! TO.C,C1*
D10*
X97357142Y-97833333D02*
X97404761Y-97785714D01*
X97452380Y-97642857D01*
X97452380Y-97547619D01*
X97404761Y-97404761D01*
X97309523Y-97309523D01*
X97214285Y-97261904D01*
X97023809Y-97214285D01*
X96880952Y-97214285D01*
X96690476Y-97261904D01*
X96595238Y-97309523D01*
X96500000Y-97404761D01*
X96452380Y-97547619D01*
X96452380Y-97642857D01*
X96500000Y-97785714D01*
X96547619Y-97833333D01*
X97452380Y-98785714D02*
X97452380Y-98214285D01*
X97452380Y-98500000D02*
X96452380Y-98500000D01*
X96595238Y-98404761D01*
X96690476Y-98309523D01*
X96738095Y-98214285D01*
G04 #@! TO.C,C2*
X98857142Y-97833333D02*
X98904761Y-97785714D01*
X98952380Y-97642857D01*
X98952380Y-97547619D01*
X98904761Y-97404761D01*
X98809523Y-97309523D01*
X98714285Y-97261904D01*
X98523809Y-97214285D01*
X98380952Y-97214285D01*
X98190476Y-97261904D01*
X98095238Y-97309523D01*
X98000000Y-97404761D01*
X97952380Y-97547619D01*
X97952380Y-97642857D01*
X98000000Y-97785714D01*
X98047619Y-97833333D01*
X98047619Y-98214285D02*
X98000000Y-98261904D01*
X97952380Y-98357142D01*
X97952380Y-98595238D01*
X98000000Y-98690476D01*
X98047619Y-98738095D01*
X98142857Y-98785714D01*
X98238095Y-98785714D01*
X98380952Y-98738095D01*
X98952380Y-98166666D01*
X98952380Y-98785714D01*
G04 #@! TO.C,C3*
X96357142Y-108333333D02*
X96404761Y-108285714D01*
X96452380Y-108142857D01*
X96452380Y-108047619D01*
X96404761Y-107904761D01*
X96309523Y-107809523D01*
X96214285Y-107761904D01*
X96023809Y-107714285D01*
X95880952Y-107714285D01*
X95690476Y-107761904D01*
X95595238Y-107809523D01*
X95500000Y-107904761D01*
X95452380Y-108047619D01*
X95452380Y-108142857D01*
X95500000Y-108285714D01*
X95547619Y-108333333D01*
X95452380Y-108666666D02*
X95452380Y-109285714D01*
X95833333Y-108952380D01*
X95833333Y-109095238D01*
X95880952Y-109190476D01*
X95928571Y-109238095D01*
X96023809Y-109285714D01*
X96261904Y-109285714D01*
X96357142Y-109238095D01*
X96404761Y-109190476D01*
X96452380Y-109095238D01*
X96452380Y-108809523D01*
X96404761Y-108714285D01*
X96357142Y-108666666D01*
G04 #@! TO.C,C4*
X111916666Y-107857142D02*
X111964285Y-107904761D01*
X112107142Y-107952380D01*
X112202380Y-107952380D01*
X112345238Y-107904761D01*
X112440476Y-107809523D01*
X112488095Y-107714285D01*
X112535714Y-107523809D01*
X112535714Y-107380952D01*
X112488095Y-107190476D01*
X112440476Y-107095238D01*
X112345238Y-107000000D01*
X112202380Y-106952380D01*
X112107142Y-106952380D01*
X111964285Y-107000000D01*
X111916666Y-107047619D01*
X111059523Y-107285714D02*
X111059523Y-107952380D01*
X111297619Y-106904761D02*
X111535714Y-107619047D01*
X110916666Y-107619047D01*
G04 #@! TO.C,Q1*
X107547619Y-100904761D02*
X107500000Y-100809523D01*
X107404761Y-100714285D01*
X107261904Y-100571428D01*
X107214285Y-100476190D01*
X107214285Y-100380952D01*
X107452380Y-100428571D02*
X107404761Y-100333333D01*
X107309523Y-100238095D01*
X107119047Y-100190476D01*
X106785714Y-100190476D01*
X106595238Y-100238095D01*
X106500000Y-100333333D01*
X106452380Y-100428571D01*
X106452380Y-100619047D01*
X106500000Y-100714285D01*
X106595238Y-100809523D01*
X106785714Y-100857142D01*
X107119047Y-100857142D01*
X107309523Y-100809523D01*
X107404761Y-100714285D01*
X107452380Y-100619047D01*
X107452380Y-100428571D01*
X107452380Y-101809523D02*
X107452380Y-101238095D01*
X107452380Y-101523809D02*
X106452380Y-101523809D01*
X106595238Y-101428571D01*
X106690476Y-101333333D01*
X106738095Y-101238095D01*
G04 #@! TO.C,R1*
X109666666Y-96452380D02*
X110000000Y-95976190D01*
X110238095Y-96452380D02*
X110238095Y-95452380D01*
X109857142Y-95452380D01*
X109761904Y-95500000D01*
X109714285Y-95547619D01*
X109666666Y-95642857D01*
X109666666Y-95785714D01*
X109714285Y-95880952D01*
X109761904Y-95928571D01*
X109857142Y-95976190D01*
X110238095Y-95976190D01*
X108714285Y-96452380D02*
X109285714Y-96452380D01*
X109000000Y-96452380D02*
X109000000Y-95452380D01*
X109095238Y-95595238D01*
X109190476Y-95690476D01*
X109285714Y-95738095D01*
G04 #@! TO.C,R2*
X111916666Y-106452380D02*
X112250000Y-105976190D01*
X112488095Y-106452380D02*
X112488095Y-105452380D01*
X112107142Y-105452380D01*
X112011904Y-105500000D01*
X111964285Y-105547619D01*
X111916666Y-105642857D01*
X111916666Y-105785714D01*
X111964285Y-105880952D01*
X112011904Y-105928571D01*
X112107142Y-105976190D01*
X112488095Y-105976190D01*
X111535714Y-105547619D02*
X111488095Y-105500000D01*
X111392857Y-105452380D01*
X111154761Y-105452380D01*
X111059523Y-105500000D01*
X111011904Y-105547619D01*
X110964285Y-105642857D01*
X110964285Y-105738095D01*
X111011904Y-105880952D01*
X111583333Y-106452380D01*
X110964285Y-106452380D01*
G04 #@! TO.C,U1*
X102261904Y-97452380D02*
X102261904Y-98261904D01*
X102214285Y-98357142D01*
X102166666Y-98404761D01*
X102071428Y-98452380D01*
X101880952Y-98452380D01*
X101785714Y-98404761D01*
X101738095Y-98357142D01*
X101690476Y-98261904D01*
X101690476Y-97452380D01*
X100690476Y-98452380D02*
X101261904Y-98452380D01*
X100976190Y-98452380D02*
X100976190Y-97452380D01*
X101071428Y-97595238D01*
X101166666Y-97690476D01*
X101261904Y-97738095D01*
G04 #@! TO.C,U2*
X107202380Y-109488095D02*
X108011904Y-109488095D01*
X108107142Y-109535714D01*
X108154761Y-109583333D01*
X108202380Y-109678571D01*
X108202380Y-109869047D01*
X108154761Y-109964285D01*
X108107142Y-110011904D01*
X108011904Y-110059523D01*
X107202380Y-110059523D01*
X107297619Y-110488095D02*
X107250000Y-110535714D01*
X107202380Y-110630952D01*
X107202380Y-110869047D01*
X107250000Y-110964285D01*
X107297619Y-111011904D01*
X107392857Y-111059523D01*
X107488095Y-111059523D01*
X107630952Y-111011904D01*
X108202380Y-110440476D01*
X108202380Y-111059523D01*
G04 #@! TO.C,K2*
X90952380Y-99261904D02*
X89952380Y-99261904D01*
X90952380Y-99833333D02*
X90380952Y-99404761D01*
X89952380Y-99833333D02*
X90523809Y-99261904D01*
X90047619Y-100214285D02*
X90000000Y-100261904D01*
X89952380Y-100357142D01*
X89952380Y-100595238D01*
X90000000Y-100690476D01*
X90047619Y-100738095D01*
X90142857Y-100785714D01*
X90238095Y-100785714D01*
X90380952Y-100738095D01*
X90952380Y-100166666D01*
X90952380Y-100785714D01*
G04 #@! TO.C,C5*
X99166666Y-103857142D02*
X99214285Y-103904761D01*
X99357142Y-103952380D01*
X99452380Y-103952380D01*
X99595238Y-103904761D01*
X99690476Y-103809523D01*
X99738095Y-103714285D01*
X99785714Y-103523809D01*
X99785714Y-103380952D01*
X99738095Y-103190476D01*
X99690476Y-103095238D01*
X99595238Y-103000000D01*
X99452380Y-102952380D01*
X99357142Y-102952380D01*
X99214285Y-103000000D01*
X99166666Y-103047619D01*
X98261904Y-102952380D02*
X98738095Y-102952380D01*
X98785714Y-103428571D01*
X98738095Y-103380952D01*
X98642857Y-103333333D01*
X98404761Y-103333333D01*
X98309523Y-103380952D01*
X98261904Y-103428571D01*
X98214285Y-103523809D01*
X98214285Y-103761904D01*
X98261904Y-103857142D01*
X98309523Y-103904761D01*
X98404761Y-103952380D01*
X98642857Y-103952380D01*
X98738095Y-103904761D01*
X98785714Y-103857142D01*
G04 #@! TO.C,R3*
X99666666Y-115452380D02*
X100000000Y-114976190D01*
X100238095Y-115452380D02*
X100238095Y-114452380D01*
X99857142Y-114452380D01*
X99761904Y-114500000D01*
X99714285Y-114547619D01*
X99666666Y-114642857D01*
X99666666Y-114785714D01*
X99714285Y-114880952D01*
X99761904Y-114928571D01*
X99857142Y-114976190D01*
X100238095Y-114976190D01*
X99333333Y-114452380D02*
X98714285Y-114452380D01*
X99047619Y-114833333D01*
X98904761Y-114833333D01*
X98809523Y-114880952D01*
X98761904Y-114928571D01*
X98714285Y-115023809D01*
X98714285Y-115261904D01*
X98761904Y-115357142D01*
X98809523Y-115404761D01*
X98904761Y-115452380D01*
X99190476Y-115452380D01*
X99285714Y-115404761D01*
X99333333Y-115357142D01*
G04 #@! TD*
M02*

View file

@ -1,54 +0,0 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,5.0.1*
G04 #@! TF.CreationDate,2019-01-10T18:43:16+01:00*
G04 #@! TF.ProjectId,arachnorepel,61726163686E6F726570656C2E6B6963,rev?*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Profile,NP*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 5.0.1) date Do 10 Jan 2019 18:43:16 CET*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10C,0.150000*%
G04 #@! TA.AperFunction,NonConductor*
%ADD11C,0.150000*%
G04 #@! TD*
G04 APERTURE END LIST*
D10*
X83000000Y-110750000D02*
X83000000Y-103700000D01*
X110750000Y-86250000D02*
G75*
G03X113750000Y-89250000I3000000J0D01*
G01*
X89250000Y-113750000D02*
G75*
G03X86250000Y-110750000I-3000000J0D01*
G01*
X89250000Y-113750000D02*
X89250000Y-117000000D01*
X83000000Y-110750000D02*
X86250000Y-110750000D01*
X110750000Y-86250000D02*
X110750000Y-83000000D01*
X117000000Y-89250000D02*
X113750000Y-89250000D01*
X83000000Y-96300000D02*
X83000000Y-83000000D01*
X117000000Y-117000000D02*
X89250000Y-117000000D01*
X117000000Y-89250000D02*
X117000000Y-117000000D01*
X83000000Y-83000000D02*
X110750000Y-83000000D01*
D11*
G04 #@! TO.C,K2*
X87600000Y-103700000D02*
X83000000Y-103700000D01*
X87600000Y-96300000D02*
X87600000Y-103700000D01*
X83000000Y-96300000D02*
X87600000Y-96300000D01*
G04 #@! TD*
M02*

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,746 +0,0 @@
G04 #@! TF.GenerationSoftware,KiCad,Pcbnew,5.0.1*
G04 #@! TF.CreationDate,2019-01-10T18:43:16+01:00*
G04 #@! TF.ProjectId,arachnorepel,61726163686E6F726570656C2E6B6963,rev?*
G04 #@! TF.SameCoordinates,Original*
G04 #@! TF.FileFunction,Legend,Top*
G04 #@! TF.FilePolarity,Positive*
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 5.0.1) date Do 10 Jan 2019 18:43:16 CET*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10C,0.160000*%
%ADD11C,0.150000*%
%ADD12C,0.250000*%
G04 #@! TA.AperFunction,NonConductor*
%ADD13C,0.150000*%
G04 #@! TD*
%ADD14C,0.200660*%
G04 APERTURE END LIST*
D10*
X85377619Y-86261904D02*
X85853809Y-85928571D01*
X85377619Y-85690476D02*
X86377619Y-85690476D01*
X86377619Y-86071428D01*
X86330000Y-86166666D01*
X86282380Y-86214285D01*
X86187142Y-86261904D01*
X86044285Y-86261904D01*
X85949047Y-86214285D01*
X85901428Y-86166666D01*
X85853809Y-86071428D01*
X85853809Y-85690476D01*
X85758571Y-86690476D02*
X85758571Y-87452380D01*
X86282380Y-87880952D02*
X86330000Y-87928571D01*
X86377619Y-88023809D01*
X86377619Y-88261904D01*
X86330000Y-88357142D01*
X86282380Y-88404761D01*
X86187142Y-88452380D01*
X86091904Y-88452380D01*
X85949047Y-88404761D01*
X85377619Y-87833333D01*
X85377619Y-88452380D01*
X86377619Y-88785714D02*
X86377619Y-89404761D01*
X85996666Y-89071428D01*
X85996666Y-89214285D01*
X85949047Y-89309523D01*
X85901428Y-89357142D01*
X85806190Y-89404761D01*
X85568095Y-89404761D01*
X85472857Y-89357142D01*
X85425238Y-89309523D01*
X85377619Y-89214285D01*
X85377619Y-88928571D01*
X85425238Y-88833333D01*
X85472857Y-88785714D01*
X85377619Y-90357142D02*
X85377619Y-89785714D01*
X85377619Y-90071428D02*
X86377619Y-90071428D01*
X86234761Y-89976190D01*
X86139523Y-89880952D01*
X86091904Y-89785714D01*
X84717619Y-84095238D02*
X84717619Y-84190476D01*
X84670000Y-84285714D01*
X84622380Y-84333333D01*
X84527142Y-84380952D01*
X84336666Y-84428571D01*
X84098571Y-84428571D01*
X83908095Y-84380952D01*
X83812857Y-84333333D01*
X83765238Y-84285714D01*
X83717619Y-84190476D01*
X83717619Y-84095238D01*
X83765238Y-84000000D01*
X83812857Y-83952380D01*
X83908095Y-83904761D01*
X84098571Y-83857142D01*
X84336666Y-83857142D01*
X84527142Y-83904761D01*
X84622380Y-83952380D01*
X84670000Y-84000000D01*
X84717619Y-84095238D01*
X84717619Y-84761904D02*
X84717619Y-85380952D01*
X84336666Y-85047619D01*
X84336666Y-85190476D01*
X84289047Y-85285714D01*
X84241428Y-85333333D01*
X84146190Y-85380952D01*
X83908095Y-85380952D01*
X83812857Y-85333333D01*
X83765238Y-85285714D01*
X83717619Y-85190476D01*
X83717619Y-84904761D01*
X83765238Y-84809523D01*
X83812857Y-84761904D01*
X83717619Y-86333333D02*
X83717619Y-85761904D01*
X83717619Y-86047619D02*
X84717619Y-86047619D01*
X84574761Y-85952380D01*
X84479523Y-85857142D01*
X84431904Y-85761904D01*
X84717619Y-86666666D02*
X84717619Y-87333333D01*
X83717619Y-86904761D01*
X84765238Y-88428571D02*
X83479523Y-87571428D01*
X84717619Y-88952380D02*
X84717619Y-89047619D01*
X84670000Y-89142857D01*
X84622380Y-89190476D01*
X84527142Y-89238095D01*
X84336666Y-89285714D01*
X84098571Y-89285714D01*
X83908095Y-89238095D01*
X83812857Y-89190476D01*
X83765238Y-89142857D01*
X83717619Y-89047619D01*
X83717619Y-88952380D01*
X83765238Y-88857142D01*
X83812857Y-88809523D01*
X83908095Y-88761904D01*
X84098571Y-88714285D01*
X84336666Y-88714285D01*
X84527142Y-88761904D01*
X84622380Y-88809523D01*
X84670000Y-88857142D01*
X84717619Y-88952380D01*
X84622380Y-89666666D02*
X84670000Y-89714285D01*
X84717619Y-89809523D01*
X84717619Y-90047619D01*
X84670000Y-90142857D01*
X84622380Y-90190476D01*
X84527142Y-90238095D01*
X84431904Y-90238095D01*
X84289047Y-90190476D01*
X83717619Y-89619047D01*
X83717619Y-90238095D01*
X83717619Y-91190476D02*
X83717619Y-90619047D01*
X83717619Y-90904761D02*
X84717619Y-90904761D01*
X84574761Y-90809523D01*
X84479523Y-90714285D01*
X84431904Y-90619047D01*
X83717619Y-91666666D02*
X83717619Y-91857142D01*
X83765238Y-91952380D01*
X83812857Y-92000000D01*
X83955714Y-92095238D01*
X84146190Y-92142857D01*
X84527142Y-92142857D01*
X84622380Y-92095238D01*
X84670000Y-92047619D01*
X84717619Y-91952380D01*
X84717619Y-91761904D01*
X84670000Y-91666666D01*
X84622380Y-91619047D01*
X84527142Y-91571428D01*
X84289047Y-91571428D01*
X84193809Y-91619047D01*
X84146190Y-91666666D01*
X84098571Y-91761904D01*
X84098571Y-91952380D01*
X84146190Y-92047619D01*
X84193809Y-92095238D01*
X84289047Y-92142857D01*
D11*
X100866785Y-102000000D02*
X100771547Y-101952380D01*
X100628690Y-101952380D01*
X100485833Y-102000000D01*
X100390595Y-102095238D01*
X100342976Y-102190476D01*
X100295357Y-102380952D01*
X100295357Y-102523809D01*
X100342976Y-102714285D01*
X100390595Y-102809523D01*
X100485833Y-102904761D01*
X100628690Y-102952380D01*
X100723928Y-102952380D01*
X100866785Y-102904761D01*
X100914404Y-102857142D01*
X100914404Y-102523809D01*
X100723928Y-102523809D01*
X101342976Y-102952380D02*
X101342976Y-101952380D01*
X101914404Y-102952380D01*
X101914404Y-101952380D01*
X102390595Y-102952380D02*
X102390595Y-101952380D01*
X102628690Y-101952380D01*
X102771547Y-102000000D01*
X102866785Y-102095238D01*
X102914404Y-102190476D01*
X102962023Y-102380952D01*
X102962023Y-102523809D01*
X102914404Y-102714285D01*
X102866785Y-102809523D01*
X102771547Y-102904761D01*
X102628690Y-102952380D01*
X102390595Y-102952380D01*
X99914404Y-100452380D02*
X99914404Y-99452380D01*
X100152500Y-99452380D01*
X100295357Y-99500000D01*
X100390595Y-99595238D01*
X100438214Y-99690476D01*
X100485833Y-99880952D01*
X100485833Y-100023809D01*
X100438214Y-100214285D01*
X100390595Y-100309523D01*
X100295357Y-100404761D01*
X100152500Y-100452380D01*
X99914404Y-100452380D01*
X100866785Y-100166666D02*
X101342976Y-100166666D01*
X100771547Y-100452380D02*
X101104880Y-99452380D01*
X101438214Y-100452380D01*
X101628690Y-99452380D02*
X102200119Y-99452380D01*
X101914404Y-100452380D02*
X101914404Y-99452380D01*
X102485833Y-100166666D02*
X102962023Y-100166666D01*
X102390595Y-100452380D02*
X102723928Y-99452380D01*
X103057261Y-100452380D01*
X101295357Y-96952380D02*
X100819166Y-96952380D01*
X100771547Y-97428571D01*
X100819166Y-97380952D01*
X100914404Y-97333333D01*
X101152500Y-97333333D01*
X101247738Y-97380952D01*
X101295357Y-97428571D01*
X101342976Y-97523809D01*
X101342976Y-97761904D01*
X101295357Y-97857142D01*
X101247738Y-97904761D01*
X101152500Y-97952380D01*
X100914404Y-97952380D01*
X100819166Y-97904761D01*
X100771547Y-97857142D01*
X102390595Y-96952380D02*
X102723928Y-97952380D01*
X103057261Y-96952380D01*
X94990357Y-113452380D02*
X95609404Y-113452380D01*
X95276071Y-113833333D01*
X95418928Y-113833333D01*
X95514166Y-113880952D01*
X95561785Y-113928571D01*
X95609404Y-114023809D01*
X95609404Y-114261904D01*
X95561785Y-114357142D01*
X95514166Y-114404761D01*
X95418928Y-114452380D01*
X95133214Y-114452380D01*
X95037976Y-114404761D01*
X94990357Y-114357142D01*
X96037976Y-114357142D02*
X96085595Y-114404761D01*
X96037976Y-114452380D01*
X95990357Y-114404761D01*
X96037976Y-114357142D01*
X96037976Y-114452380D01*
X96418928Y-113452380D02*
X97037976Y-113452380D01*
X96704642Y-113833333D01*
X96847500Y-113833333D01*
X96942738Y-113880952D01*
X96990357Y-113928571D01*
X97037976Y-114023809D01*
X97037976Y-114261904D01*
X96990357Y-114357142D01*
X96942738Y-114404761D01*
X96847500Y-114452380D01*
X96561785Y-114452380D01*
X96466547Y-114404761D01*
X96418928Y-114357142D01*
X98085595Y-113452380D02*
X98418928Y-114452380D01*
X98752261Y-113452380D01*
X95085595Y-111952380D02*
X95085595Y-110952380D01*
X95657023Y-111952380D01*
X95657023Y-110952380D01*
X96704642Y-111952380D02*
X96371309Y-111476190D01*
X96133214Y-111952380D02*
X96133214Y-110952380D01*
X96514166Y-110952380D01*
X96609404Y-111000000D01*
X96657023Y-111047619D01*
X96704642Y-111142857D01*
X96704642Y-111285714D01*
X96657023Y-111380952D01*
X96609404Y-111428571D01*
X96514166Y-111476190D01*
X96133214Y-111476190D01*
X97085595Y-111904761D02*
X97228452Y-111952380D01*
X97466547Y-111952380D01*
X97561785Y-111904761D01*
X97609404Y-111857142D01*
X97657023Y-111761904D01*
X97657023Y-111666666D01*
X97609404Y-111571428D01*
X97561785Y-111523809D01*
X97466547Y-111476190D01*
X97276071Y-111428571D01*
X97180833Y-111380952D01*
X97133214Y-111333333D01*
X97085595Y-111238095D01*
X97085595Y-111142857D01*
X97133214Y-111047619D01*
X97180833Y-111000000D01*
X97276071Y-110952380D01*
X97514166Y-110952380D01*
X97657023Y-111000000D01*
X97942738Y-110952380D02*
X98514166Y-110952380D01*
X98228452Y-111952380D02*
X98228452Y-110952380D01*
X95085595Y-109452380D02*
X95085595Y-108452380D01*
X95752261Y-108452380D02*
X95942738Y-108452380D01*
X96037976Y-108500000D01*
X96133214Y-108595238D01*
X96180833Y-108785714D01*
X96180833Y-109119047D01*
X96133214Y-109309523D01*
X96037976Y-109404761D01*
X95942738Y-109452380D01*
X95752261Y-109452380D01*
X95657023Y-109404761D01*
X95561785Y-109309523D01*
X95514166Y-109119047D01*
X95514166Y-108785714D01*
X95561785Y-108595238D01*
X95657023Y-108500000D01*
X95752261Y-108452380D01*
X95657023Y-106857142D02*
X95609404Y-106904761D01*
X95466547Y-106952380D01*
X95371309Y-106952380D01*
X95228452Y-106904761D01*
X95133214Y-106809523D01*
X95085595Y-106714285D01*
X95037976Y-106523809D01*
X95037976Y-106380952D01*
X95085595Y-106190476D01*
X95133214Y-106095238D01*
X95228452Y-106000000D01*
X95371309Y-105952380D01*
X95466547Y-105952380D01*
X95609404Y-106000000D01*
X95657023Y-106047619D01*
X96561785Y-106952380D02*
X96085595Y-106952380D01*
X96085595Y-105952380D01*
X96895119Y-106952380D02*
X96895119Y-105952380D01*
X97466547Y-106952380D02*
X97037976Y-106380952D01*
X97466547Y-105952380D02*
X96895119Y-106523809D01*
X95609404Y-103500000D02*
X95514166Y-103452380D01*
X95371309Y-103452380D01*
X95228452Y-103500000D01*
X95133214Y-103595238D01*
X95085595Y-103690476D01*
X95037976Y-103880952D01*
X95037976Y-104023809D01*
X95085595Y-104214285D01*
X95133214Y-104309523D01*
X95228452Y-104404761D01*
X95371309Y-104452380D01*
X95466547Y-104452380D01*
X95609404Y-104404761D01*
X95657023Y-104357142D01*
X95657023Y-104023809D01*
X95466547Y-104023809D01*
X96085595Y-104452380D02*
X96085595Y-103452380D01*
X96657023Y-104452380D01*
X96657023Y-103452380D01*
X97133214Y-104452380D02*
X97133214Y-103452380D01*
X97371309Y-103452380D01*
X97514166Y-103500000D01*
X97609404Y-103595238D01*
X97657023Y-103690476D01*
X97704642Y-103880952D01*
X97704642Y-104023809D01*
X97657023Y-104214285D01*
X97609404Y-104309523D01*
X97514166Y-104404761D01*
X97371309Y-104452380D01*
X97133214Y-104452380D01*
X83000000Y-110750000D02*
X83000000Y-103700000D01*
X110750000Y-86250000D02*
G75*
G03X113750000Y-89250000I3000000J0D01*
G01*
X89250000Y-113750000D02*
G75*
G03X86250000Y-110750000I-3000000J0D01*
G01*
X89250000Y-113750000D02*
X89250000Y-117000000D01*
X83000000Y-110750000D02*
X86250000Y-110750000D01*
X110750000Y-86250000D02*
X110750000Y-83000000D01*
X117000000Y-89250000D02*
X113750000Y-89250000D01*
X83000000Y-96300000D02*
X83000000Y-83000000D01*
X117000000Y-117000000D02*
X89250000Y-117000000D01*
X117000000Y-89250000D02*
X117000000Y-117000000D01*
X83000000Y-83000000D02*
X110750000Y-83000000D01*
D12*
G04 #@! TO.C,K1*
X106905000Y-96190000D02*
X110080000Y-96190000D01*
X106905000Y-103810000D02*
X110080000Y-103810000D01*
X106270000Y-97460000D02*
X106905000Y-97460000D01*
X106270000Y-100000000D02*
X106905000Y-100000000D01*
X110080000Y-97460000D02*
X117700000Y-97460000D01*
X110080000Y-100000000D02*
X117700000Y-100000000D01*
X118335000Y-96825000D02*
X110080000Y-96825000D01*
X118335000Y-103175000D02*
X110080000Y-103175000D01*
X110080000Y-96190000D02*
X110080000Y-103810000D01*
X106905000Y-96190000D02*
X106905000Y-103810000D01*
X106905000Y-102540000D02*
X106270000Y-102540000D01*
X110080000Y-102540000D02*
X117700000Y-102540000D01*
X118335000Y-102540000D02*
X118335000Y-103175000D01*
X118335000Y-96825000D02*
X118335000Y-102540000D01*
G04 #@! TO.C,K3*
X90595000Y-115985000D02*
X90595000Y-102015000D01*
X94405000Y-115985000D02*
X94405000Y-102015000D01*
X93770000Y-115985000D02*
X94405000Y-115350000D01*
X90595000Y-102015000D02*
X94405000Y-102015000D01*
X90595000Y-115985000D02*
X94405000Y-115985000D01*
D13*
G04 #@! TO.C,K2*
X87600000Y-103700000D02*
X83000000Y-103700000D01*
X87600000Y-96300000D02*
X87600000Y-103700000D01*
X83000000Y-96300000D02*
X87600000Y-96300000D01*
D12*
G04 #@! TO.C,SW1*
X100000000Y-93810000D02*
X100635000Y-94445000D01*
X99365000Y-94445000D02*
X100000000Y-93810000D01*
X101905000Y-94445000D02*
X100635000Y-94445000D01*
X99365000Y-94445000D02*
X98095000Y-94445000D01*
X101905000Y-85555000D02*
X98095000Y-85555000D01*
X101905000Y-94445000D02*
X101905000Y-85555000D01*
X98095000Y-94445000D02*
X98095000Y-85555000D01*
D14*
G04 #@! TO.C,Q2*
X107499360Y-113000000D02*
G75*
G03X107499360Y-113000000I-2499360J0D01*
G01*
D12*
X102460000Y-111476000D02*
X102460000Y-114524000D01*
X102488970Y-114571275D02*
G75*
G03X102460000Y-111476000I2511030J1571275D01*
G01*
G04 #@! TD*
G04 #@! TO.C,K1*
D11*
X115011904Y-96452380D02*
X115011904Y-95452380D01*
X115583333Y-96452380D02*
X115154761Y-95880952D01*
X115583333Y-95452380D02*
X115011904Y-96023809D01*
X116535714Y-96452380D02*
X115964285Y-96452380D01*
X116250000Y-96452380D02*
X116250000Y-95452380D01*
X116154761Y-95595238D01*
X116059523Y-95690476D01*
X115964285Y-95738095D01*
X114607142Y-104702380D02*
X114130952Y-104702380D01*
X114130952Y-103702380D01*
X114940476Y-104178571D02*
X115273809Y-104178571D01*
X115416666Y-104702380D02*
X114940476Y-104702380D01*
X114940476Y-103702380D01*
X115416666Y-103702380D01*
X115845238Y-104702380D02*
X115845238Y-103702380D01*
X116083333Y-103702380D01*
X116226190Y-103750000D01*
X116321428Y-103845238D01*
X116369047Y-103940476D01*
X116416666Y-104130952D01*
X116416666Y-104273809D01*
X116369047Y-104464285D01*
X116321428Y-104559523D01*
X116226190Y-104654761D01*
X116083333Y-104702380D01*
X115845238Y-104702380D01*
G04 #@! TO.C,K3*
X88261904Y-107952380D02*
X88261904Y-106952380D01*
X88833333Y-107952380D02*
X88404761Y-107380952D01*
X88833333Y-106952380D02*
X88261904Y-107523809D01*
X89166666Y-106952380D02*
X89785714Y-106952380D01*
X89452380Y-107333333D01*
X89595238Y-107333333D01*
X89690476Y-107380952D01*
X89738095Y-107428571D01*
X89785714Y-107523809D01*
X89785714Y-107761904D01*
X89738095Y-107857142D01*
X89690476Y-107904761D01*
X89595238Y-107952380D01*
X89309523Y-107952380D01*
X89214285Y-107904761D01*
X89166666Y-107857142D01*
X86892857Y-109654761D02*
X87035714Y-109702380D01*
X87273809Y-109702380D01*
X87369047Y-109654761D01*
X87416666Y-109607142D01*
X87464285Y-109511904D01*
X87464285Y-109416666D01*
X87416666Y-109321428D01*
X87369047Y-109273809D01*
X87273809Y-109226190D01*
X87083333Y-109178571D01*
X86988095Y-109130952D01*
X86940476Y-109083333D01*
X86892857Y-108988095D01*
X86892857Y-108892857D01*
X86940476Y-108797619D01*
X86988095Y-108750000D01*
X87083333Y-108702380D01*
X87321428Y-108702380D01*
X87464285Y-108750000D01*
X87797619Y-108702380D02*
X88035714Y-109702380D01*
X88226190Y-108988095D01*
X88416666Y-109702380D01*
X88654761Y-108702380D01*
X89035714Y-109702380D02*
X89035714Y-108702380D01*
X89273809Y-108702380D01*
X89416666Y-108750000D01*
X89511904Y-108845238D01*
X89559523Y-108940476D01*
X89607142Y-109130952D01*
X89607142Y-109273809D01*
X89559523Y-109464285D01*
X89511904Y-109559523D01*
X89416666Y-109654761D01*
X89273809Y-109702380D01*
X89035714Y-109702380D01*
G04 #@! TO.C,SW1*
X98666666Y-84904761D02*
X98809523Y-84952380D01*
X99047619Y-84952380D01*
X99142857Y-84904761D01*
X99190476Y-84857142D01*
X99238095Y-84761904D01*
X99238095Y-84666666D01*
X99190476Y-84571428D01*
X99142857Y-84523809D01*
X99047619Y-84476190D01*
X98857142Y-84428571D01*
X98761904Y-84380952D01*
X98714285Y-84333333D01*
X98666666Y-84238095D01*
X98666666Y-84142857D01*
X98714285Y-84047619D01*
X98761904Y-84000000D01*
X98857142Y-83952380D01*
X99095238Y-83952380D01*
X99238095Y-84000000D01*
X99571428Y-83952380D02*
X99809523Y-84952380D01*
X100000000Y-84238095D01*
X100190476Y-84952380D01*
X100428571Y-83952380D01*
X101333333Y-84952380D02*
X100761904Y-84952380D01*
X101047619Y-84952380D02*
X101047619Y-83952380D01*
X100952380Y-84095238D01*
X100857142Y-84190476D01*
X100761904Y-84238095D01*
X98095238Y-96107142D02*
X98047619Y-96154761D01*
X97904761Y-96202380D01*
X97809523Y-96202380D01*
X97666666Y-96154761D01*
X97571428Y-96059523D01*
X97523809Y-95964285D01*
X97476190Y-95773809D01*
X97476190Y-95630952D01*
X97523809Y-95440476D01*
X97571428Y-95345238D01*
X97666666Y-95250000D01*
X97809523Y-95202380D01*
X97904761Y-95202380D01*
X98047619Y-95250000D01*
X98095238Y-95297619D01*
X98714285Y-95202380D02*
X98904761Y-95202380D01*
X99000000Y-95250000D01*
X99095238Y-95345238D01*
X99142857Y-95535714D01*
X99142857Y-95869047D01*
X99095238Y-96059523D01*
X99000000Y-96154761D01*
X98904761Y-96202380D01*
X98714285Y-96202380D01*
X98619047Y-96154761D01*
X98523809Y-96059523D01*
X98476190Y-95869047D01*
X98476190Y-95535714D01*
X98523809Y-95345238D01*
X98619047Y-95250000D01*
X98714285Y-95202380D01*
X99571428Y-96202380D02*
X99571428Y-95202380D01*
X100142857Y-96202380D01*
X100142857Y-95202380D01*
X100952380Y-95678571D02*
X100619047Y-95678571D01*
X100619047Y-96202380D02*
X100619047Y-95202380D01*
X101095238Y-95202380D01*
X101476190Y-96202380D02*
X101476190Y-95202380D01*
X102476190Y-95250000D02*
X102380952Y-95202380D01*
X102238095Y-95202380D01*
X102095238Y-95250000D01*
X102000000Y-95345238D01*
X101952380Y-95440476D01*
X101904761Y-95630952D01*
X101904761Y-95773809D01*
X101952380Y-95964285D01*
X102000000Y-96059523D01*
X102095238Y-96154761D01*
X102238095Y-96202380D01*
X102333333Y-96202380D01*
X102476190Y-96154761D01*
X102523809Y-96107142D01*
X102523809Y-95773809D01*
X102333333Y-95773809D01*
G04 #@! TO.C,Q2*
X101797619Y-113095238D02*
X101750000Y-113190476D01*
X101654761Y-113285714D01*
X101511904Y-113428571D01*
X101464285Y-113523809D01*
X101464285Y-113619047D01*
X101702380Y-113571428D02*
X101654761Y-113666666D01*
X101559523Y-113761904D01*
X101369047Y-113809523D01*
X101035714Y-113809523D01*
X100845238Y-113761904D01*
X100750000Y-113666666D01*
X100702380Y-113571428D01*
X100702380Y-113380952D01*
X100750000Y-113285714D01*
X100845238Y-113190476D01*
X101035714Y-113142857D01*
X101369047Y-113142857D01*
X101559523Y-113190476D01*
X101654761Y-113285714D01*
X101702380Y-113380952D01*
X101702380Y-113571428D01*
X100797619Y-112761904D02*
X100750000Y-112714285D01*
X100702380Y-112619047D01*
X100702380Y-112380952D01*
X100750000Y-112285714D01*
X100797619Y-112238095D01*
X100892857Y-112190476D01*
X100988095Y-112190476D01*
X101130952Y-112238095D01*
X101702380Y-112809523D01*
X101702380Y-112190476D01*
G04 #@! TD*
M02*

View file

@ -1,11 +0,0 @@
M48
;DRILL file {KiCad 5.0.1} date Do 10 Jan 2019 18:43:22 CET
;FORMAT={-:-/ absolute / inch / decimal}
FMAT,2
INCH,TZ
%
G90
G05
M72
T0
M30

View file

@ -1,49 +0,0 @@
M48
;DRILL file {KiCad 5.0.1} date Do 10 Jan 2019 18:43:22 CET
;FORMAT={-:-/ absolute / inch / decimal}
FMAT,2
INCH,TZ
T1C0.0315
T2C0.0315
T3C0.0320
T4C0.0394
T5C0.1181
%
G90
G05
M72
T2
X4.1339Y-3.837
X4.1339Y-3.937
X4.1339Y-4.037
T3
X4.0839Y-4.4488
X4.1839Y-4.4488
X3.787Y-3.3933
X3.787Y-3.4933
X3.787Y-3.5933
X3.787Y-3.6933
X4.087Y-3.3933
X4.087Y-3.4933
X4.087Y-3.5933
X4.087Y-3.6933
T4
X3.6417Y-4.0913
X3.6417Y-4.1913
X3.6417Y-4.2913
X3.6417Y-4.3913
X3.6417Y-4.4913
T5
X4.3307Y-4.498
X3.5433Y-3.376
T1
X3.3445Y-3.7362G85X3.3169Y-3.7362
G05
X3.3445Y-4.1378G85X3.3169Y-4.1378
G05
X3.4902Y-3.7362G85X3.4626Y-3.7362
G05
X3.4902Y-4.1378G85X3.4626Y-4.1378
G05
T0
M30

Binary file not shown.

Binary file not shown.

View file

@ -1 +0,0 @@
0

View file

@ -1,33 +0,0 @@
(sym_lib_table
(lib (name arachnorepel-rescue)(type Legacy)(uri ${KIPRJMOD}/arachnorepel-rescue.lib)(options "")(descr ""))
(lib (name 74)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/74.lib)(options "")(descr ""))
(lib (name 4000)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/4000.lib)(options "")(descr ""))
(lib (name ad)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/ad.lib)(options "")(descr ""))
(lib (name analog)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/analog.lib)(options "")(descr ""))
(lib (name atmel)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/atmel.lib)(options "")(descr ""))
(lib (name conn)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/conn.lib)(options "")(descr ""))
(lib (name diode)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/diode.lib)(options "")(descr ""))
(lib (name display)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/display.lib)(options "")(descr ""))
(lib (name driver)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/driver.lib)(options "")(descr ""))
(lib (name espressif)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/espressif.lib)(options "")(descr ""))
(lib (name ftdi)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/ftdi.lib)(options "")(descr ""))
(lib (name maxim)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/maxim.lib)(options "")(descr ""))
(lib (name memory)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/memory.lib)(options "")(descr ""))
(lib (name optocop)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/optocop.lib)(options "")(descr ""))
(lib (name osc)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/osc.lib)(options "")(descr ""))
(lib (name parallax)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/parallax.lib)(options "")(descr ""))
(lib (name power1)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/power.lib)(options "")(descr ""))
(lib (name ps)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/ps.lib)(options "")(descr ""))
(lib (name rcl)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/rcl.lib)(options "")(descr ""))
(lib (name regu)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/regu.lib)(options "")(descr ""))
(lib (name schem)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/schem.lib)(options "")(descr ""))
(lib (name sensor)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/sensor.lib)(options "")(descr ""))
(lib (name stm)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/stm.lib)(options "")(descr ""))
(lib (name sw)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/sw.lib)(options "")(descr ""))
(lib (name ti)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/ti.lib)(options "")(descr ""))
(lib (name transformer)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/transformer.lib)(options "")(descr ""))
(lib (name transistor)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/transistor.lib)(options "")(descr ""))
(lib (name triac)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/triac.lib)(options "")(descr ""))
(lib (name xilinx)(type Legacy)(uri /usr/share/kicad/fruchtilib/lib/xilinx.lib)(options "")(descr ""))
(lib (name arachnouphobia-rescue)(type Legacy)(uri ${KIPRJMOD}/arachnouphobia-rescue.lib)(options "")(descr ""))
)

View file

@ -1 +0,0 @@
233

View file

@ -1,7 +0,0 @@
source [find interface/stlink-v2.cfg]
transport select "hla_swd"
source [find target/stm32f0x.cfg]
reset_config trst_and_srst
init
arm semihosting enable
reset run

View file

@ -1,6 +0,0 @@
target remote :3333
file build/main.elf
monitor reset halt
monitor flash write_image erase build/main.bin 0x8000000
#load build/main.elf
monitor reset run

View file

@ -1,163 +0,0 @@
/*
*****************************************************************************
**
** File : STM32F030F4_FLASH.ld
**
** Abstract : Linker script for STM32F030F4 Device with
** 16KByte FLASH, 4KByte RAM
**
** Set heap size, stack size and stack location according
** to application requirements.
**
** Set memory bank area and size if external memory is used.
**
** Target : STMicroelectronics STM32
**
*****************************************************************************
*/
/* Entry Point */
ENTRY(Reset_Handler)
/* Highest address of the user mode stack */
_estack = 0x20001000; /* end of 4K RAM */
/* Generate a link error if heap and stack don't fit into RAM */
_Min_Heap_Size = 0; /* required amount of heap */
_Min_Stack_Size = 0x80; /* required amount of stack */
/* Specify the memory areas */
MEMORY
{
FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 16K
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 4K
MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
}
/* Define output sections */
SECTIONS
{
/* The startup code goes first into FLASH */
.isr_vector :
{
. = ALIGN(4);
KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4);
} >FLASH
/* The program code and other data goes into FLASH */
.text :
{
. = ALIGN(4);
*(.text) /* .text sections (code) */
*(.text*) /* .text* sections (code) */
*(.glue_7) /* glue arm to thumb code */
*(.glue_7t) /* glue thumb to arm code */
*(.eh_frame)
KEEP (*(.init))
KEEP (*(.fini))
. = ALIGN(4);
_etext = .; /* define a global symbols at end of code */
} >FLASH
/* Constant data goes into FLASH */
.rodata :
{
. = ALIGN(4);
*(.rodata) /* .rodata sections (constants, strings, etc.) */
*(.rodata*) /* .rodata* sections (constants, strings, etc.) */
. = ALIGN(4);
} >FLASH
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
.ARM : {
__exidx_start = .;
*(.ARM.exidx*)
__exidx_end = .;
} >FLASH
.preinit_array :
{
PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP (*(.preinit_array*))
PROVIDE_HIDDEN (__preinit_array_end = .);
} >FLASH
.init_array :
{
PROVIDE_HIDDEN (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array*))
PROVIDE_HIDDEN (__init_array_end = .);
} >FLASH
.fini_array :
{
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP (*(SORT(.fini_array.*)))
KEEP (*(.fini_array*))
PROVIDE_HIDDEN (__fini_array_end = .);
} >FLASH
/* used by the startup to initialize data */
_sidata = LOADADDR(.data);
/* Initialized data sections goes into RAM, load LMA copy after code */
.data :
{
. = ALIGN(4);
_sdata = .; /* create a global symbol at data start */
*(.data) /* .data sections */
*(.data*) /* .data* sections */
. = ALIGN(4);
_edata = .; /* define a global symbol at data end */
} >RAM AT> FLASH
/* Uninitialized data section */
. = ALIGN(4);
.bss :
{
/* This is used by the startup in order to initialize the .bss secion */
_sbss = .; /* define a global symbol at bss start */
__bss_start__ = _sbss;
*(.bss)
*(.bss*)
*(COMMON)
. = ALIGN(4);
_ebss = .; /* define a global symbol at bss end */
__bss_end__ = _ebss;
} >RAM
/* User_heap_stack section, used to check that there is enough RAM left */
._user_heap_stack :
{
. = ALIGN(4);
PROVIDE ( end = . );
PROVIDE ( _end = . );
. = . + _Min_Heap_Size;
. = . + _Min_Stack_Size;
. = ALIGN(4);
} >RAM
/* MEMORY_bank1 section, code must be located here explicitly */
/* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
.memory_b1_text :
{
*(.mb1text) /* .mb1text sections (code) */
*(.mb1text*) /* .mb1text* sections (code) */
*(.mb1rodata) /* read-only data (constants) */
*(.mb1rodata*)
} >MEMORY_B1
/* Remove information from the standard libraries */
/DISCARD/ :
{
libc.a ( * )
libm.a ( * )
libgcc.a ( * )
}
.ARM.attributes 0 : { *(.ARM.attributes) }
}

View file

@ -1,165 +0,0 @@
/*
*****************************************************************************
**
** File : STM32F030F4_FLASH.ld
**
** Abstract : Linker script for STM32F030F4 Device with
** 16KByte FLASH, 4KByte RAM
**
** Set heap size, stack size and stack location according
** to application requirements.
**
** Set memory bank area and size if external memory is used.
**
** Target : STMicroelectronics STM32
**
*****************************************************************************
*/
/* Entry Point */
ENTRY(Reset_Handler)
/* Highest address of the user mode stack */
_estack = 0x20001000; /* end of 4K RAM */
/* Generate a link error if heap and stack don't fit into RAM */
_Min_Heap_Size = 0; /* required amount of heap */
_Min_Stack_Size = 0x80; /* required amount of stack */
/* Specify the memory areas */
MEMORY
{
FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 8K
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 4K
MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
}
/* Define output sections */
SECTIONS
{
/* The startup code goes first into FLASH */
.isr_vector :
{
. = ALIGN(4);
KEEP(*(.isr_vector)) /* Startup code */
. = ALIGN(4);
} >FLASH
/* The program code and other data goes into FLASH */
.text :
{
. = ALIGN(4);
*(.text) /* .text sections (code) */
*(.text*) /* .text* sections (code) */
*(.glue_7) /* glue arm to thumb code */
*(.glue_7t) /* glue thumb to arm code */
*(.eh_frame)
KEEP (*(.init))
KEEP (*(.fini))
. = ALIGN(4);
_etext = .; /* define a global symbols at end of code */
} >FLASH
/* Constant data goes into FLASH */
.rodata :
{
. = ALIGN(4);
*(.rodata) /* .rodata sections (constants, strings, etc.) */
*(.rodata*) /* .rodata* sections (constants, strings, etc.) */
. = ALIGN(4);
} >FLASH
.ARM.extab : { *(.ARM.extab* .gnu.linkonce.armextab.*) } >FLASH
.ARM : {
__exidx_start = .;
*(.ARM.exidx*)
__exidx_end = .;
} >FLASH
.preinit_array :
{
PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP (*(.preinit_array*))
PROVIDE_HIDDEN (__preinit_array_end = .);
} >FLASH
.init_array :
{
PROVIDE_HIDDEN (__init_array_start = .);
KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array*))
PROVIDE_HIDDEN (__init_array_end = .);
} >FLASH
.fini_array :
{
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP (*(SORT(.fini_array.*)))
KEEP (*(.fini_array*))
PROVIDE_HIDDEN (__fini_array_end = .);
} >FLASH
/* used by the startup to initialize data */
_sidata = LOADADDR(.data);
/* Initialized data sections goes into RAM, load LMA copy after code */
.data :
{
. = ALIGN(4);
_sdata = .; /* create a global symbol at data start */
*(.data) /* .data sections */
*(.data*) /* .data* sections */
. = ALIGN(4);
*(.ramfunctions)
_edata = .; /* define a global symbol at data end */
} >RAM AT> FLASH
/* Uninitialized data section */
. = ALIGN(4);
.bss :
{
/* This is used by the startup in order to initialize the .bss secion */
_sbss = .; /* define a global symbol at bss start */
__bss_start__ = _sbss;
*(.bss)
*(.bss*)
*(COMMON)
. = ALIGN(4);
_ebss = .; /* define a global symbol at bss end */
__bss_end__ = _ebss;
} >RAM
/* User_heap_stack section, used to check that there is enough RAM left */
._user_heap_stack :
{
. = ALIGN(4);
PROVIDE ( end = . );
PROVIDE ( _end = . );
. = . + _Min_Heap_Size;
. = . + _Min_Stack_Size;
. = ALIGN(4);
} >RAM
/* MEMORY_bank1 section, code must be located here explicitly */
/* Example: extern int foo(void) __attribute__ ((section (".mb1text"))); */
.memory_b1_text :
{
*(.mb1text) /* .mb1text sections (code) */
*(.mb1text*) /* .mb1text* sections (code) */
*(.mb1rodata) /* read-only data (constants) */
*(.mb1rodata*)
} >MEMORY_B1
/* Remove information from the standard libraries */
/DISCARD/ :
{
libc.a ( * )
libm.a ( * )
libgcc.a ( * )
}
.ARM.attributes 0 : { *(.ARM.attributes) }
}

View file

@ -1,100 +0,0 @@
PROJECT = main
LOCAL_SOURCE_DIR = src
LOCAL_LIBS =
BUILD_DIR = build
CUBE_DIR := /opt/stm32cube/STM32Cube_FW_F0_V1.6.0
DEBUG := no
CUBE_DEVICE = STM32F0xx
H_DEVICE = STM32F030x6
STARTUP_SOURCE_DIR = $(CUBE_DIR)/Drivers/CMSIS/Device/ST/$(CUBE_DEVICE)/Source/Templates/gcc
LOCAL_SOURCES = $(wildcard $(LOCAL_SOURCE_DIR)/*.c)
LOCAL_LIB_SOURCES = $(foreach dir,$(LOCAL_LIBS),$(wildcard $(dir)/*.c))
STARTUP_SOURCES = $(STARTUP_SOURCE_DIR)/startup_stm32f030x6.s
ifeq ($(DEBUG),yes)
DEBUG_FLAGS = -DDEBUG -g3
endif
BUILD_NUMBER_FILE = build-number.txt
BUILD_ID_FLAGS = -Xlinker --defsym -Xlinker __BUILD_DATE=$$(date +'%Y%m%d') \
-Xlinker --defsym -Xlinker __BUILD_NUMBER=$$(cat $(BUILD_NUMBER_FILE))
CURRENT_BUILD_CONFIG := $(shell cat makefile | md5sum) DEBUG = $(DEBUG) CUBE_DIR = $(CUBE_DIR)
LAST_BUILD_CONFIG := $(shell cat $(BUILD_DIR)/build-config.txt)
CFLAGS = -mcpu=cortex-m0 -mlittle-endian -mthumb -mthumb-interwork -mfloat-abi=soft -Os \
-fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -mlong-calls \
-Wall -Xlinker --gc-sections -I$(CUBE_DIR)/Drivers/CMSIS/Include \
-I$(CUBE_DIR)/Drivers/CMSIS/Device/ST/$(CUBE_DEVICE)/Include -D$(H_DEVICE) \
-Tld/stm32f030f4_flash.ld -Wl,-Map=$(BUILD_DIR)/$(PROJECT).map -std=c99 \
$(addprefix -I,$(LOCAL_LIBS)) $(DEBUG_FLAGS)
RM = rm -f
CC = arm-none-eabi-gcc
OBJCOPY = arm-none-eabi-objcopy
SIZE = arm-none-eabi-size
OBJDUMP = arm-none-eabi-objdump
LOCAL_OBJECTS = $(patsubst $(LOCAL_SOURCE_DIR)/%.c, $(BUILD_DIR)/%.o, $(LOCAL_SOURCES))
LOCAL_LIB_OBJECTS = $(addprefix $(BUILD_DIR)/,$(addsuffix .o,$(basename $(notdir $(LOCAL_LIB_SOURCES)))))
STARTUP_OBJECTS = $(patsubst $(STARTUP_SOURCE_DIR)/%.s, $(BUILD_DIR)/%.o, $(STARTUP_SOURCES))
OBJECTS = $(LOCAL_OBJECTS) $(LOCAL_LIB_OBJECTS) $(STARTUP_OBJECTS)
LOCAL_DEPENDS = $(patsubst $(LOCAL_SOURCE_DIR)/%.c, $(BUILD_DIR)/%.d, $(LOCAL_SOURCES))
.DEFAULT_GOAL = all
.DELETE_ON_ERROR:
$(LOCAL_OBJECTS): $(BUILD_DIR)/%.o: $(LOCAL_SOURCE_DIR)/%.c
$(CC) $< -c -o $@ $(CFLAGS)
define define_lib_compile_rules
$(LOCAL_LIB_OBJECTS): $(BUILD_DIR)/%.o: $(1)/%.c
$$(CC) $$(CFLAGS) -o $$@ -c $$<
endef
$(foreach directory,$(LOCAL_LIBS),$(eval $(call define_lib_compile_rules,$(directory))))
$(STARTUP_OBJECTS): $(BUILD_DIR)/%.o: $(STARTUP_SOURCE_DIR)/%.s
$(CC) $< -c -o $@ $(CFLAGS)
$(LOCAL_DEPENDS): $(BUILD_DIR)/%.d: $(LOCAL_SOURCE_DIR)/%.c
@set -e; rm -f $@; $(CC) -MM $(CFLAGS) $< > $@.$$$$; sed 's,\($*\)\.o[ :]*,build\/\1.o $@ : ,g' < $@.$$$$ > $@; rm -f $@.$$$$
include $(LOCAL_DEPENDS)
$(BUILD_DIR)/$(PROJECT).elf: $(OBJECTS) $(BUILD_NUMBER_FILE)
$(CC) $(OBJECTS) $(CFLAGS) $(BUILD_ID_FLAGS) -o $@
$(BUILD_DIR)/$(PROJECT).bin: $(BUILD_DIR)/$(PROJECT).elf
$(OBJCOPY) -O binary -S $< $@
$(BUILD_DIR):
if [ ! -d "$(BUILD_DIR)" ]; then mkdir "$(BUILD_DIR)"; fi
$(BUILD_NUMBER_FILE): $(OBJECTS)
@if ! test -f $(BUILD_NUMBER_FILE); then echo 0 > $(BUILD_NUMBER_FILE); else \
echo $$(($$(cat $(BUILD_NUMBER_FILE)) + 1)) > $(BUILD_NUMBER_FILE) ; fi
# Rebuild everything in case of a makefile/configuration change
.PHONY: all
ifneq ("$(CURRENT_BUILD_CONFIG)","$(LAST_BUILD_CONFIG)")
all: clean incrementalbuild
else
all: incrementalbuild
endif
.PHONY: incrementalbuild
incrementalbuild: $(BUILD_DIR) $(OBJECTS) $(BUILD_DIR)/$(PROJECT).elf $(BUILD_DIR)/$(PROJECT).bin
$(SIZE) $(BUILD_DIR)/$(PROJECT).elf
@echo "$(CURRENT_BUILD_CONFIG)" > $(BUILD_DIR)/build-config.txt
.PHONY: program
program: $(BUILD_DIR)/$(PROJECT).bin
if ps -e | grep openocd ; then arm-none-eabi-gdb -batch -x flash.gdb ; else st-flash --reset write $(BUILD_DIR)/$(PROJECT).bin 0x8000000 ; fi
.PHONY: clean
clean:
$(RM) $(BUILD_DIR)/*

View file

@ -1,10 +0,0 @@
#ifndef BUILDID_H_
#define BUILDID_H_
extern char __BUILD_DATE;
extern char __BUILD_NUMBER;
#define BUILD_DATE ((uint32_t)&__BUILD_DATE)
#define BUILD_NUMBER ((uint32_t)&__BUILD_NUMBER)
#endif

View file

@ -1,125 +0,0 @@
#include "main.h"
#define SCARCITY 900
volatile uint16_t ADC_Reading;
int main(void)
{
RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
RCC->AHBENR |= RCC_AHBENR_GPIOBEN;
RCC->AHBENR |= RCC_AHBENR_GPIOFEN;
RCC->APB1ENR |= RCC_APB1ENR_TIM14EN;
GPIOA->PUPDR |= (1 << (PIN_DIP_1 << 1)) | (1 << (PIN_DIP_2 << 1)) | (1 << (PIN_DIP_3 << 1)) | (1 << (PIN_DIP_4 << 1));
LED_Init();
ADC_Init();
for(int i = 0; i < LED_COUNT; i++)
{
}
TIM14->PSC = 10000;
TIM14->ARR = 100;
TIM14->CNT = 0;
TIM14->DIER = TIM_DIER_UIE;
NVIC_EnableIRQ(TIM14_IRQn);
TIM14->CR1 = TIM_CR1_ARPE | TIM_CR1_CEN;
for(;;);
return 0;
}
void ADC_Init(void)
{
RCC->APB2ENR |= RCC_APB2ENR_ADCEN;
ADC1->CFGR1 = ADC_CFGR1_CONT | ADC_CFGR1_OVRMOD;
ADC1->SMPR = 1;
ADC1->CHSELR = ADC_CHSELR_CHSEL0;
// // ADC Calibration
// ADC1->CR |= ADC_CR_ADDIS;
// while(ADC1->CR & ADC_CR_ADEN);
// ADC1->CR |= ADC_CR_ADCAL;
// while(ADC1->CR & ADC_CR_ADCAL);
// Enable interrupt
ADC1->IER = ADC_IER_EOCIE;
NVIC_EnableIRQ(ADC1_IRQn);
// Enable the ADC
ADC1->CR |= ADC_CR_ADEN;
while(~ADC1->ISR & ADC_ISR_ADRDY);
// GPIO configuration
GPIOA->MODER |= (3 << (PIN_SENSOR << 1));
GPIOA->PUPDR |= (1 << (PIN_SENSOR << 1));
// And start the first conversion
ADC1->CR |= ADC_CR_ADSTART;
}
bool IsOn(void)
{
// Always on?
if(~GPIOA->IDR & (1 << PIN_DIP_1))
return true;
// No -> check if it's dark
return ADC_Reading > 240;
}
uint32_t GetFactor(void)
{
uint8_t setting = 0;
if(~GPIOA->IDR & (1 << PIN_DIP_4))
setting |= 1;
if(~GPIOA->IDR & (1 << PIN_DIP_3))
setting |= 2;
if(~GPIOA->IDR & (1 << PIN_DIP_2))
setting |= 4;
return 1 << setting;
}
void TIM14_IRQHandler(void)
{
if(TIM14->SR & TIM_SR_UIF)
{
uint32_t threshold = RAND_MAX / LED_COUNT / SCARCITY * GetFactor();
if(!IsOn())
threshold = 0;
for(unsigned int i = 0; i < LED_COUNT; i++)
{
if(rand() < threshold)
LED_Buffer[i].R = 255;
else
LED_Buffer[i].R = 0;
if(rand() < threshold)
LED_Buffer[i].G = 255;
else
LED_Buffer[i].G = 0;
if(rand() < threshold)
LED_Buffer[i].B = 255;
else
LED_Buffer[i].B = 0;
}
LED_Refresh();
TIM14->SR &= ~TIM_SR_UIF;
}
NVIC_ClearPendingIRQ(TIM14_IRQn);
}
void ADC1_IRQHandler(void)
{
ADC_Reading = ADC1->DR;
ADC1->ISR |= ADC_ISR_EOC;
NVIC_ClearPendingIRQ(ADC1_IRQn);
}

View file

@ -1,17 +0,0 @@
#ifndef MAIN_H_
#define MAIN_H_
#include <stdlib.h>
#include <stdbool.h>
#include "stm32f030x6.h"
#include "pinning.h"
#include "buildid.h"
#include "ws2812b_spi.h"
int main(void);
void ADC_Init(void);
void TIM14_IRQHandler(void);
void ADC1_IRQHandler(void);
#endif

View file

@ -1,10 +0,0 @@
#ifndef PINNING_H_
#define PINNING_H_
#define PIN_SENSOR 0 // PA0 - light sensor
#define PIN_DIP_1 4 // PA1 - DIP switch 1
#define PIN_DIP_2 3 // PA2 - DIP switch 2
#define PIN_DIP_3 2 // PA3 - DIP switch 3
#define PIN_DIP_4 1 // PA4 - DIP switch 4
#endif

View file

@ -1,23 +0,0 @@
#include <stdint.h>
#include "stm32f030x6.h"
void SystemInit(void)
{
// Activate HSI and wait for it to be ready
RCC->CR = RCC_CR_HSION;
while(!(RCC->CR & RCC_CR_HSIRDY));
// Set PLL to x10 (-> 40MHz system clock)
RCC->CFGR = RCC_CFGR_PLLMUL_3;
// Activate PLL and wait
RCC->CR |= RCC_CR_PLLON;
while(!(RCC->CR & RCC_CR_PLLRDY));
// Select PLL as clock source
RCC->CFGR |= RCC_CFGR_SW_1;
// Disable all interrupts
RCC->CIR = 0x00000000;
}

View file

@ -1,58 +0,0 @@
#include "ws2812b_spi.h"
volatile LED_Color_t LED_Buffer[LED_COUNT];
volatile uint8_t LED_DMABuffer[LED_DMA_BYTES + 1];
#ifndef LED_INVERT_DO
const static uint8_t LED_PatternTable[4] = {0b100100, 0b100110, 0b110100, 0b110110};
#else
const static uint8_t LED_PatternTable[4] = {0b011011, 0b011001, 0b001011, 0b001001};
#endif
void LED_Init(void)
{
RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
RCC->AHBENR |= RCC_AHBENR_DMAEN;
RCC->APB2ENR |= RCC_APB2ENR_SPI1EN;
// GPIO initialisation
GPIOA->MODER |= (2 << (LED_PIN_DO << 1));
// SPI initialisation
SPI1->CR1 = SPI_CR1_BIDIMODE | SPI_CR1_BIDIOE |\
SPI_CR1_BR_1 | SPI_CR1_BR_0 | SPI_CR1_MSTR;
SPI1->CR2 = SPI_CR2_DS_2 | SPI_CR2_DS_0 | SPI_CR2_FRF;
// DMA configuration (DMA channel 3 is used)
DMA1_Channel3->CCR = DMA_CCR_PL_1 | DMA_CCR_MINC | DMA_CCR_DIR;
DMA1_Channel3->CPAR = (uint32_t)(&SPI1->DR);
SPI1->CR2 |= SPI_CR2_TXDMAEN;
// Enable SPI
SPI1->CR1 |= SPI_CR1_SPE;
}
static inline void LED_StartDMA(void)
{
DMA1_Channel3->CCR &= ~DMA_CCR_EN;
DMA1_Channel3->CNDTR = LED_DMA_BYTES + 1;
DMA1_Channel3->CMAR = (uint32_t)(&LED_DMABuffer);
DMA1_Channel3->CCR |= DMA_CCR_EN;
}
void LED_Refresh(void)
{
for(unsigned int i = 0; i < LED_DMA_BYTES; i++)
{
unsigned int byteindex = i / 4;
uint8_t bitindex = 6 - (i - 4 * byteindex) * 2;
uint8_t bitmask = 3 << bitindex;
uint8_t *byte = (uint8_t*)LED_Buffer + byteindex;
LED_DMABuffer[i + 1] = LED_PatternTable[(*byte & bitmask) >> bitindex];
}
#ifdef LED_INVERT_DO
LED_DMABuffer[0] = 0xff;
#else
LED_DMABuffer[0] = 0;
#endif
LED_StartDMA();
}

View file

@ -1,31 +0,0 @@
#ifndef WS2812B_SPI_H
#define WS2812B_SPI_H
#include "stm32f030x6.h"
#include "pinning.h"
// The WS2812B data line has to be connected to PA7 (SPI MOSI). Unfortunately,
// there is only one SPI interface, so this library cannot be used together with
// an SD card.
#define LED_PIN_DO 7
// The number of LEDs daisy-chained
#define LED_COUNT 120
// Invert the output (if a transistor is used for level-shifting)
#define LED_INVERT_DO
#define LED_DMA_BYTES (LED_COUNT * 3 * 4)
typedef struct
{
uint8_t G, R, B;
} LED_Color_t;
extern volatile LED_Color_t LED_Buffer[LED_COUNT];
void LED_Init(void);
void LED_Refresh(void);
#endif

69
tn24/makefile Normal file
View file

@ -0,0 +1,69 @@
PROJECT = main
LOCAL_SOURCE_DIR = src
BUILD_DIR = build
MCU = attiny24
LFUSE = 0xc4
HFUSE = 0xdf
EFUSE = 0xff
FORMAT = ihex
LOCAL_SOURCES = $(wildcard $(LOCAL_SOURCE_DIR)/*.c)
CFLAGS = -mmcu=$(MCU) -Wall -Wstrict-prototypes -gstabs -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Os -lm
RM = rm -f
CC = avr-gcc
NM = avr-nm
AVRDUDE = avrdude
OBJCOPY = avr-objcopy
OBJDUMP = avr-objdump
SIZE = avr-size
LOCAL_OBJECTS = $(patsubst $(LOCAL_SOURCE_DIR)/%.c, $(BUILD_DIR)/%.o, $(LOCAL_SOURCES))
OBJECTS = $(LOCAL_OBJECTS)
LOCAL_DEPENDS = $(patsubst $(LOCAL_SOURCE_DIR)/%.c, $(BUILD_DIR)/%.d, $(LOCAL_SOURCES))
.DEFAULT_GOAL = all
.DELETE_ON_ERROR:
$(LOCAL_OBJECTS): $(BUILD_DIR)/%.o: $(LOCAL_SOURCE_DIR)/%.c
$(CC) $^ -c -o $@ $(CFLAGS)
$(LOCAL_DEPENDS): $(BUILD_DIR)/%.d: $(LOCAL_SOURCE_DIR)/%.c
@set -e; rm -f $@; $(CC) -MM $(CFLAGS) $< > $@.$$$$; sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; rm -f $@.$$$$
include $(LOCAL_DEPENDS)
$(BUILD_DIR)/$(PROJECT).elf: $(OBJECTS) | $(BUILD_DIR)
$(CC) $(OBJECTS) $(CFLAGS) --output $@
$(BUILD_DIR)/$(PROJECT).hex: $(BUILD_DIR)/$(PROJECT).elf | $(BUILD_DIR)
$(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@
$(BUILD_DIR)/$(PROJECT).eep: $(BUILD_DIR)/$(PROJECT).elf | $(BUILD_DIR)
-$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 -O $(FORMAT) $< $@
$(BUILD_DIR)/$(PROJECT).lss: $(BUILD_DIR)/$(PROJECT).elf | $(BUILD_DIR)
$(OBJDUMP) -h -S $< > $@
$(BUILD_DIR)/$(PROJECT).sym: $(BUILD_DIR)/$(PROJECT).elf | $(BUILD_DIR)
$(NM) -n $< > $@
$(LOCAL_DEPENDS): | $(BUILD_DIR)
$(BUILD_DIR):
if [ ! -d "$(BUILD_DIR)" ]; then mkdir "$(BUILD_DIR)"; fi
.PHONY: all
all: $(BUILD_DIR) $(OBJECTS) $(BUILD_DIR)/$(PROJECT).elf $(BUILD_DIR)/$(PROJECT).hex $(BUILD_DIR)/$(PROJECT).eep $(BUILD_DIR)/$(PROJECT).lss $(BUILD_DIR)/$(PROJECT).sym
$(SIZE) $(BUILD_DIR)/$(PROJECT).elf
.PHONY: program
program: $(BUILD_DIR)/$(PROJECT).hex
avrdude -c usbasp -p $(MCU) -U flash:w:$(BUILD_DIR)/$(PROJECT).hex -U lfuse:w:$(LFUSE):m -U hfuse:w:$(HFUSE):m -U efuse:w:$(EFUSE):m
# avrdude -c usbasp -p $(MCU) -U flash:w:$(BUILD_DIR)/$(PROJECT).hex -U eeprom:w:$(BUILD_DIR)/$(PROJECT).eep -U lfuse:w:$(LFUSE):m -U hfuse:w:$(HFUSE):m -U efuse:w:$(EFUSE):m
.PHONY: clean
clean:
$(RM) $(BUILD_DIR)/*

8
tn24/src/config.h Normal file
View file

@ -0,0 +1,8 @@
#ifndef CONFIG_H_
#define CONFIG_H_
#define F_CPU 128000UL
#define MAX_DELAY 600
#endif

94
tn24/src/main.c Normal file
View file

@ -0,0 +1,94 @@
#include "main.h"
uint16_t RCounter;
uint16_t GCounter;
uint16_t BCounter;
int main(void)
{
DDRA = 0;
DDRB = 0;
PORTA = 0;
PORTB = 0;
D_LEDR |= (1 << P_LEDR);
D_LEDG |= (1 << P_LEDG);
D_LEDB |= (1 << P_LEDB);
O_LEDR |= (1 << P_LEDR);
_delay_ms(50);
O_LEDR &= ~(1 << P_LEDR);
WDTCSR = (1 << WDIE) | (1 << WDP1);
RCounter = 10;
GCounter = 35;
BCounter = 20;
sei();
set_sleep_mode(SLEEP_MODE_PWR_DOWN);
sleep_mode();
while(1)
{
}
return 1;
}
ISR(WATCHDOG_vect)
{
if(O_LEDR & (1 << P_LEDR))
{
O_LEDR &= ~(1 << P_LEDR);
RCounter = rand() % MAX_DELAY;
}
else
{
RCounter--;
if(RCounter == 0)
{
O_LEDR |= (1 << P_LEDR);
}
}
if(O_LEDG & (1 << P_LEDG))
{
O_LEDG &= ~(1 << P_LEDG);
GCounter = rand() % MAX_DELAY;
}
else
{
GCounter--;
if(GCounter == 0)
{
O_LEDG |= (1 << P_LEDG);
}
}
if(O_LEDB & (1 << P_LEDB))
{
O_LEDB &= ~(1 << P_LEDB);
BCounter = rand() % MAX_DELAY;
}
else
{
BCounter--;
if(BCounter == 0)
{
O_LEDB |= (1 << P_LEDB);
}
}
}
uint16_t y = 132457;
uint16_t rand()
{
y ^= y << 13;
y ^= y >> 7;
y ^= y << 5;
return y;
}

20
tn24/src/main.h Normal file
View file

@ -0,0 +1,20 @@
#ifndef MAIN_H_
#define MAIN_H_
#include "config.h"
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <avr/wdt.h>
#include <avr/sleep.h>
#include <stdint.h>
#include <util/delay.h>
#include "pinning.h"
int main(void);
uint16_t rand();
#endif

16
tn24/src/pinning.h Normal file
View file

@ -0,0 +1,16 @@
#ifndef PINNING_H_
#define PINNING_H_
#define D_LEDR DDRA
#define O_LEDR PORTA
#define P_LEDR PA2
#define D_LEDG DDRA
#define O_LEDG PORTA
#define P_LEDG PA3
#define D_LEDB DDRA
#define O_LEDB PORTA
#define P_LEDB PA1
#endif