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

 
 
5 страниц V  « < 2 3 4 5 >  
Reply to this topicStart new topic
> Программирование МК С167 фирмы Infineon, Обмен информацией об успехах и неудачах
leonforte
сообщение Nov 18 2011, 18:25
Сообщение #46


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



Регистры SYSCON, BUSCON и ADDRSEL также висят в RAM и их конфигурация устанавливается програмнно и/или аппаратно?
Go to the top of the page
 
+Quote Post
прыгун
сообщение Nov 19 2011, 06:45
Сообщение #47





Группа: Участник
Сообщений: 12
Регистрация: 13-01-09
Из: Санкт-Петербург
Пользователь №: 43 276



Цитата(leonforte @ Nov 19 2011, 00:25) *
Регистры SYSCON, BUSCON и ADDRSEL также висят в RAM и их конфигурация устанавливается програмнно и/или аппаратно?

Да в RAM. Адреса в даташите на мк. Устанавливаются программно. Изначальная конфигурация в асм-файлах, которые есть у Keil'а.
Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 22 2011, 12:48
Сообщение #48


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



С регистрами я понял, но такая проблема - проц в режиме BOOTSTRAP работает, а флеш не видит. Видит только что это внешняя флеш. По всем адресам на флешке - 0v. После разбора выяснилось что выход RSTOUT активный. Т.е. на выходе RSTOUT всегда 0v. Флеш рабочая(обменял с рабочим блоком). Даташит говорит что нет команды EINIT. Или может быть аппаратная ошибка?

Сообщение отредактировал leonforte - Nov 22 2011, 15:46
Go to the top of the page
 
+Quote Post
wedmeed
сообщение Nov 22 2011, 17:55
Сообщение #49


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

Группа: Свой
Сообщений: 107
Регистрация: 5-04-11
Из: г.Саратов
Пользователь №: 64 137



Про RSTOUT - не помню, как на работу попаду - гляну.
Не совсем понял вот это:
Цитата(leonforte @ Nov 22 2011, 16:48) *
Видит только что это внешняя флеш. По всем адресам на флешке - 0v.

Как он видит что это внешняя флеш? И вообще её ли он видит?
Через регистры BUSCON и ADDRSEL настраиваются адресные окна. Если у Вас внешняя флеш - возможно неправильно собрана карта памяти (например проц в это время обращается ко внутренней). Ну и DPP можно лишний раз перезаписать после настройки системных регистров - где-то встречал глюк с ними (причем обрамить командами типа JMPS на следующую строку).


Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 22 2011, 19:24
Сообщение #50


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



С RSTOUT разобрался, а насчет внешней флеш - глюк программы. Блок до недавнего времени работал нормально и внезапно умер. Конфигурация проца записана в ROM процессора? Работа блока записана во флешке. Конфигурация проца записана отдельно? Извините за такие вопросы - жизнь заставила менять профиль.
Go to the top of the page
 
+Quote Post
прыгун
сообщение Nov 22 2011, 20:24
Сообщение #51





Группа: Участник
Сообщений: 12
Регистрация: 13-01-09
Из: Санкт-Петербург
Пользователь №: 43 276



Цитата(leonforte @ Nov 23 2011, 01:24) *
С RSTOUT разобрался, а насчет внешней флеш - глюк программы. Блок до недавнего времени работал нормально и внезапно умер. Конфигурация проца записана в ROM процессора? Работа блока записана во флешке. Конфигурация проца записана отдельно? Извините за такие вопросы - жизнь заставила менять профиль.

Конфигурация регистров проца является частью программы, которая пишется в ROM. ROM может быть как внешняя, так и внутренняя зависит от конкретного типа процессора (в 167 серии в некоторых процах есть внутренняя ROM). Куда (по каким адресам) какой кусок программы пишется посмотрите по map-файлу. По идее распределение адресов в map-файле должно соответствовать конфигурации регистров buscon, addrsel.
и пусть старшие товарищи меня поправят, если я не правwink.gif .
Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 23 2011, 08:02
Сообщение #52


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



Объясните такой момент - в рабочем блоке стираю флеш и после перезапуска в BOOTSRTRAP виден и проц и пустая флеш. Где в данном варианте сохранена конфигурация системы, и как ее можно посмотреть?
Go to the top of the page
 
+Quote Post
wedmeed
сообщение Nov 23 2011, 16:31
Сообщение #53


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

Группа: Свой
Сообщений: 107
Регистрация: 5-04-11
Из: г.Саратов
Пользователь №: 64 137



