TinyGo-ն Go լեզվի կոմպիլյատոր է, որը նախատեսված է օգտագործելու այնպիսի ոլորտներում, ինչպիսիք են միկրոկոնտրոլերները, WASM-ը և հրամանի տողի կոմունալ ծրագրերի մշակումը:
TinyGo-ն օգտագործում է կոմունալ ծառայություններ և գրադարաններ, որոնք գրված են Go նախագծում՝ միաժամանակ տրամադրելով այլընտրանքային մեթոդ LLVM նախագծի աշխատանքի հիման վրա ծրագրեր կազմելու համար:
Ծրագրի նպատակները.
- Ապահովեք գործարկվող ֆայլերի նվազագույն չափը:
- Աջակցում է ամենամեծ թվով միկրոկարգավորիչներ:
- WebAssembly աջակցություն:
- Լավ CGo աջակցություն:
- Օրիգինալ Go կոդի աջակցություն առանց փոփոխությունների:
Միկրոկարգավորիչի վրա LED միացնելու համար օգտագործման օրինակ.
փաթեթի հիմնական
ներմուծում (
«մեքենա»
«ժամանակ»
)
func main() {
led := մեքենա.LED
led.Configure (machine.PinConfig{Mode: machine.PinOutput})
համար {
led.Low ()
ժամանակ. Քուն (ժամ. Միլիվայրկյան * 1000)
led.High ()
ժամանակ. Քուն (ժամ. Միլիվայրկյան * 1000)
}
}
0.6.0 տարբերակը պարունակում է բազմաթիվ փոփոխություններ: Հիմնականները վերաբերում են CGo-ի, js.FuncOF-ի (Go 1.12+) բարելավված աջակցությանը, ինչպես նաև զարգացման երկու նոր տախտակներին՝ Adafruit Feather M0 և Adafruit Trinket M0:
Փոփոխությունների ամբողջական ցանկը հասանելի է այստեղ GitHub նախագծի էջ.
Source: linux.org.ru