Налаштування та початок розробки.

Після того як ви створили заготовку за допомогою cargo generate ви тепер можете почати розробляти. Як бачите, вже ініціалізований об'єкт lilka

#![allow(unused)]
fn main() {
let mut lilka = Lilka::new(Configuration::default()).unwrap();
}

Рядок Configuration::default() дає дефолтні значення, а саме:

  • Частота чіпа 160MHz
  • Частота SPI 60MHz
  • Порядок оновлення "Vertical Refresh Order - Top To Bottom" і "Horizontal Refresh Order - Left To Right"
  • Орієнтація екранцу в градусах 270. Міняти тільки тоді якщо знаєте що робите
  • Тірінг дисплея вимкнений

Якщо хочете налаштувати під себе то можете це зробити через new():

#![allow(unused)]
fn main() {
//умовно у вас імпортовано prelude
//use rustilka::prelude::*;

let cfg = Configuration::new(50.MHz, ClockFreq::Clock80MHz, RefreshOrder::default(), Rotation::Deg270, TearingEffect::HorizontalAndVertical)
let lilka = Lilka::new(cfg).unwrap();
}

З самого початку вже ініціалізований embassy Executor, що дасть вам змогу писати async таски і усіляке інше, детальніше про async тут.

Також вам не треба ініціалізувати peripherals та систему, все вже зроблено і знаходитья в об'єкту lilka

#![allow(unused)]
fn main() {
let rng_periph = lilka.peripherals.RNG; //це тільки об'єкт периферії для створення rng, як такий об'єкт він не буде мати функціональності
}

Якщо ж ви хочете використовувати всі можливості плати, то можете активувати радості у всі штани включити в features full_fun:

rustilka = {version = "0.0.1-alpha", features = ["full-fun"]}

Відтепер вам доступна вся периферія на платі, тому розважайтесь!