Конфигурацию видно в тех же самых регистрах, в которых она и настраивается (область SFR-памяти). Эти регистры всегда располагаются по одним и тем же адресам (0xF000 - 0xF200 и 0xFE00-0xFFFF, проверьте по даташиту - могу ошибаться), и являются частью микроконтроллера, но представляются Вам, как и в случае с GPR, куском RAM. Сюда входят и SYSCON, BUSCON и ADDRSEL, и PECC-регистры, и UART-регистры, и т.д., короче полностью всё управление контроллером. В даташите возле каждого такого регистра написано состояние после RESET. Т.е. всегда (и в зашиваемой программе, и во вторичном загрузчике) должна присутствовать инициализация, которая после каждого сброса будет устанавливать в этих регистрах нужные Вам значения.
Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 23 2011, 17:22
Сообщение #54


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



Как Keil-oм посмотреть состояние регистров через "Monitor166 in ROM"? При соединении пишет что нет файла BOT или MON.

Go to the top of the page
 
+Quote Post
velkarn
сообщение Nov 24 2011, 09:41
Сообщение #55


Местный
***

Группа: Участник
Сообщений: 253
Регистрация: 24-10-05
Пользователь №: 10 030



Цитата(leonforte @ Nov 23 2011, 20:22) *
Как Keil-oм посмотреть состояние регистров через "Monitor166 in ROM"? При соединении пишет что нет файла BOT или MON.

а вы не пробовали воспользоваться MiniMon-ом?
Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 25 2011, 16:03
Сообщение #56


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



С регистрами в общем разобрался. Когда записываю конфигурация SYSCON и BUSCON, которая на аналогичном блоке дает доступ ко всем нужным функциям - нормально,а в другом не видит флеш. Скорее всего где-то что-то отвалилось. Если я не прав или не совсем прав - поправте. Спасибо.
Go to the top of the page
 
+Quote Post
wedmeed
сообщение Nov 29 2011, 04:40
Сообщение #57


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

Группа: Свой
Сообщений: 107
Регистрация: 5-04-11
Из: г.Саратов
Пользователь №: 64 137



Да, при таких симптомах первое, что приходит в голову - проверить целостность блока. Вот, кстати, та настройка DPP, которая у нас во вторичном загрузчике. Флеш, с которой работаем - 1638РР1АУ (отечественная).
CODE
;перед этим участком принял из RS значения для регистров
MOV ADDRSEL1, 0FD8Ch
MOV BUSCON1, 0FD84h
MOV ADDRSEL2, 0FD8Eh
MOV BUSCON2, 0FD86h
MOV ADDRSEL3, 0FD90h
MOV BUSCON3, 0FD88h
MOV ADDRSEL4, 0FD92h
MOV BUSCON4, 0FD8Ah
MOV BUSCON0, 0FD82h

JMPS #00, BC
BC:
MOV SYSCON, 0FD80h
JMPS #00, SC
SC:

MOV DPP0, #0
MOV DPP1, #1
MOV DPP2, #2
MOV DPP3, #3


JMPS #00, EI
EI:
EINIT

Без выделенного фрагмента не работает чтение из флеш, хотя в симуляторе до этого момента в DPP те же значения. Особо с причинами эффекта не разбирались - главное, что заработало, других дел куча.

Сообщение отредактировал wedmeed - Nov 29 2011, 04:41
Go to the top of the page
 
+Quote Post
leonforte
сообщение Nov 29 2011, 11:39
Сообщение #58


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



Флеш читается/пишется (непропай трех выходов на флешке) но программа не запускается. Все импульсы в норме, прога рабочая 100%. Буду копать дальше.


Сообщение отредактировал leonforte - Nov 29 2011, 12:01
Go to the top of the page
 
+Quote Post
leonforte
сообщение Dec 1 2011, 12:16
Сообщение #59


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 7-02-11
Пользователь №: 62 758



Таки не все импульсы есть. Данный блок - ведущий и соединяется с ведомым через SSC. На выводе SCLK нет импульсов и соответственно нет связи с веущим. Как "запустить" канал SSC? Да, и настройки регистров в норме.

Сообщение отредактировал leonforte - Dec 1 2011, 19:04
Go to the top of the page
 
+Quote Post
wedmeed
сообщение Dec 1 2011, 20:36
Сообщение #60


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

Группа: Свой
Сообщений: 107
Регистрация: 5-04-11
Из: г.Саратов
Пользователь №: 64 137



Цитата(leonforte @ Dec 1 2011, 16:16) *
Таки не все импульсы есть. Данный блок - ведущий и соединяется с ведомым через SSC. На выводе SCLK нет импульсов и соответственно нет связи с веущим. Как "запустить" канал SSC? Да, и настройки регистров в норме.


Ведущий SSC выдает импульсы на SCLK (причем автоматически) только когда сам отправляет данные (т.е. при записи хоть чего-нибудь в отправной регистр).
Go to the top of the page
 
+Quote Post

5 страниц V  « < 2 3 4 5 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 13:10
Рейтинг@Mail.ru


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