Gagana fa'apolokalame vave i luga ole Raspberry Pi
Rasipi PI 3 Fa'ata'ita'iga B+
I totonu o lenei aʻoaʻoga o le a tatou vaʻavaʻai i faʻavae o le faʻaaogaina o le Swift i luga ole Raspberry Pi. O le Raspberry Pi o se komipiuta laupapa ta'itasi la'ititi ma taugofie e fa'atapula'aina lona gafatia i ana punaoa fa'akomepiuta. E lauiloa i le au tekinolosi ma tagata fiafia DIY. O se masini sili lea mo i latou e manaʻomia le faʻataʻitaʻiina o se manatu pe faʻataʻitaʻi se manatu faʻapitoa i le faʻatinoga. E mafai ona fa'aoga mo le tele o galuega fa'atino, ma faigofie ona fetaui i so'o se mea - mo se fa'ata'ita'iga, e mafai ona fa'ae'e i luga o se tapuni mata'itū ma fa'aoga e fai ma laulau, pe fa'afeso'ota'i fo'i i se laupapa e fa'atonutonu ai se ta'amilosaga fa'aeletoroni.
Ole gagana fa'apolokalame a Malinka ole Python. E ui o le Python e faigofie tele ona faʻaoga, e leai se ituaiga saogalemu, faʻatasi ai ma le tele o manatuaga. Swift, i le isi itu, o loʻo i ai le puleaina o le ARC ma e toetoe lava 8 taimi sili atu nai lo le Python. Ia, talu ai o le aofaʻi o le RAM ma le faʻaogaina o gafatia o le Raspberry Pi processor e faʻatapulaʻaina, o le faʻaaogaina o se gagana e pei o Swift e mafai ai ona e faʻateleina le gafatia o meafaigaluega o lenei mini-PC.
OS fa'apipi'i
Aʻo leʻi faʻapipiʻi Swift, e tatau ona e filifilia se OS. Ina ia faia lenei mea e te mafaia fa'aaoga se tasi o filifiligaofo mai e tagata atiaʻe vaega lona tolu. Ole filifiliga sili ona taatele ole Raspbian, ole OS aloaia mai le Raspberry Pi. E tele filifiliga e faʻapipiʻi ai Raspbian i luga o se SD card; i la matou tulaga o le a matou faʻaaogaina balenaEtcher. O le mea lenei e fai:
Matou te faaaogaina paleniFetcher mo le lafoina i se pepa faʻapipiʻi.
Laasaga lua: fa'atulaga le SD card ile MS-DOS (FAT)
Laasaga tolu: faʻaaoga balenaEtcher e faʻatumu ai Raspbian i luga o le kata
Matou te fautuaina se aʻoaʻoga malosi e leai se totogi i le aʻoaʻoina o masini mo tagata amata: Matou te tusia le uluai masini aʻoaʻoga faʻataʻitaʻiga i aso e tolu — Setema 2-4. O se a'oa'oga malosi e maua fua e mafai ai ona e malamalama po'o le a le Machine Learning ma a'oa'o pe fa'apefea ona galue ma fa'amatalaga tatala mai le Initaneti. Matou te aʻoaʻoina foʻi e vaʻai le tau fefaʻatauaʻiga o tala e faʻaaoga ai se faʻataʻitaʻiga na faia e le tagata lava ia.
Seti Rasipi Pi
Ua mae'a le afa! O lea ua i ai le matou SD card ma le OS o le a matou faʻaogaina, ae o le faiga faʻaogaina e leʻi faʻapipiʻiina. E lua avanoa mo lenei mea:
Fa'aoga se mata'itu, keyboard ma le isumu e feso'ota'i i le masini.
Fai mea uma mai se isi PC e ala i le SSH poʻo le faʻaogaina o le USB Console cable.
Afai o lou aafiaga muamua lea i le Pi, ou te fautuaina le filifiliga #1. O le taimi lava e tuʻu ai le Raspbian OS SD card i totonu o le Pi, faʻafesoʻotaʻi le HDMI cable, isumu, keyboard, ma le uaea eletise.
E tatau ona ta'a le Pi pe a ki. Fa'afetai! Ole taimi nei e mafai ona e faʻaalu sina taimi e aʻoaʻo ai e uiga i lau desktop ma ona gafatia.
Fa'apipi'i Swift
Ina ia faʻapipiʻi Swift i luga o le Raspberry, e tatau ona e faʻafesoʻotaʻi i luga ole Initaneti (faʻaaoga Ethernet poʻo WiFi, faʻalagolago i le faʻataʻitaʻiga laupapa). O le taimi lava e fesoʻotaʻi ai le initaneti, e mafai ona e amata faʻapipiʻi Swift.
E mafai ona faia i ni auala se lua. Tulaga tasi - fatuina o lau lava fale Swift, o le lona lua o le faʻaaogaina o binaries ua uma ona tuʻufaʻatasia. Ou te fautuaina malosi le auala lona lua, talu ai o le muamua e manaʻomia ni nai aso o sauniuniga. O le auala lona lua na faʻaalia faafetai i le vaega Swift-ARM. E ia te ia se repo e mafai ona e faʻapipiʻi ai Swift e faʻaaoga ai le apt (Afaʻasaʻo Pfaʻatau Ttaʻalo).
O se mea faigaluega laina faʻatonu, pei o le Faleoloa Store mo polokalama ma afifi mo masini Linux. Tatou amata galulue ma apt e ala i le ulufale apt-get i le laina. Le isi, e tatau ona e faʻamaonia se numera o faʻatonuga e faʻamalamalama ai le galuega o loʻo faia. I la matou tulaga, matou te manaʻomia le faʻapipiʻiina o le Swift 5.0.2. O afifi fetaui e mafai ona maua iinei.
Ia, tatou amata. I le taimi nei ua matou iloa o le a matou faʻapipiʻi Swift e faʻaaoga ai le apt, matou te manaʻomia le faʻaopoopoina o le repo i le lisi o faleoloa.
Faʻaopoopo / faʻapipiʻi le faʻatonuga repo lima vave foliga faapenei:
Pau lava lena! Ua faʻapipiʻi nei Swift i luga o la matou Raspberry.
Fausia se Poloketi Su'ega
I le taimi nei Swift REPL e le aoga, ae o isi mea uma e aoga. Mo le suʻega, seʻi o tatou fatuina se pusa Swift e faʻaaoga ai le Swift Package Manager.
Muamua, fai se lisi e taʻua MyFirstProject.
mkdir MyFirstProject
Sosoo ai, sui le lisi galue o loʻo i ai nei i le MyFirstProject fou.
cd MyFirstProject
Fausia se paketi Swift fa'atino fou.
swift package init --type=executable
O nei laina e tolu e fatuina ai se pusa Swift gaogao e taʻua o MyFirstProject. Ina ia fa'agasolo, fa'aofi le fa'atonuga vave.
A maeʻa loa le tuufaatasia, o le a tatou vaʻai i le fuaitau "Talofa, lalolagi!" i luga o le laina poloaiga.
O lea la ua matou fatuina la matou polokalame Pi muamua, sei o tatou suia ni nai mea. I le MyFirstProject directory, se'i o tatou faia suiga ile main.swift faila. O loʻo i ai le code e faʻatinoina pe a matou faʻatautaia le afifi ma le faʻatonuga vave.
Suia le lisi ile Sources/MyFirstProject.
cd Sources/MyFirstProject
Fa'asa'o le faila main.swift e fa'aaoga ai le fa'apipi'i faatonu nano.
nano main.swift
O le taimi lava e tatala ai le faatonu, e mafai ona e suia le code o lau polokalama. Sei o tatou sui mea o loʻo i totonu o le faila main.swift i lenei:
print("Hello, Marc!")
Ioe e mafai ona e fa'aofi lou igoa. Ina ia teu suiga e tatau ona e faia mea nei:
CTRL+X e teu ai le faila.
Faʻamaonia suiga i le oomiina o le "Y".
Faʻamaonia le suiga i le faila main.swift i le oomiina o le Enter.
Ua uma ona fai suiga uma, ua oo i le taimi e toe amata ai le polokalame.
swift run
Fa'afetai! O le taimi lava e tuʻufaʻatasia ai le code, e tatau ona faʻaalia e le laina le laina ua suia.
O lea ua faʻapipiʻi Swift, e iai sau mea e fai. O lea la, e pulea meafaigaluega, mo se faʻataʻitaʻiga, LEDs, servos, relays, e mafai ona e faʻaogaina le faletusi o meafaigaluega faʻapitoa mo Linux / ARM laupapa, taʻua. SwiftyGPIO.