TinyGo እንደ ማይክሮ መቆጣጠሪያ፣ WASM እና የትእዛዝ መስመር መገልገያ ልማት ባሉ አካባቢዎች ጥቅም ላይ እንዲውል የታሰበ የ Go ቋንቋ ማጠናከሪያ ነው።

TinyGo በ LLVM ፕሮጀክት ስራ ላይ ተመስርተው ፕሮግራሞችን ለማጠናቀር አማራጭ ዘዴ ሲያቀርቡ በ Go ፕሮጀክት ውስጥ የተፃፉ መገልገያዎችን እና ቤተ-መጻሕፍትን ይጠቀማል።

የፕሮጀክት አላማዎች፡-

  1. የሚተገበሩ ፋይሎችን አነስተኛ መጠን ያረጋግጡ።
  2. ከፍተኛውን የማይክሮ መቆጣጠሪያ ብዛት ይደግፋል።
  3. WebAssembly ድጋፍ.
  4. ጥሩ የ CGO ድጋፍ።
  5. የዋናው የ Go ኮድ ድጋፍ ያለ ለውጦች።

በማይክሮ መቆጣጠሪያ ላይ LEDን ለመቀየር የአጠቃቀም ምሳሌ፡-

ጥቅል ዋና

ማስመጣት (
"ማሽን"
"ጊዜ"
)

func ዋና ​​() {
መሪ: = ማሽን.LED
led.Configure(machine.PinConfig{Mode: machine.PinOutput})
ለ {
መሪ. ዝቅተኛ()
ጊዜ። እንቅልፍ (ጊዜ. ሚሊሰከንድ * 1000)

መሪ. ከፍተኛ ()
ጊዜ። እንቅልፍ (ጊዜ. ሚሊሰከንድ * 1000)
}
}

ስሪት 0.6.0 ብዙ ለውጦችን ይዟል። ዋናዎቹ ለ CGo, js.FuncOF (Go 1.12+) እና ሁለት አዳዲስ የልማት ቦርዶች ከተሻሻለው ድጋፍ ጋር ይዛመዳሉ: Adafruit Feather M0 እና Adafruit Trinket M0.

የለውጦቹ ሙሉ ዝርዝር በ ላይ ይገኛል። GitHub ፕሮጀክት ገጽ.

ምንጭ: linux.org.ru

አስተያየት ያክሉ