Innehållsförteckning:
- Steg 1: SD -gränssnitt
- Steg 2: ESP32 GPIO Pins Mapping
- Steg 3: SD-uppdragskrav
- Steg 4: Olika hårdvaror
- Steg 5: SD Card Slot Breakout Board
- Steg 6: Koppla loss GPIO 2 While Program
- Steg 7: Benchmark
- Steg 8: SD_MMC 4-bitars lägesriktmärke
- Steg 9: SD_MMC 1-bitars lägesriktmärke
- Steg 10: SD SPI -läge vid HSPI -bussbenchmark
- Steg 11: SD SPI -läge vid VSPI -bussbenchmark
- Steg 12: Avrunda
Video: Välj SD -gränssnitt för ESP32: 12 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:40
Dessa instruktioner visar något om att välja ett SD -gränssnitt för ditt ESP32 -projekt.
Steg 1: SD -gränssnitt
I det ursprungliga Arduino SD -biblioteket använder SD -gränssnittet SD SPI -bussöverföringsläge.
SD har faktiskt mer överföringsläge:
- SPI -bussläge: ESP32 har mer än 1 SPI -buss, den kan anpassas vid initialisering
- 1-bitars / 4-bitars SD-bussläge: ESP32 dedikerar ett annat bibliotek som heter SD_MMC för att implementera SD-bussläges-API
- SD UHS-II-läge: ESP32 stöds inte
Ref.:
www.arduino.cc/en/reference/SD
en.wikipedia.org/wiki/SD_card
docs.espressif.com/projects/esp-idf/en/lat…
Steg 2: ESP32 GPIO Pins Mapping
Här är standard ESP32 GPIO -pins -mappning:
SD -kortstift | MicroSD -stift | namn | 4-bitars SD-buss | 1-bitars SD-buss | SPI -buss (HSPI / VSPInative pins) |
1 | 2 | D3 | 13 | - | SS (15/5) |
2 | 3 | CMD | 15 | 15 | MOSI (13 /23) |
3 | - | VSS | GND | GND | GND |
4 | 4 | VDD | 3.3V | 3.3V | 3.3V |
5 | 5 | CLK | 14 | 14 | SCK (14 /18) |
6 | 6 | VSS | GND | GND | GND |
7 | 7 | D0 | 2 | 2 | MISO (12/19) |
8 | 8 | D1 | 4 | - | - |
9 | 1 | D2 | 12 | - | - |
GPIO-stiftskartläggningen av 1-bitars / 4-bitars SD-buss kan inte ändras.
Enkelt samtal SD_MMC börjar () till initialt 4-bitars SD-bussläge:
SD_MMC.begin ();
1-bitars SD-bussläge kan väljas med SD_MMC begin () -metoden, t.ex.
SD_MMC.begin ("/cdcard", true);
SPI -bussen (HSPI eller VSPI) kan väljas medan du skapar SPIClass -instansen, t.ex.
SPIClass spi = SPIClass (HSPI);
Som du kan se 1-bitars / 4-bitars SD-bussstiftdelar med HSPI men kartläggningen av SD-kortpinnar är inte densamma. Så om hårdvaran är ansluten enligt SD -bussstiftkarta kan den inte direkt använda HSPI -inbyggda stift. GPIO -stiften kan åsidosättas vid SPIClass begin () -metoden, t.ex.
SPIClass spi = SPIClass (HSPI);
spi.begin (14 / * SCK * /, 2 / * MISO * /, 15 / * MOSI * /, 13 / * SS * /);
Och även SD -bibliotek kan åsidosätta SS -pin, SPI -buss och bussfrekvens vid SD begin () -metod, t.ex.
SD. Börjar (13 / * SS * /, spi, 80000000);
Steg 3: SD-uppdragskrav
Om du vill använda 4-bitars SD-bussläge, vänligen följ ESP32 SD: s pull-up-krav, särskilt:
- Pull-up-konflikter på GPIO13
- Konflikter mellan Bootstrap och SDIO på DAT2
Ref.:
docs.espressif.com/projects/esp-idf/en/lat…
Steg 4: Olika hårdvaror
ESP32 har massor av dev-kit och dev-kort, några av dem har inbyggd MicroSD-kortplats.
Här är några exempel i min hand:
- TTGO T-Watch, den ansluten till GPIO-stift 2, 13, 14 och 15 enligt 1-bitars SD-bussläge, så den kan använda 1-bitars SD-bussläge och SPI-bussläge
- M5Stack -serien, den ansluten till GPIO -stift 4, 18, 19 och 23 enligt VSPI -inbyggda stift, så den kan använda standardinställningar för SD -bibliotek [SD.begin (4)]
- ODROID-GO, den ansluten till GPIO-stift 18, 19, 22 och 23 enligt VSPI-inbyggda stift, så den kan använda standardinställningar för SD-bibliotek [SD.begin (22)]
- ESP32-CAM, den ansluten till GPIO-stift 2, 4, 12, 13, 14 och 15 enligt 4-bitars SD-bussläge, så den kan använda alla 4-bitars / 1-bitars SD-bussläge och SPI-bussläge
- TTGO T8 dev-kort, det anslutet till GPIO-stift 2, 13, 14 och 15 enligt 1-bitars SD-bussläge, så det kan använda 1-bitars SD-bussläge och SPI-bussläge
www.lilygo.cn/prod_view.aspx?Id=1123
docs.m5stack.com/
wiki.odroid.com/odroid_go/odroid_go
wiki.ai-thinker.com/esp32-cam
github.com/LilyGO/TTGO-T8-ESP32
Steg 5: SD Card Slot Breakout Board
Dev-kort med inbyggt MicroSD-kortplats kan inte ansluta alla stift och de flesta kan inte använda 4-bitars SD-bussläge. En individuell SD -kortplatsutbrottskort ger bättre flexibilitet.
Samtidigt bryter många LCD -utbrottskort också ut en SD -kortplats i full storlek. Men de flesta av dem bryter bara ut SPI -lägestiften. Det är inte tillräckligt att använda som 4-bitars SD-bussläge, men du kan fortfarande använda det som 1-bitars SD-bussläge genom denna anslutningskartläggning:
LCD -> ESP32
SD_CS -> noll SD_MOSI -> 15 SD_MISO -> 2 SD_SCK -> 14
Steg 6: Koppla loss GPIO 2 While Program
4-bitars SD-busslägesanslutningen gör att ESP32 inte gick in i programläge. Kom ihåg att lossa GPIO 2 från SDAT -kortplatsens utbrottskort DAT0 innan du laddar upp ett nytt program.
Steg 7: Benchmark
Jag har skrivit ett enkelt Arduino -program för riktmärket:
github.com/moononournation/ESP32_SD_Benchm…
Här är hårdvaran för riktmärket:
ESP32
NodeMCU ESP32-32S V1.1 (WROOM-32)
SD -kortplats
Ett utbrytningskort för MicroSD -kortplats
SD-kort
Jag har en SanDisk 8 GB MicroSD och en gammal 128 MB MicroSD i handen.
Steg 8: SD_MMC 4-bitars lägesriktmärke
SanDisk 8 GB MicroSD
20: 27: 46.000 -> Testskrivning /test_1k.bin
20: 27: 59.399 -> Skrivfil som används: 13404 ms, 312.914368 KB/s 20: 27: 59.399 -> Testskrivning/test_2k.bin 20: 28: 17.248 -> Skrivfil som används: 17834 ms, 235.185822 KB/s 20: 28: 17.248 -> Testskrivning /test_4k.bin 20: 28: 21.122 -> Skrivfil som används: 3873 ms, 1082.959961 KB /s 20: 28: 21.122 -> Testskrivning /test_8k.bin 20: 28: 23.147 -> Skrivfil som används: 2024 ms, 2072.284668 KB/s 20: 28: 23.147 -> Testskrivning/test_16k.bin 20: 28: 27.237 -> Skrivfil som används: 4097 ms, 1023.750061 KB/s 20: 28: 27.237 -> Test skriva /test_32k.bin 20: 28: 30.088 -> Skrivfil som används: 2842 ms, 1475.828247 KB /s 20: 28: 30.088 -> Testskrivning /test_64k.bin 20: 28: 31.882 -> Skrivfil som används: 1811 ms, 2316.015381 KB /s 20: 28: 31.882 -> Testläsning /test_1k.bin 20: 28: 35.422 -> Läs fil som används: 3520 ms, 1191.563599 KB /s 20: 28: 35.422 -> Testläsning /test_2k.bin 20: 28: 38.813 -> Läs fil som används: 3389 ms, 1237.622925 KB/s 20: 28: 38.813 -> Testläsning/test_4k.bin 20: 28: 42.273 -> Läs fil som används: 3474 ms, 1207.341431 KB/s 20:28: 42.273 -> Testläsning /test_8k.bin 20: 28: 45.752 - > Läst fil som används: 3487 ms, 1202.840210 KB/s 20: 28: 45.752 -> Testläsning/test_16k.bin 20: 28: 48.988 -> Läs fil som används: 3213 ms, 1305.416748 KB/s 20: 28: 48.988 -> Testläsning /test_32k.bin 20: 28: 52.077 -> Läsfil som används: 3093 ms, 1356.063354 KB /s 20: 28: 52.077 -> Testläsning /test_64k.bin 20: 28: 55.141 -> Läs fil som används: 3080 ms, 1361.786987 KB/s
Gamla 128 MB MicroSD
20: 30: 43.309 -> E (274) sdmmc_sd: sdmmc_check_scr: send_scr returnerade 0x109
20:30: 43.309 -> Kortmontering misslyckades
Steg 9: SD_MMC 1-bitars lägesriktmärke
SanDisk 8 GB MicroSD
20: 31: 45.194 -> Testskrivning /test_1k.bin
20: 31: 59.506 -> Skrivfil som används: 14325 ms, 292.796082 KB/s 20: 31: 59.506 -> Testskrivning/test_2k.bin 20: 32: 17.686 -> Skrivfil som används: 18163 ms, 230.925735 KB/s 20: 32: 17.686 -> Testskrivning /test_4k.bin 20: 32: 21.291 -> Skrivfil som används: 3611 ms, 1161.535278 KB /s 20: 32: 21.291 -> Testskrivning /test_8k.bin 20: 32: 23.939 -> Använd skrivfil: 2652 ms, 1581.562622 KB/s 20: 32: 23.939 -> Testskrivning/test_16k.bin 20: 32: 28.397 -> Skrivfil som används: 4448 ms, 942.964050 KB/s 20: 32: 28.397 -> Test skriva /test_32k.bin 20: 32: 31.835 -> Skrivfil som används: 3429 ms, 1223.185791 KB /s 20: 32: 31.835 -> Testskrivning /test_64k.bin 20: 32: 33.882 -> Skrivfil som används: 2058 ms, 2038.048584 KB /s 20: 32: 33.882 -> Testläsning /test_1k.bin 20: 32: 38.031 -> Läs fil som används: 4146 ms, 1011.650757 KB /s 20: 32: 38.031 -> Testläsning /test_2k.bin 20: 32: 42.062 -> Läs fil som används: 4019 ms, 1043.618774 KB/s 20: 32: 42.062 -> Testläsning/test_4k.bin 20: 32: 46.170 -> Läs fil som används: 4106 ms, 1021.506104 KB/s 20:32: 46.170 -> Testläsning /test_8k.bin 20: 32: 50.288 -> Använd fil som används: 4121 ms, 1017.787903 KB/s 20: 32: 50.288 -> Testläs/test_16k.bin 20: 32: 54.112 -> Läs fil som används: 3840 ms, 1092.266724 KB/s 20: 32: 54.112 -> Test läs /test_32k.bin 20: 32: 57.840 -> Läs fil som används: 3739 ms, 1121.771606 KB /s 20: 32: 57.840 -> Testläsning /test_64k.bin 20: 33: 01.568 -> Läs fil som används: 3711 ms, 1130.235474 KB/s
Gamla 128 MB MicroSD
20: 33: 27.366 -> Testskrivning /test_1k.bin
20: 33: 42.386 -> Skrivfil som används: 15020 ms, 279.247925 KB/s 20: 33: 42.386 -> Testskrivning/test_2k.bin 20: 33: 57.927 -> Skrivfil som används: 15515 ms, 270.338654 KB/s 20: 33: 57.927 -> Testskrivning /test_4k.bin 20: 34: 13.108 -> Skrivfil som används: 15195 ms, 276.031860 KB /s 20: 34: 13.108 -> Testskrivning /test_8k.bin 20: 34: 28.162 -> Skrivfil som används: 15048 ms, 278.728333 KB/s 20: 34: 28.162 -> Testskrivning/test_16k.bin 20: 34: 43.287 -> Skrivfil som används: 15142 ms, 276.998016 KB/s 20: 34: 43.287 -> Test skriva /test_32k.bin 20: 34: 58.278 -> Skrivfil som används: 14964 ms, 280.292969 KB /s 20: 34: 58.278 -> Testskrivning /test_64k.bin 20: 35: 13.370 -> Skrivfil som används: 15101 ms, 277.750092 KB /s 20: 35: 13.370 -> Testläsning /test_1k.bin 20: 35: 17.563 -> Läsfil som används: 4197 ms, 999.357666 KB /s 20: 35: 17.563 -> Testläsning /test_2k.bin 20: 35: 21.746 -> Läs fil som används: 4191 ms, 1000.788330 KB/s 20: 35: 21.746 -> Testläsning/test_4k.bin 20: 35: 25.942 -> Läs fil som används: 4181 ms, 1003.182007 KB/s 20:35: 25.942 -> Testläsning /test_8k.bin 20: 35: 30.101 -> Använd fil som används: 4176 ms, 1004.383118 KB/s 20: 35: 30.101 -> Testa läs/test_16k.bin 20: 35: 34.279 -> Läs fil som används: 4174 ms, 1004.864380 KB/s 20: 35: 34.279 -> Test read /test_32k.bin 20: 35: 38.462 -> Read file used: 4173 ms, 1005.105225 KB /s 20: 35: 38.462 -> Test read /test_64k.bin 20: 35: 42.612 -> Read file used: 4173 ms, 1005.105225 KB/s
Steg 10: SD SPI -läge vid HSPI -bussbenchmark
SanDisk 8 GB MicroSD
08: 41: 19.703 -> Testskrivning /test_1k.bin
08: 41: 53.458 -> Skrivfil som används: 33743 ms, 124.301453 KB/s 08: 41: 53.458 -> Testskrivning/test_2k.bin 08: 42: 10.000 -> Skrivfil som används: 16540 ms, 253.585495 KB/s 08: 42: 10.000 -> Testskrivning /test_4k.bin 08: 42: 17.269 -> Skrivfil som används: 7298 ms, 574.719666 KB /s 08: 42: 17.308 -> Testskrivning /test_8k.bin 08: 42: 22.640 -> Använd skrivfil: 5345 ms, 784.715454 KB/s 08: 42: 22.640 -> Testskriv/test_16k.bin 08: 42: 32.285 -> Skriv fil som används: 9662 ms, 434.103088 KB/s 08: 42: 32.285 -> Test skriva /test_32k.bin 08: 42: 36.659 -> Skrivfil som används: 4355 ms, 963.100830 KB /s 08: 42: 36.659 -> Testskrivning /test_64k.bin 08: 42: 39.594 -> Skrivfil som används: 2949 ms, 1422.280151 KB /s 08: 42: 39.594 -> Testläsning /test_1k.bin 08: 42: 44.774 -> Läs fil som används: 5192 ms, 807.839783 KB /s 08: 42: 44.774 -> Testläsning /test_2k.bin 08: 42: 49.969 -> Läs fil som används: 5189 ms, 808.306824 KB/s 08: 42: 49.969 -> Testläsning/test_4k.bin 08: 42: 55.123 -> Läs fil som används: 5161 ms, 812.692139 KB/s 08:42: 55.158 -> Testläsning /test_8k.bin 08: 43: 00.300 -> Läs fil som används: 5176 ms, 810.336914 KB/s 08: 43: 00.334 -> Testläsning/test_16k.bin 08: 43: 05.277 -> Läs fil som används: 4948 ms, 847.676636 KB/s 08: 43: 05.277 -> Testa läst /test_32k.bin 08: 43: 10.028 -> Läs fil som används: 4773 ms, 878.756348 KB /s 08: 43: 10.028 -> Testläsning /test_64k.bin 08: 43: 14.760 -> Läs fil som används: 4731 ms, 886.557617 KB/s
Gamla 128 MB MicroSD
08: 43: 47.777 -> Testskrivning /test_1k.bin
08: 44: 04.148 -> Skrivfil som används: 16390 ms, 255.906281 KB/s 08: 44: 04.183 -> Testskrivning/test_2k.bin 08: 44: 20.648 -> Skrivfil som används: 16494 ms, 254.292709 KB/s 08: 44: 20.648 -> Testskrivning /test_4k.bin 08: 44: 36.674 -> Skrivfil som används: 16001 ms, 262.127625 KB /s 08: 44: 36.674 -> Testskrivning /test_8k.bin 08: 44: 52.849 -> Använd skrivfil: 16175 ms, 259.307831 KB/s 08: 44: 52.849 -> Testskriv/test_16k.bin 08: 45: 09.225 -> Skriv fil som används: 16397 ms, 255.797043 KB/s 08: 45: 09.225 -> Test skriva /test_32k.bin 08: 45: 25.363 -> Skrivfil som används: 16143 ms, 259.821838 KB /s 08: 45: 25.397 -> Testskrivning /test_64k.bin 08: 45: 41.632 -> Skrivfil som används: 16263 ms, 257.904694 KB /s 08: 45: 41.632 -> Testläsning /test_1k.bin 08: 45: 46.488 -> Läs fil som används: 4856 ms, 863.736389 KB /s 08: 45: 46.488 -> Testläsning /test_2k.bin 08: 45: 51.332 -> Läs fil som används: 4840 ms, 866.591736 KB/s 08: 45: 51.332 -> Testläsning/test_4k.bin 08: 45: 56.163 -> Läs fil som används: 4834 ms, 867.667358 KB/s 08:45: 56.163 -> Testläsning /test_8k.bin 08: 46: 00.998 -> R ead fil används: 4827 ms, 868.925598 KB/s 08: 46: 00.998 -> Testläsning/test_16k.bin 08: 46: 05.808 -> Läs fil som används: 4825 ms, 869.285828 KB/s 08: 46: 05.843 -> Test läs /test_32k.bin 08: 46: 10.637 -> Läs fil som används: 4824 ms, 869.466003 KB /s 08: 46: 10.637 -> Testläsning /test_64k.bin 08: 46: 15.478 -> Läs fil som används: 4825 ms, 869.285828 KB/s
Steg 11: SD SPI -läge vid VSPI -bussbenchmark
SanDisk 8 GB MicroSD
08: 54: 17.412 -> Testskrivning /test_1k.bin
08: 54: 48.398 -> Skrivfil som används: 30994 ms, 135.326324 KB/s 08: 54: 48.398 -> Testskrivning/test_2k.bin 08: 55: 06.079 -> Skrivfil som används: 17677 ms, 237.274658 KB/s 08: 55: 06.079 -> Testskrivning /test_4k.bin 08: 55: 13.357 -> Skrivfil som används: 7274 ms, 576.615906 KB /s 08: 55: 13.357 -> Testskrivning /test_8k.bin 08: 55: 18.691 -> Använd skrivfil: 5323 ms, 787.958679 KB/s 08: 55: 18.691 -> Testskriv/test_16k.bin 08: 55: 28.336 -> Skriv fil som används: 9669 ms, 433.788818 KB/s 08: 55: 28.336 -> Test skriva /test_32k.bin 08: 55: 32.646 -> Skrivfil som används: 4309 ms, 973.382202 KB /s 08: 55: 32.646 -> Testskrivning /test_64k.bin 08: 55: 35.551 -> Skrivfil som används: 2915 ms, 1438.869263 KB /s 08: 55: 35.584 -> Testläsning /test_1k.bin 08: 55: 40.745 -> Läs fil som används: 5183 ms, 809.242554 KB /s 08: 55: 40.745 -> Testläsning /test_2k.bin 08: 55: 45.916 -> Läs fil som används: 5182 ms, 809.398682 KB/s 08: 55: 45.949 -> Testläsning/test_4k.bin 08: 55: 51.091 -> Läs fil som används: 5162 ms, 812.534668 KB/s 08:55: 51.091 -> Testläsning /test_8k.bin 08: 55: 56.257 -> Läs fil som används: 5177 ms, 810.180420 KB/s 08: 55: 56.293 -> Testläsning/test_16k.bin 08: 56: 01.244 -> Läs fil som används: 4956 ms, 846.308289 KB/s 08: 56: 01.244 -> Testa läst /test_32k.bin 08: 56: 06.006 -> Läs fil som används: 4764 ms, 880.416443 KB /s 08: 56: 06.006 -> Testläsning /test_64k.bin 08: 56: 10.716 -> Läs fil som används: 4728 ms, 887.120117 KB/s
Gamla 128 MB MicroSD
08: 51: 01.939 -> Testskrivning /test_1k.bin
08: 51: 18.358 -> Skrivfil som används: 16422 ms, 255.407623 KB/s 08: 51: 18.358 -> Testskrivning/test_2k.bin 08: 51: 34.529 -> Skrivfil som används: 16173 ms, 259.339874 KB/s 08: 51: 34.529 -> Testskrivning /test_4k.bin 08: 51: 50.911 -> Skrivfil som används: 16372 ms, 256.187653 KB /s 08: 51: 50.911 -> Testskrivning /test_8k.bin 08: 52: 07.056 -> Använd skrivfil: 16137 ms, 259.918457 KB/s 08: 52: 07.056 -> Testskriv/test_16k.bin 08: 52: 23.383 -> Skriv fil som används: 16351 ms, 256.516663 KB/s 08: 52: 23.383 -> Test skriva /test_32k.bin 08: 52: 39.533 -> Skrivfil som används: 16128 ms, 260.063507 KB /s 08: 52: 39.533 -> Testskrivning /test_64k.bin 08: 52: 55.764 -> Skrivfil som används: 16250 ms, 258.111023 KB /s 08: 52: 55.764 -> Testläsning /test_1k.bin 08: 53: 00.645 -> Läsfil som används: 4855 ms, 863.914307 KB /s 08: 53: 00.645 -> Testläsning /test_2k.bin 08: 53: 05.459 -> Läs fil som används: 4839 ms, 866.770813 KB/s 08: 53: 05.459 -> Testläsning/test_4k.bin 08: 53: 10.306 -> Läs fil som används: 4833 ms, 867.846863 KB/s 08:53: 10.306 -> Testläsning /test_8k.bin 08: 53: 15.127 -> R ead fil används: 4827 ms, 868.925598 KB/s 08: 53: 15.127 -> Testläsning/test_16k.bin 08: 53: 19.963 -> Läs fil som används: 4826 ms, 869.105652 KB/s 08: 53: 19.963 -> Test läs /test_32k.bin 08: 53: 24.758 -> Läs fil som används: 4824 ms, 869.466003 KB /s 08: 53: 24.792 -> Testläsning /test_64k.bin 08: 53: 29.592 -> Läs fil som används: 4824 ms, 869.466003 KB/s
Steg 12: Avrunda
4-bitars SD-bussläge har bästa prestanda, 1-bitars SD-bussläge är cirka 20% långsammare och SPI-läge är cirka 50% långsammare. En av huvudorsakerna är att SD_MMC -protokollskiktet inte implementerar någon form av låsning men SPI gör det. Och även 4-bitars SD-bussläge har dubbla datalinjer så teoretiskt dubblar hastigheten. Men min gamla MicroSD stöder inte 4-bitars SD-bussläge.
Jag kommer att rekommendera 1-bitars SD-bussläge i de flesta fall, eftersom:
- bra framträdande
- bättre SD -kortkompatibilitet
- lösare SD Pull-up krav
- endast 3 GPIO -stift krävs
- mindre kodkonfiguration
- många dev kit, dev board och breakout board kan använda detta läge
Rekommenderad:
Välj en titel och nyckelord för dina instruktioner: 6 steg (med bilder)
Välj en titel och nyckelord för din instruktör: Att välja rätt titel och nyckelord kan vara skillnaden mellan att lära sig att gå till förstasidan för Googles sökresultat eller att krascha och bränna sig i det fruktade landskapet för interneter. Även om sökord och titel inte är de enda
Välj en spelare: 4 steg
Välj-en-spelare: Den här instruktören guidar dig genom hur du fattar en beslutsfattare Arduino. Med ett tryck på en knapp tänds lysdioderna i ett slumpmässigt mönster. Efter några sekunder tänds en enda lysdiod. Detta är Arduinoens slutliga beslut.
Välj sensorsubstitut i Tinkercad -kretsar: 3 steg (med bilder)
Välj sensorsubstitut i Tinkercad -kretsar: Tinkercad Circuits har designat ett begränsat bibliotek med vanliga elektronikkomponenter. Denna kurering gör det enkelt för nybörjare att navigera i komplexiteten i elektronikvärlden utan att bli överväldigad. Nackdelen är att om
Väggfäste för iPad som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: 4 steg (med bilder)
Väggfäste för iPad Som kontrollpanel för hemautomation, med servostyrd magnet för att aktivera skärmen: På senare tid har jag ägnat ganska mycket tid åt att automatisera saker i och runt mitt hus. Jag använder Domoticz som min hemautomationsapplikation, se www.domoticz.com för mer information. I min sökning efter en instrumentpanelapplikation som visar all Domoticz -information tillsammans
Arduino RGB Color Picker - Välj färger från verkliga objekt: 7 steg (med bilder)
Arduino RGB -färgväljare - Välj färger från verkliga objekt: Välj enkelt färger från fysiska objekt med denna Arduino -baserade RGB -färgväljare, så att du kan återskapa färgerna du ser i verkliga objekt på din dator eller mobiltelefon. Tryck bara på en knapp för att skanna objektets färg med en billig TCS347