Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Qemb #01 Lightning Talk
Search
Keiichiro
December 24, 2012
Technology
2
230
Qemb #01 Lightning Talk
九州・熊本ハードウェア/組み込み系勉強会「Qemb」#01で発表したプレゼンです。
Keiichiro
December 24, 2012
Tweet
Share
More Decks by Keiichiro
See All by Keiichiro
Weather Data Scraping
9sq
0
230
Let's try using AkiCart!!
9sq
0
880
Getting Started with ESP8266
9sq
1
250
Devsumi2016 OuchHackLT RESTful Toilet
9sq
0
180
An Attempt to Volcanic Activity Information Delivery using a Push Notification Service.
9sq
0
370
how to use ZY-FGD1442701V1 with mbed
9sq
0
6.5k
Security SAKURA #04 Lightning Talk
9sq
1
3.4k
Other Decks in Technology
See All in Technology
AI時代の開発フローとともに気を付けたいこと
kkamegawa
0
2k
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
440
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
510
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
780
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
1
240
Bakuraku Engineering Team Deck
layerx
PRO
12
7k
Security Diaries of an Open Source IAM
ahus1
0
130
regrowth_tokyo_2025_securityagent
hiashisan
0
160
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
180
品質のための共通認識
kakehashi
PRO
2
190
AI活用によるPRレビュー改善の歩み ― 社内全体に広がる学びと実践
lycorptech_jp
PRO
1
180
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
400
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.4k
RailsConf 2023
tenderlove
30
1.3k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Raft: Consensus for Rubyists
vanstee
141
7.2k
GraphQLとの向き合い方2022年版
quramy
50
14k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
390
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Side Projects
sachag
455
43k
Code Review Best Practice
trishagee
74
19k
Being A Developer After 40
akosma
91
590k
Transcript
3BTQCFSSZ1JͰ(1*0ͳ Kei Yoshimura (@9SQ)
3BTQCFSSZ1JͬͯԿʁ ɾӳࠃϥζϕϦʔύΠࡒஂ͕։ൃͨ͠ARMࡌ ɹΧʔυαΠζίϯϐϡʔλɻ ɾίϯϐϡʔλڭҭΛతͱͯ͠ઃܭɺ҆Ձɻ ɾLinux͕ಈ͘ʂ
None
None
º(1*0 6"35 *$ 41* 7 7 (/% )%.* .CQT
&UIFSOFU 3+ 4%Χʔυεϩοτ .JDSP64# ిݯ༻ ίϯϙδοτग़ྗ NNδϟοΫ 64#ºϙʔτ
SDRAM 256MB / 512MB Broadcom VideoCore IV OpenGL ES 2.0
HD(1080p) H.264/MPEG4σίʔμ ARM11ϑΝϛϦʔ ARM1176JZF-S 700MHz HDMI ίϯϙδοτ 3.5mmεςϨΦϛχ SD Χʔυ SDIO USB HUB USB USB GPIO I2C SPI UART NIC LCD (DSI) Χϝϥ (CSI)
"SEVJOP%6& 3BTQCFSSZ1J "3.ࡌϘʔυͷҧ͍ "3. $PSUFY.
σόΠευϥΠό ΦϖϨʔςΟϯάγεςϜ ϥΠϒϥϦ $16ϖϦϑΣϥϧ $16ϖϦϑΣϥϧ ੍ޚιϑτ ੍ޚιϑτ ੍ޚର ੍ޚର
None
"SEVJOP%6& 3BTQCFSSZ1J ɾෳࡶͳॲཧ͕Մೳ ɹ→طଘΞϓϦέʔγϣϯͷ׆༻ ɾ༧Ί༻ҙ͞ΕͨΠϯλʔϑΣʔε ɹ(USBϗετɺHDMIɺLAN) ɾ੍ޚ ɹ→ਖ਼֬ͳλΠϛϯάɾࡉ੍͔͍ޚ ɾ๛ͳσδλϧೖग़ྗ ɹ(σδλϧI/O
52ϐϯɺΞφϩάIN 12ϐϯ)
ྫ͑ εϚʔτϑΥϯ ϒϥβ 8J'Jϧʔλ 3BTQCFSSZ1J ༗ઢ-"/ ແઢ-"/ (1*0 64#
ϐϯΞαΠϯ 2 5V 4 5V 6 GND 8 GPIO14 UART0_TXD
10 GPIO15 UART0_RXD 12 GPIO18 14 GND 16 GPIO23 18 GPIO24 20 GND 22 GPIO25 24 GPIO8 SPI0_CE0_N 26 GPIO7 SPI0_CE1_N 1 3V3 3 GPIO0 I2C0_SDA 5 GPIO1 I2C0_SCL 7 GPIO4 GPCLK0 9 GND 11 GPIO17 13 GPIO21 15 GPIO22 17 3V3 19 GPIO10 SPI0_MOSI 21 GPIO9 SPI0_MISO 23 GPIO11 SPI0_SCLK 25 GND
FDIPlzTZTDMBTTHQJPFYQPSU FDIPlPVUzTZTDMBTTHQJPHQJPEJSFDUJPO FDIPlzTZTDMBTTHQJPHQJPWBMVF FDIPlzTZTDMBTTHQJPHQJPWBMVF FDIPlzTZTDMBTTHQJPVOFYQPSU (1*0 (/% LЊ γΣϧͰ੍ޚ
FDIPlzTZTDMBTTHQJPFYQPSU FDIPlPVUzTZTDMBTTHQJPHQJPEJSFDUJPO FDIPlzTZTDMBTTHQJPHQJPWBMVF FDIPlzTZTDMBTTHQJPHQJPWBMVF FDIPlzTZTDMBTTHQJPVOFYQPSU ϙʔτ༻։࢝ ϙʔτ༻ऴྃ ೖग़ྗઃఆ σʔλͷಡΈॻ͖
FDIPlJOzTZTDMBTTHQJPHQJPEJSFDUJPO DBUTZTDMBTTHQJPHQJPWBMVF ೖྗઃఆ ɹ↓ɹ ͷಡΈग़͠
εςοϐϯάϞʔλ 41( Λճ͢
#include <stdio.h> int main() { int i;
system("echo \"7\" > /sys/class/gpio/export"); system("echo \"8\" > /sys/class/gpio/export"); system("echo \"9\" > /sys/class/gpio/export"); system("echo \"10\" > /sys/class/gpio/export"); system("echo \"out\" > /sys/class/gpio/gpio7/direction"); system("echo \"out\" > /sys/class/gpio/gpio8/direction"); system("echo \"out\" > /sys/class/gpio/gpio9/direction"); system("echo \"out\" > /sys/class/gpio/gpio10/direction"); for (i=0; i<360; i++) { system("echo \"1\" > /sys/class/gpio/gpio7/value"); system("echo \"1\" > /sys/class/gpio/gpio8/value"); system("echo \"0\" > /sys/class/gpio/gpio7/value"); system("echo \"1\" > /sys/class/gpio/gpio8/value"); system("echo \"1\" > /sys/class/gpio/gpio9/value"); system("echo \"0\" > /sys/class/gpio/gpio8/value"); system("echo \"1\" > /sys/class/gpio/gpio9/value"); system("echo \"1\" > /sys/class/gpio/gpio10/value"); system("echo \"0\" > /sys/class/gpio/gpio9/value"); system("echo \"1\" > /sys/class/gpio/gpio10/value"); system("echo \"1\" > /sys/class/gpio/gpio7/value"); system("echo \"0\" > /sys/class/gpio/gpio10/value"); } system("echo \"7\" > /sys/class/gpio/unexport"); system("echo \"8\" > /sys/class/gpio/unexport"); system("echo \"9\" > /sys/class/gpio/unexport"); system("echo \"10\" > /sys/class/gpio/unexport"); }
ඇৗʹࡶʢεϚʔτͰͳ͍ʣ
1ZUIPOͰ੍ޚ 31J(1*0 IUUQQZQJQZUIPOPSHQZQJ31J(1*0 JNQPSU31J(1*0BT(1*0 JNQPSUTZT JNQPSUUJNF (1*0TFUNPEF (1*0#$. (1*0TFUVQ
(1*0065 (1*0PVUQVU (1*0)*() UJNFTMFFQ (1*0PVUQVU (1*0-08 (1*0DMFBOVQ (1*0 (/% LЊ
(1*0TFUVQ (1*0*/ WBM(1*0JOQVU ೖྗઃఆ ɹ↓ɹ ͷಡΈग़͠
import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(7,GPIO.OUT) GPIO.setup(8,GPIO.OUT) GPIO.setup(9,GPIO.OUT) GPIO.setup(10,GPIO.OUT)
for i in range(0,360): GPIO.output(7,GPIO.HIGH) GPIO.output(8,GPIO.HIGH) GPIO.output(7,GPIO.LOW) GPIO.output(8,GPIO.HIGH) GPIO.output(9,GPIO.HIGH) GPIO.output(8,GPIO.LOW) GPIO.output(9,GPIO.HIGH) GPIO.output(10,GPIO.HIGH) GPIO.output(9,GPIO.LOW) GPIO.output(10,GPIO.HIGH) GPIO.output(7,GPIO.HIGH) GPIO.output(10,GPIO.LOW) GPIO.cleanup() #include <stdio.h> int main() { int i; system("echo \"7\" > /sys/class/gpio/export"); system("echo \"8\" > /sys/class/gpio/export"); system("echo \"9\" > /sys/class/gpio/export"); system("echo \"10\" > /sys/class/gpio/export"); system("echo \"out\" > /sys/class/gpio/gpio7/direction"); system("echo \"out\" > /sys/class/gpio/gpio8/direction"); system("echo \"out\" > /sys/class/gpio/gpio9/direction"); system("echo \"out\" > /sys/class/gpio/gpio10/direction"); for (i=0; i<360; i++) { system("echo \"1\" > /sys/class/gpio/gpio7/value"); system("echo \"1\" > /sys/class/gpio/gpio8/value"); system("echo \"0\" > /sys/class/gpio/gpio7/value"); system("echo \"1\" > /sys/class/gpio/gpio8/value"); system("echo \"1\" > /sys/class/gpio/gpio9/value"); system("echo \"0\" > /sys/class/gpio/gpio8/value"); system("echo \"1\" > /sys/class/gpio/gpio9/value"); system("echo \"1\" > /sys/class/gpio/gpio10/value"); system("echo \"0\" > /sys/class/gpio/gpio9/value"); system("echo \"1\" > /sys/class/gpio/gpio10/value"); system("echo \"1\" > /sys/class/gpio/gpio7/value"); system("echo \"0\" > /sys/class/gpio/gpio10/value"); } system("echo \"7\" > /sys/class/gpio/unexport"); system("echo \"8\" > /sys/class/gpio/unexport"); system("echo \"9\" > /sys/class/gpio/unexport"); system("echo \"10\" > /sys/class/gpio/unexport"); }
εοΩϦ ͔͍͠ (ຊ͏গ͠εϚʔτʹॻ͚·͢)
γΣϧ σόΠευϥΠό TIME/DIV 4.00ms TIME/DIV 2.00μs
ͭͮ͘...ʁ ͢Έ·ͤΜɺ৸མͪ͠·ͨ͠
ʢ৭ʑҙຯͰʣϨϕϧʢͳʣϒϩάͬͯ·͢ɻ IUUQFMFDMPHRVJUTRDPN