реклама на сайте
подробности

 
 
> Falc 22554HT v2.1, Интерфейс микроконтроллера - запись
_4afc_
сообщение May 5 2006, 06:06
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Глючит запись в 22554. Чтение работает прекрасно.
Значение регистров при чтении совпадает с начальными, описанными в pdf.

Запись не получается.
Есть какие-то подводные камни? Типа регистра разрешающего запись?
Интерфейс Intel, 8bit, мультиплексированный.

Написал тестовую программу:
Записывает в регистр его номер и считывает его значение, и так с первыми 256 регистрами.
Эффект ошеломляющий - при первом проходе считываются изначальные значения,
при втором - или различные одинаковые числа (00,65,04) или 96 во всех регистрах,
в зависимости от того как работает CS - по доке или по уму.

Алгоритм записи - следующий:
WR=1;CS=1;RD=1;ALE=0;
A00..09=Register;
ALE=1;
ALE=0;
D00..D07=Data;
CS=0;
WR=0;
WR=1;
CS=1;

Паузы между командами ни менее 1мс.

Вопрос - где я налажал? Или я так хитро пожёг её?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
shamray
сообщение May 5 2006, 16:00
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 114
Регистрация: 31-08-05
Из: Украина, Одесса
Пользователь №: 8 105



Цитата
Регистры портяться если писать выше адреса 0xa8.


Так вроде 0xa8 это последний регистр в адресном пространстве. Я сам пользую этот чип только более старой версии -v1.3 никаких проблем с записью небыло и нет. Правда я не использовал мультиплексированную шину.
Go to the top of the page
 
+Quote Post
_4afc_
сообщение May 17 2006, 07:15
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(shamray @ May 5 2006, 20:00) *
Цитата
Регистры портяться если писать выше адреса 0xa8.


Так вроде 0xa8 это последний регистр в адресном пространстве. Я сам пользую этот чип только более старой версии -v1.3 никаких проблем с записью небыло и нет. Правда я не использовал мультиплексированную шину.


Просто изначально писалась простенькая тестовая программка записывовшая в регистр его номер и считывающая его значение. Затем она уже была ограничена до последнего регистра.

Скажите, а в вашем случае (v1.3), вы в какие регистры пишете сразу после сброса (или читаете)?
Я предположил, что надо начать с задания частоты E1(2048) и записать в регистры GCM1..GCM8 ($92..$99) нужные значения, но почему-то после их записи, при чтении из них - читаются нули.
Это меня настораживает.
Вы можете считать из них (или из других регистров) записанные вами значения?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 06:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01386 секунд с 7
ELECTRONIX ©2004-2016