Skip to content
Snippets Groups Projects
Commit 63dd0e2d authored by Yamane's avatar Yamane
Browse files

week08 group

parent 9d245f0e
No related branches found
No related tags found
No related merge requests found
Pipeline #291255 passed
Showing
with 161 additions and 40 deletions
# 8. Embedded programming
This week I worked on defining my final project idea and started to getting used to the documentation process.
## **Instruction**
## Research
Group Assignment
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
- compare the performance and development workflows for other architectures
> "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
Individual Assignment
## Useful links
- [Here](https://fabacademy.org/2022/labs/kannai/students/yukiya-yamane/assignments/week09/)
- [Jekyll](http://jekyll.org)
- [Google](http://google.com)
- [Markdown](https://en.wikipedia.org/wiki/Markdown)
## **What I did this week**
## Code Example
- use and compare the performance of microbit, Arduino Pico and Seeeduino Xiao →in this page
- browse the datasheet of ATtiny3216 I used → [Individual Assignment](https://fabacademy.org/2022/labs/kannai/students/yukiya-yamane/assignments/week09/)
- write some programs to control illuminating LEDs by using my programmer→[Individual Assignment](https://fabacademy.org/2022/labs/kannai/students/yukiya-yamane/assignments/week09/)
Use the three backticks to separate code.
## **Trial 1 : microbit**
```
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
### what is microbit
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
```
is a pocket-sized computer that introduces you to how software and hardware work together. It has an LED light display, buttons, sensors and many input/output features.
## Gallery
![microbit.png](../images/week08/microbit.png)
![](../images/sample-photo.jpg)
### the microbit I used
## Video
- version : v1.3x
- IC: Nordic nR51822 by ARM
- Core variant : Arm Cortex-M0 32 bit processor
- Flash ROM : 256KB
- RAM : 16KB
- Speed : 16MHz
- Debug : SWD, jlink/OB
### From Vimeo
moe specifications is [here](https://tech.microbit.org/hardware/1-3-revision/) and instruction page is [here](https://microbit.org/get-started/first-steps/introduction/)
<iframe src="https://player.vimeo.com/video/10048961" width="640" height="480" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
<p><a href="https://vimeo.com/10048961">Sound Waves</a> from <a href="https://vimeo.com/radarboy">George Gally (Radarboy)</a> on <a href="https://vimeo.com">Vimeo</a>.</p>
- front image
### From Youtube
![microbit_f.jpeg](../images/week08/microbit_f.jpeg)
<iframe width="560" height="315" src="https://www.youtube.com/embed/jjNgJFemlC4" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
- back image
## 3D Models
![microbit_b.jpeg](../images/week08/microbit_b.jpeg)
<div class="sketchfab-embed-wrapper"><iframe width="640" height="480" src="https://sketchfab.com/models/658c8f8a2f3042c3ad7bdedd83f1c915/embed" frameborder="0" allow="autoplay; fullscreen; vr" mozallowfullscreen="true" webkitallowfullscreen="true"></iframe>
### Trial 1-1 : test usage
<p style="font-size: 13px; font-weight: normal; margin: 5px; color: #4A4A4A;">
<a href="https://sketchfab.com/models/658c8f8a2f3042c3ad7bdedd83f1c915?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Dita&#39;s Gown</a>
by <a href="https://sketchfab.com/francisbitontistudio?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Francis Bitonti Studio</a>
on <a href="https://sketchfab.com?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Sketchfab</a>
</p>
</div>
- Access to Microbit [editor](https://makecode.microbit.org/?lang=en#editor)
- edit the function on the visual programming
- when pressing “A” bottun, illuminate the LED of (0,0)
- edit the code in the visual programming
![microbit_1.png](../images/week08/microbit_1.png)
- Click download and drag&drop to “microbit”
- build done
![microbit_1r.jpeg](../images/week08/microbit_1r.jpeg)
### Trial 1-2 : taking advantage of display and accelerometer
- edit the function on the visual programming
- when pressing “A” bottun, illuminate the LED in the shape of “❤️”
- when shaking the board, show striking “Hello!”
- when pressing “B” bottun, clear screen
![microbit_2.png](../images/week08/microbit_2.png)
- done
![microbit.gif](../images/week08/microbit.gif)
![microbit_2r.jpeg](../images/week08/microbit_2r.jpeg)
### Trial 1-3 : combitation to the peripherals of loudspeaker
- edit the function on the visual programming
- when pressing “A” bottun, show icon of “❤️” and play melody
![microbit_3.png](../images/week08/microbit_3.png)
- done
### Trial 1-4: switch between Blocks and programming language(Javascript or python)
![microbit_4.png](../images/week08/microbit_4.png)
### The feeling to use
- Designed so that even elementary school students can understand it, making it very easy and fun,
- It is very easy to use that the connector is initialized by simply plugging it in again.
- By switching programming languages, it is possible to determine which functions are realized in what kind of code and how they are implemented.
## **Trial2 : Arduino Pico**
### what is Arduino Pico
Arduino-Pico is a community port of the RP2040 (Raspberry Pi Pico processor) to the Arduino ecosystem, intended to make it easier and more fun to use and program the Raspberry Pi Pico / RP2040 based boards.
### the Arduino Pico I used
- IC : **RP2040 by ARM**
- Dual ARM Cortex-M0+ @ 133MHz
- 264kB on-chip SRAM in six independent banks
- Support for up to 16MB of off-chip Flash memory via dedicated QSPI bus
- DMA controller
- Fully-connected AHB crossbar
- Interpolator and integer divider peripherals
- On-chip programmable LDO to generate core voltage
- 2 on-chip PLLs to generate USB and core clocks
- 30 GPIO pins, 4 of which can be used as analogue inputs
more: [datasheet](https://www.raspberrypi.com/documentation/microcontrollers/rp2040.html#welcome-to-rp2040)
![pico_pinout.png](../images/week08/pico_pinout.png)
specification is [here](https://www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html)
### Trial 2-1 : test usage by LED blink
- access to [https://make.playpiper.com/](https://make.playpiper.com/)
![pico1.png](../images/week08/pico1.png)
- build the function on the visual programming
![pico2.png](../images/week08/pico2.png)
- when clicking “Start”, the program is written to the board,
- done
movie
![arduino.gif](../images/week08/arduino.gif)
[reference](https://osoyoo.com/2021/07/24/pico-graphic-programming-lesson-1-set-up-pico-make-it-blink/)
### The feeling to use
- It is very easy to write and run the program by pressing the bottun of “start”.
- Less sophisticated UI than Microbit, but more scalable as it is connected to a bullet board.
## **Trial 3 : Seeeduino Xiao**
### What is Seeeduino Xiao
The Seeeduino XIAO is the smallest member of the Seeeduino family. It carries the powerful ATSAMD21G18A-MU which is a low-power microcontrollers.
![seeeduino_xiao.png](../images/week08/seeeduino_xiao.png)
### The Seeeduino Xiao I used
- IC: Atmel SAMD21 by ARM
- Powerful CPU: ARM® Cortex®-M0+ 32bit 48MHz microcontroller(SAMD21G18) with 256KB Flash,32KB SRAM.
- Flexible compatibility: Compatible with Arduino IDE.
- Easy project operation: Breadboard-friendly.
- Small size: As small as a thumb(20x17.5mm) for wearable devices and small projects.
- Multiple development interfaces: 11 digital/analog pins, 10 PWM Pins, 1 DAC output, 1 SWD Bonding pad interface, 1 I2C interface, 1 UART interface, 1 SPI interface.
more: [datasheet](https://wiki.seeedstudio.com/Seeeduino-XIAO/)
![xiao.jpeg](../images/week08/xiao.jpeg)
### Trial 3-1 : Test usage by LED blink
- edit the blink program in arduino
![xiao1.png](../images/week08/xiao1.png)
- verify and upload to the XIao
- done
![xiao.gif](../images/week08/xiao.gif)
## **What I learned in this week**
[Individual Page](https://fabacademy.org/2022/labs/kannai/students/yukiya-yamane/assignments/week09/)
docs/images/week08/arduino.gif

416 KiB

docs/images/week08/microbit.png

370 KiB

docs/images/week08/microbit_1.png

134 KiB

docs/images/week08/microbit_1r.jpeg

109 KiB

docs/images/week08/microbit_2.png

141 KiB

docs/images/week08/microbit_2r.jpeg

144 KiB

docs/images/week08/microbit_3.png

120 KiB

docs/images/week08/microbit_4.png

147 KiB

docs/images/week08/microbit_b.jpeg

114 KiB

docs/images/week08/microbit_f.jpeg

140 KiB

docs/images/week08/pico1.png

137 KiB

docs/images/week08/pico2.png

171 KiB

docs/images/week08/pico_pinout.png

246 KiB

docs/images/week08/seeeduino_xiao.png

74.8 KiB

docs/images/week08/xiao.gif

1.55 MiB

docs/images/week08/xiao.jpeg

127 KiB

docs/images/week08/xiao1.png

209 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment