Saya telah merancang perangkat game genggam saya sendiri yang berbasis mikrokontroler AVR dan layar OLED kecil.
Saya mulai dengan layar monokrom 128x64 piksel dan dapat dengan nyaman menggambar di lebih dari 60 frame per detik.
Baru-baru ini saya mengolahnya kembali menggunakan RGB OLED, 128x128 piksel tanpa terlalu banyak berpikir hanya untuk mengetahui bahwa saya hanya dapat mencapai sekitar 4 FPS. Setelah beberapa pemikiran dan refactoring yang hati-hati saya bisa mencapai ~ 12fps jika saya tidak terlalu peduli melakukan hal lain!
Pertanyaan saya adalah - bagaimana perangkat seperti GBA (Game Boy Advance) mencapai frame rate hampir 60fps? Saya berpikir untuk memiliki 'prosesor grafis' yang terpisah tetapi menyadari bahwa saya masih akan mengalami hambatan mentransfer data tampilan ke itu.
Saya juga bertanya-tanya tentang menggunakan antarmuka paralel 8-bit vestigial yang cenderung dimiliki oleh sebagian besar layar ini, yang mungkin menambah kecepatan saya 8x, kecuali bahwa MCU modern tidak cenderung memiliki antarmuka paralel perangkat keras seperti yang mereka lakukan untuk serial dan bit- Membenturkan kemungkinan akan memakan banyak kenaikan kecepatan.
Apa pilihan lain yang ada?
Saat ini saya menggunakan ATmega1284P yang terhubung ke pengontrol OLED SSD1306 via USART-SPI. Itu versi monokrom.
Layar warna adalah SSD1351, awalnya tidak terhubung ke perangkat keras SPI. Saya tidak yakin itu akan membuat perbedaan yang cukup , itu terlalu lambat secara keseluruhan
Saya tahu saya bisa mendapatkan MCU yang lebih cepat, tetapi saya ingin tahu opsi apa yang bisa saya jelajahi - prosesor GBA jauh lebih lambat daripada 1284 saya!