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

 
 
> Infineon C16x/ST10/XC16x
RZLtd
сообщение Jul 20 2005, 18:22
Сообщение #1


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

Группа: Свой
Сообщений: 82
Регистрация: 1-11-04
Из: Таганрог
Пользователь №: 1 014



Кто пользуется, нужна инфа по работе XC167 в связке c дебугером от Keila
через Jtag?
желательно на русском...


--------------------
ГЛЮК - это когда компьютер играет с нами, а не мы с ним...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
_Vladimir_
сообщение Jan 21 2006, 12:20
Сообщение #2


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

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



По ХС167 на сайте инфинеона есть подробнейшая дока и апп. ноте.
Сомневаюсь что на русском что-то найдете по ХС167.
На английском достаточно много, особенно по С167.
Для старта советую мануал от Hitex (могу выслать или выложить на ftp, если не найдете)
По программированию есть несколько сторонних программаторов, использую
самопальный для С167 (правда не универсальный а строго под свой аппарат) и поломаный FlashHit от hse-electronics (гуглом легко найти) для ХС167.
У него ограничение на демо, но легко ломается.
Для своего программатора руки так и не дошли.
По программировани много материалов и быстро сделать свой программатор труда большого не составляет. Это может окупится при саппорте у заказчика.
У меня заказчики сами перепрошивают upgrade, но не все наверное догадываются об этом smile.gif .
JTAG и отладку никогда для них не использовал (в С167 не было JTAG).
Код большой и специфичный, что оптимально только программная трассировка в лог по RS232.
Не буду дискутировать насчет "ограниченности" архитектуры, просто нравится процессор и его архитектура.
У него конечно есть довольно узкая специализация, и по моему не так авто, как управление силовой электроникой. Это ведь Сименс, а у него силовая электроника существенная часть.
На борту море таймеров, PWM и прочей аппаратной заточки под импульсное управление.
Которая тщательно проработана и задокументирована.
То что есть для этого в ХС167, наверное нет ни у кого другого.
ИМНО его делали как CPU для управления силовой электроникой КРИТИЧНЫХ приложений.
Единственно могу сказать, что очень надежная штука.
И для экстремальных условий наверное мало кто может конкурировать.
Аналоговый модуль - ничего выдающегося, но действительно всегда обеспечивает то что заспецифицировано, а это ведь далеко не у всех производителей.
Вообще - чисто "немецкий продукт".
Используем также готовые модули с этим процессором.
http://www.fsforth.de, рассматривался и другой, более изящный, но сокет миниатюрный.
Дороговато (в конце 2004 были по 180 евро без платы toolkit-a), но очень удобно - миниатюрный, мегабайты FLASH и RAM. Если делать плату, то вряд-ли будет существенно дешевле плюс большие затраты времени. Модуль миниатюрен, хорошо становится на материнскую платку.
Но архитектура модуля fsforth мне не нравится.
Что касается прошивки через RS485, если архитектура старая (С167), то все зависит как Вы можете/хотите переводить процессор в режим загрузки кода (bootstrap).
Если возможно/допустимо руками, то нет проблем - CPU не знает по какому каналу к нему на ASC порт идет. Возможен более красивые варианты, но это аппаратно должно быть обеспечено на плате.
Это хорошо описано в мануале от Hitex.
В ХС167 загрузка существенно усовершенствована, но принцип тот же.
Доки по модулю могу выслать или на ftp, если надо. Неплохой Reference design.
Go to the top of the page
 
+Quote Post
Andrew-S
сообщение Dec 18 2006, 13:52
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 18-01-06
Пользователь №: 13 333



Цитата(_Vladimir_ @ Jan 21 2006, 13:20) *
.
Для своего программатора руки так и не дошли.
По программировани много материалов и быстро сделать свой программатор труда большого не составляет. Это может окупится при саппорте у заказчика.
У меня заказчики сами перепрошивают upgrade, но не все наверное догадываются об этом smile.gif .


Вы не могли поподробнее рассказать о внутрисхемном(ISP) и внутрипрограммном программировании(IAP) контроллеров XC167? Очень актуальна данная тема. Любые ссылки будут полезны.

При внутрипрограммном программировании как я понимаю в процессор первоначально в режиме загрузки (bootstrap loader) загружается программа "заргузчик". При следующем внутреннем старте запускается основная программа, а если ее нет осуществляется переход на собственный "загрузчик". Свой "загрузчик" прошивает основную программу без bootstrap-режима в процессе нормальной работы контроллера. Загрузчик и основная программа обе находятся во внутренней flash. Интересуют варианты реализации и возможно какие-то подводные камни в этой схеме.

