Рекомендации для микроконтроллеров большой емкости
Для нового проекта, над которым я работаю, я превращаю старый Casio Personal Mini в Speak & Заклинание (возможно, с другими функциями). Тем не менее, речевая библиотека, которую я планирую использовать, называется Talkie, и она занимает довольно много места в программе. Я пытался найти какие-нибудь микроконтроллеры, которые я мог бы использовать, которые имеют большой объем памяти для хранения программ, но я действительно мало знаю о том, что мне следует искать, и о том, как найти те, которые совместимы с загрузчиком Arduino. У кого-нибудь из вас есть хорошие предложения? Мне, вероятно, понадобится один с более чем 256 КБ памяти для программ.
@Starspiker, 👍1
Обсуждение1 ответ
В комментарии Юрай написал:
Микроконтроллеры ATmega аналогичны, поэтому порт на Arduino Mega должен быть возможно
Похоже, это действительно так.
Глядя на исходный код библиотеки, кажется, что он использует таймер 2 для генерации ШИМ-сигнала и таймер 1 для планирование образцов. Эти таймеры практически идентичны между ATmega328P Uno и ATmega2560, используемые в Arduino Mega 2560. Единственная существенная разница между этими платами, т.к. что касается библиотеки, это выходной контакт, который является «OC2B». вывод микроконтроллера:
- на Uno OC2B — это цифровой контакт 3.
- на Mega OC2B — это цифровой контакт 9
Итак, я предполагаю, что библиотека должна работать на Mega только с этим небольшое изменение:
--- a/Talkie/talkie.cpp
+++ b/Talkie/talkie.cpp
@@ -71,7 +71,7 @@ void Talkie::say(uint8_t* addr) {
//
// Включаем речевую систему всякий раз, когда вызывается say().
- pinMode(3,OUTPUT);
+ pinMode(9,OUTPUT);
// Таймер 2 настроен как ШИМ с частотой 62500 Гц.
//
// «Жужжание» ШИМ намного выше диапазона человеческого слуха и
Кроме того, убедитесь, что вы подключаете наушники к контакту 9, а не контакт 3.
Если вы попробуете это, и оно сработает, сообщите об этом либо здесь, либо напрямую автору библиотеки. Затем должно быть легко изменить библиотека для поддержки обеих плат из коробки.
Правка: если вы загружаете Talkie через менеджер библиотек Arduino, вы получите эту версию, которая поддерживает Arduino Мега 2560.
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Лично я всегда рекомендую PIC32, но... это не тот загрузчик, о котором стоит беспокоиться. Это то, что будет работать с библиотекой Talkie, чем бы она ни была. Если он занимается воспроизведением звука, то, вероятно, у него будут очень специфические непереносимые требования. Таким образом, единственными людьми, которые могут что-либо порекомендовать, будут авторы., @Majenko