Я пытаюсь использовать этот Rust, но код работает с ошибками:
unsafe {
const PERIPH_BASE: u32 = 0xFE000000;
const GPIO_BASE: u32 = PERIPH_BASE + 0x00200000;
// Turn on pin GPIO 24
ptr::write_volatile(GPIO_BASE as *mut u32, 1 << 24);
}
Я подозреваю, что это связано с использованием неправильного адреса. Единственная информация по теме, которую я нашел, это сообщение на форуме RP. Я не могу найти информацию в таблице данных RP4 и не могу найти руководство для чипсета Broadcom.
Я использую этот код на Raspian на Raspberry Pi SB C. Я пытаюсь обобщить код, чтобы облегчить портирование на true, встроенный позже, поэтому я избегаю библиотек.
Я просмотрел rppal и embedded-hal, но был удивлен, что не нашел решения. Я просмотрел каждый файл в коде gpio
модуля . mem.rs и ioctl.rs выглядят ближе всего, но я не смог их найти.