При внутрисхемном программировании вопросов в принципе нет. Есть программа Memtool, которая по RS загружает HEX файл. Не очень понятно, bootstrap loader контроллера позволяет сразу принимать прошивку по RS или он только готовит ОЗУ, чтобы пользователь по RS загрузил свою программу загрузки в ОЗУ, которая затем будет порциями принимать прошивку и писать ее во FLASH? То есть интересует что делает Memtool. И можно ли его аппаратно эмулировать через другой контроллер, подключенный к программируемому через линии Tx Rx?
Go to the top of the page
 
+Quote Post
_Vladimir_
сообщение Dec 28 2006, 12:11
Сообщение #4


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

Группа: Свой
Сообщений: 114
Регистрация: 10-05-05
Пользователь №: 4 893



Цитата(Andrew-S @ Dec 18 2006, 14:52) *
Вы не могли поподробнее рассказать о внутрисхемном(ISP) и внутрипрограммном программировании(IAP) контроллеров XC167? Очень актуальна данная тема. Любые ссылки будут полезны.

Сорри, но XC167 у меня весьма поверхностно.

The startup behavior of the XC167 can be configured in three ways:
• apply a fixed default configuration (source = Startup ROM)
• read the configuration from user memory (ROM, Flash)
• read the configuration from configuration pins

Использую только последний вариант (у меня всегда используется внешняя ФЛЭШ и для С167 и для ХС167), процедура входа в bootstrap выглядит так.

1. Для входа в ISP необходимо притянуть пин P0L.4 к земле через резистор до 10ком, расчетное 8,2к.
2. Выполнить РЕСЕТ процессора.
3. Передать на CPU байт 0 (скорость использую 57600, а CPU по этому байту фиксирует скорость).
3. CPU переходит в bootstrap режим о чем и сообщает передачей на UART ID кода процессора по UART.
4. CPU переходит в режим ожидания 32 байт кода на UART, т. е. сидит в цикле пока не примет 32 байта.
Эти 32 байта есть начальный загрузчик. Один из вариантов, которые я использую для С167:

?PR?BSL SECTION CODE; WORD 'NCODE'

main PROC NEAR
org 0FA40h
mov r0, #0FA60h
LOOP:
jnb S0RIR, $
movb [r0], S0RBUF
bclr S0RIR
movb S0TBUF, [r0]
jnb S0TIR, $
bclr S0TIR
cmpi1 R0, #(0FA60h + CODESIZE - 1)
jmpr cc_NE, LOOP
nop

main ENDP
?PR?BSL ENDS

Возможны и модификации, примеров достаточно в аппл. нотах.
грузить надо уже в машинном коде конечно. И главное выровнять по размеру на 32 байта.
Назначение этого кода - загрузить основной загрузчик. с достаточным "интеллектом" и передать ему управление.
CODESIZE - размер его кода.
Ну а основной загрузчик уже примет и запустит код самой программирующей процедуры,
которая будет прошивать ФЛЭШ.
Все это справедливо и для XC167.

Цитата(Andrew-S @ Dec 18 2006, 14:52) *
При внутрипрограммном программировании как я понимаю в процессор первоначально в режиме загрузки (bootstrap loader) загружается программа "заргузчик". При следующем внутреннем старте запускается основная программа,

Не совсем так.
Не "При следующем внутреннем старте",
а Куда и как стартует процессор определится состоянием "Reset Configuration Register" на момент сброса процессора и только.

Цитата(Andrew-S @ Dec 18 2006, 14:52) *
а если ее нет осуществляется переход на собственный "загрузчик". Свой "загрузчик" прошивает основную программу без bootstrap-режима в процессе нормальной работы контроллера. Загрузчик и основная программа обе находятся во внутренней flash. Интересуют варианты реализации и возможно какие-то подводные камни в этой схеме.

Посмотрите AP163703 от Инфинеон.
Поскольку для ХС1657 отдельно ничего внятно не описано (я в свое время не нашел), думаю это справедливо и для него.

Цитата(Andrew-S @ Dec 18 2006, 14:52) *
При внутрисхемном программировании вопросов в принципе нет. Есть программа Memtool, которая по RS загружает HEX файл. Не очень понятно, bootstrap loader контроллера позволяет сразу принимать прошивку по RS или он только готовит ОЗУ, чтобы пользователь по RS загрузил свою программу загрузки в ОЗУ, которая затем будет порциями принимать прошивку и писать ее во FLASH? То есть интересует что делает Memtool. И можно ли его аппаратно эмулировать через другой контроллер, подключенный к программируемому через линии Tx Rx?

