DSIoffe 5 3 февраля, 2014 Опубликовано 3 февраля, 2014 · Жалоба И вообще, как понять, что им надо? Есть какие-нибудь логические пути, чтобы сделать GPIO 8-, а не 32-разрядным, например? Или только методом научного тыка? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serge_DVD 0 3 февраля, 2014 Опубликовано 3 февраля, 2014 · Жалоба Не совсем понял проблемы. Ваш проект компилится без ошибок (не считая ошибок симулятора, с которым у меня не сложилось...). Использую Libero 11. По поводу разрядностей выше 8-и ситуация следующая. Компоненты могут иметь разрядность более 8-и, но доступ к старшим байтам (или младшим - не разобрался) возможен, но только через нестандартные (для 51-го) регистры XRB, XWB, подробнее можно почитать в хендбуке на GPIO. Есть одно НО - нужно правильно описать SFR'ы в sdcc компиляторе (встроенный в SoftConsole). Кто бы помог в этом вопросе? Был бы очень благодарен, поскольку сейчас именно этим и занимаюсь. Данный компиль дико глючный, конструкция "sfr XRB1 = 0x9D;a=XRB1" не работает. По поводу логических путей - достаточно в свойствах корки указать кол-во пинов 8, и она становится 8-и разрядной) никакого научного тыка. У меня все GPIO 8-и разрядные, все работает. Были попытки повысить разрядность, но благодаря компилятору оказалось проще поставить несколько блоков GPIO в проект. Сложности возникают потом при попытке запрограммировать таймер или WDT - тут уже не получится поставить второй таймер( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DSIoffe 5 26 апреля, 2014 Опубликовано 26 апреля, 2014 · Жалоба Если ещё интересно. Лично моя беда была в неправильной организации памяти. Там нужна не комбинационная схема, а синхронная, притом срабатывающая (изменяющая состояние на выходе данных) по спаду тактового импульса. Теперь всё работает и на модели до синтеза и после разводки, и живьём светодиоды моргают. А обращение к SFR получилось после вот такого объявления: __data at 0x9A unsigned char MyXWB1; и затем в программе: MyXWB1 = 0xFF; При этом вариант __data at XWB1 unsigned char MyXWB1 даёт ошибку error 2: Initializer element is not constant. Некрасиво-то как: не воспользоваться родным файлом reg51.h. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serge_DVD 0 29 сентября, 2014 Опубликовано 29 сентября, 2014 · Жалоба Спасибо, Дмитрий! Работает. Появилась у меня очередная проблемка. Есть компонент с интерфейсом Wishbone slave. Очень хочется прикрутить его к 51-у ядру. "Открутить" от него Wisbone интерфейс не получается из-зи недостатка знаний. Можно-ли использовать GPIO компонент для эмуляции Wishbone maser? Какие могут быть подводные камни? Или може существует мост AHB3-Wishbone? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 30 сентября, 2014 Опубликовано 30 сентября, 2014 · Жалоба Можно-ли использовать GPIO компонент для эмуляции Wishbone maser? Полноценной эмуляции нет. Нужна будет прослойка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DSIoffe 5 30 сентября, 2014 Опубликовано 30 сентября, 2014 · Жалоба Спасибо, Дмитрий! Работает. Появилась у меня очередная проблемка. Есть компонент с интерфейсом Wishbone slave. Очень хочется прикрутить его к 51-у ядру. "Открутить" от него Wisbone интерфейс не получается из-зи недостатка знаний. Можно-ли использовать GPIO компонент для эмуляции Wishbone maser? Какие могут быть подводные камни? Или може существует мост AHB3-Wishbone? Я бы почитал про wishbone (потому что ничего про него не знаю) и сам прикрутил бы его к AHB3 через самопальный интерфейс. Прикладываю черновик моей статьи для "Компонентов и технологий" про самопальные устройства для AHB. Правда, там про ведомое устройство, но работа шины коротко описана, она несложно устроена. Извиняюсь, нету под рукой нормальной вёрстки. Если этот Wishbone асинхронный (или может долго ждать) и для него нужно до 32 сигнальных линий, то можно, наверное, и через GPIO. Но должно получиться медленно и громоздко. part5.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 30 сентября, 2014 Опубликовано 30 сентября, 2014 · Жалоба там вся проблема будет в генерации стробов записи и чтения + обработка подтверждений. минимальная прослойка потребуется всяко. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serge_DVD 0 30 сентября, 2014 Опубликовано 30 сентября, 2014 · Жалоба Вариант прикрутить к AHB3 не стоит как задача и рассматривается как запасной. Нужно совсем неспешно писать(читать) данные с готового модуля. Сейчас больше всего смущает именно синхронность Wishbona с клоком (все тайминги в доках на это указывают). Будет-ли работать... Разбираюсь, заодно учу верилог... Спасибо всем за ответы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться