TinyGo යනු ක්ෂුද්‍ර පාලක, WASM සහ විධාන රේඛා උපයෝගිතා සංවර්ධනය වැනි ක්ෂේත්‍රවල භාවිතය සඳහා අදහස් කරන Go භාෂා සම්පාදකයකි.

TinyGo Go ව්‍යාපෘතියේ ලියා ඇති උපයෝගිතා සහ පුස්තකාල භාවිතා කරන අතර LLVM ව්‍යාපෘතියේ වැඩ මත පදනම්ව වැඩසටහන් සම්පාදනය කිරීම සඳහා විකල්ප ක්‍රමයක් සපයයි.

ව්යාපෘති අරමුණු:

  1. ක්‍රියාත්මක කළ හැකි ගොනු වල අවම ප්‍රමාණය සහතික කරන්න.
  2. විශාලතම ක්ෂුද්‍ර පාලක සංඛ්‍යාවට සහය දක්වයි.
  3. WebAssembly සහාය.
  4. හොඳ CGo සහාය.
  5. වෙනස්කම් නොමැතිව මුල් Go කේතය සඳහා සහාය.

ක්ෂුද්‍ර පාලකයක LED මාරු කිරීම සඳහා උදාහරණ භාවිතය:

ප්රධාන පැකේජය

ආනයන (
"යන්ත්‍රය"
"කාලය"
)

func main() {
led := machine.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

අදහස් එක් කරන්න