Я думаю уже ответил.
Может я и не прав, но мне кажется что не получится выполнить код программирования ФЛЭШ, из самой ФЛЭШ.
Обычно он перемешается в RAM и исполняется оттуда.
У Кейла есть соответствующие аппл. ноте для С.
Но я делал эти процедуры на ассемблере - так легче управлять линкером.
В ХС167 уже есть специальная область PSRAM для кода, не спроста наверное.

То что Вы хотите, я не видел внятного описания.
что такое "8K Start up ROM" так и не опеделил.
Возможно, это может быть custom исполнения.

ИМНО, стоит ли заморачиваться на внутрипрограммном программировании, какая от этого польза в данном процессоре.
Я имею ввиду смену прошивки кода, а не запись во ФЛЭШ констант.
Вариант когда приложение по специальной команде готовит (конфигурирует) процессор к переходу в
бутстрап лодер режим не считаю IAP.

Как пример, простейший вариант (но со своими минусами), то что используется в некоторых программаторах (и у меня), хорошо описан в мануале дл FLASHhit от HSE.
Можно это делать и не от линий RS а програмно, управляя из приложения, через внешние регистры.
Работает очень хорошо, за три года не зафиксировано ни одного сбоя, пользователи сами меняют прошивку прибора, не осозновая что они делают :-).
ИМНО, это наименее трудозатратный механизм - аппаратно или спец. командой из хост программы на РС переводите процессор в бутстрап лодер, грузите из хоста в RAM загрузчики и потом сам код прошивки.
Затем "освобождаете" процессор от бутстрап конфигурации и программный ресет - приложение будет запущено.
И последнее, ресурс внутренней ФЛЭШ у инфинеон весьма мал (гарантированный), поэтому
"много не наперешиваешь", так стоит ли городить.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- RZLtd   Infineon C16x/ST10/XC16x   Jul 20 2005, 18:22
- - Alexandr   Более полного описания С167-ого скорее всего не на...   Jul 20 2005, 20:47
- - RZLtd   и за это спасибо, но такое ощущение что никто не п...   Jul 21 2005, 07:09
|- - san822   Да, документация довольно обьёмная. Жаль про CAN-и...   Aug 15 2005, 12:48
|- - spf   Цитата(RZLtd @ Jul 21 2005, 12:09) и за э...   Jan 21 2006, 10:34
- - msa   У меня похожее ощущение! Есть небольшой опыт, ...   Jan 20 2006, 20:01
|- - spf   Цитата(_Vladimir_ @ Jan 21 2006, 17:20) Н...   Jan 21 2006, 14:33
|- - Legotron   Цитата(_Vladimir_ @ Dec 28 2006, 12:11) И...   Mar 22 2007, 23:04
- - _Vladimir_   To spf. Sorry, не могу сообразить как цитаты встав...   Jan 21 2006, 16:43
- - Lukashik   Ребята, кто работал с МК ST10F269,помогите! ...   Jan 31 2006, 16:54
- - Shandy   Советую зайти на сайт Keil. Там есть appnote на эт...   Dec 22 2006, 09:44
- - copov   2Lukashik Надо не просто проект откомпилировать и ...   Dec 22 2006, 13:57
- - khach   Киевский skylink http://www.rusar.net/ru/file/skyl...   Dec 22 2006, 14:17
- - Andrew-S   Vladimir_, спасибо! прояснили кое-что для меня...   Dec 29 2006, 11:48
|- - _Vladimir_   Цитата(Andrew-S @ Dec 29 2006, 12:48...   Jan 2 2007, 20:27
- - repairDV   Кстати, у этого микроконтроллера мне ещё нравится ...   Jan 4 2007, 12:57
- - shems   Коллеги, а где можно достать Keil IDE для етих мик...   Jan 11 2007, 08:32
|- - Andrew-S   Цитата(shems @ Jan 11 2007, 08:32) Коллег...   Jan 15 2007, 12:18
- - repairDV   А можно ещё и нарушить закон об авторских правах и...   Feb 22 2007, 16:26
- - Shandy   Источник - www.infineon.com. Сейчас я эту информац...   Mar 23 2007, 14:47
- - Legotron   ЦитатаAny sector of the FLASH will be erased and w...   Mar 24 2007, 18:26
- - Legotron   Кто может подсказать, где взять информацию по потр...   Jun 20 2007, 12:09


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

 


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


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