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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> lpc2378, кто производит на нем что-либо и какие проблемы с ним?
SpiritDance
сообщение Jun 30 2009, 05:52
Сообщение #1


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



В новых изделиях нужно добавить can и ethernet. Так как старые наработки исполнены на SAM7S для пеtремственности можно было бы использовать SAM7X512, но хотелось бы заложится на более преспективный камушек, тем более в SAM7 нет ни нормальных часов, ни достаточного количества уартов, ни полноценного интерфейса к sd-карте, ни, возможно, достаточного быстродействия из флэш.

К тому же в процессе эксплуатации изделий на sam7s выяснилась неприятная особенность - watchdog при какой-либо перезагрузке ресетит только cpu, вся остальная периферия, включая aic, остается нетронутой. В результате есть шанс что полноценной перезагрузки не произойдет и половина периферии подвисает. У меня вис АЦП(подвисали именно измерения- выдавал нулевые семплы), таймеры счетчики, PIT, вход ресет контроллера тоже, как правило, отваливается при первом удобном случае. И ведь watchdog не поставишь внешний в такой ситуации, так как непонятно какая часть кода в данный момент отвалится. Отловить момент и причину зависания так и не смог, оставлял презагружатся по собаке каждые сутки - нулевой эффект все работает. Что я только не делал чтоб от этой фичи избавится - выключал периферию прежде чем включить, сбрасывал сначала все флажки прерываний в AIC, переключаясь в edge-triggered - все равно не уверен что победил. Watchdog использовали для команд перезагрузки при смене настроек и прошивки - пришлось отказаться и ресетить программно с помощью ресет-контроллера, однако на случай сильных ЭМП и прочего душа остается неспокойной.

Плюс к этому говёно работает бод. Я так и не понял при каком напряжении происходит ресет. При плавном снижении напряжении питания и последующем повышении процессор запускался заново в 50% случаев. Поставил внешний супервизор на 3 вольта отрубающий питание процу, буду испытывать как соберут новую плату.

В общем, хотелось бы избежать подобного в будущем, соответственно мучает вопрос, ожидает ли подобное в NXP, то есть есть ли там честный аппаратный сброс и перезагрузка. а также можно ли положится на встроенный супервизор питания.

Кстати с еще большими надеждами расстривается 2388.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 30 2009, 08:58
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SpiritDance @ Jun 30 2009, 09:52) *
К тому же в процессе эксплуатации изделий на sam7s выяснилась неприятная особенность - watchdog при какой-либо перезагрузке ресетит только cpu, вся остальная периферия, включая aic, остается нетронутой.

Ай-яй-яй, а как же мануал почитать? Чтобы сбрасывалось все, нужно не ставить бит WDRPROC в WDT_MR.

Цитата(SpiritDance @ Jun 30 2009, 09:52) *
Плюс к этому говёно работает бод. Я так и не понял при каком напряжении происходит ресет. При плавном снижении напряжении питания и последующем повышении процессор запускался заново в 50% случаев. Поставил внешний супервизор на 3 вольта отрубающий питание процу, буду испытывать как соберут новую плату.

А это похоже на недостаточную скорость нарастания VCORE, должно быть больше 6В/мкс.
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jun 30 2009, 13:14
Сообщение #3


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Цитата(aaarrr @ Jun 30 2009, 12:58) *
Ай-яй-яй, а как же мануал почитать? Чтобы сбрасывалось все, нужно не ставить бит WDRPROC в WDT_MR.

Так я и не ставлю. Собственно говоря я этот бит даже и не рассматриваю при конфигурировании watchdog. нужное слово собираю без него. А мануал читал уже очень давно, когда делал стартап. Даже забыл что там такой идиотский флаг есть. Спасибо что напугали, лишний раз проверил. biggrin.gif


Цитата(aaarrr @ Jun 30 2009, 12:58) *
А это похоже на недостаточную скорость нарастания VCORE, должно быть больше 6В/мкс.

Похоже. Только питается все от линейника lm1117, для питания ядра используется внутренний стабилизатор. На входе у линейника импульсник, соттветсвенно напряжение либо есть - либо нет, не считая конечно емкости на выходе импульсника, может дело в ней. Но без неё, извините, никуда. Проблема в том что я понятия не имею что в этой схеме такого особенного.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 30 2009, 13:35
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SpiritDance @ Jun 30 2009, 17:14) *
Так я и не ставлю.

Тогда, извините, не верю, что сбрасывается только процессор без периферии.

Цитата(SpiritDance @ Jun 30 2009, 17:14) *
Проблема в том что я понятия не имею что в этой схеме такого особенного.

Ничего в ней нет особенного. Но если требования к скорости нарастания питания не удовлетворяются,
то процессор имеет полное право не работать.
Go to the top of the page
 
+Quote Post
shahr
сообщение Jun 30 2009, 13:59
Сообщение #5


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

Группа: Участник
Сообщений: 128
Регистрация: 6-06-06
Из: Москва
Пользователь №: 17 793



Цитата(SpiritDance @ Jun 30 2009, 09:52) *
хотелось бы заложится на более преспективный камушек, ...

... Кстати с еще большими надеждами расстривается 2388.


В этой кассе используется LPC2387.

А в этих весах LPC2368.

И это лишь малая часть smile.gif всех выпускаемых устройств на LPC23xx семействе.


--------------------
wbw
shahr
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jun 30 2009, 14:05
Сообщение #6


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Цитата(aaarrr @ Jun 30 2009, 17:35) *
Тогда, извините, не верю, что сбрасывается только процессор без периферии.


К сожалению это не вопрос веры. Перезагрузку процессор иногда выполняет некорректно. При каких условиях и что именно происходит так и не удалось выяснить. Просто плюнул потому что бился 2 недели башкой об стенку. Искусственно я вызвать стабильный эффект так и не смог. Собственно я никого и не убеждаю, так как не обладаю полными данными. Видимо накладывались какие-то времянки, глюки моего кода. Надеюсь что я от этого избавился.

Цитата(aaarrr @ Jun 30 2009, 17:35) *
Но если требования к скорости нарастания питания не удовлетворяются,
то процессор имеет полное право не работать.


BOD ему на что, чтобы ресет держать или х..? Или чтобы потом тыкаться в даташит на предмет, а нарастет ли за 1/3 микросекунды питание ядра, которое берется от его собственного стабилизатора? Я понимаю когда питание ядра берется извне. К сожалению схему делал изначально не я, поэтому супервизор туда никто влепить не догадался. Привыкли к тому что все и так работает, без парниковых условий.


Цитата(shahr @ Jun 30 2009, 17:59) *
В этой кассе используется LPC2387.

А в этих весах LPC2368.

И это лишь малая часть smile.gif всех выпускаемых устройств на LPC23xx семействе.


И это малая часть, в свою очередь всего лишь малая часть поделок на семах 7 серии smile.gif)

Вопрос не про объем продукции, а про то какой кровью за это платить. smile.gif

К тому же в кассах и весах безотказность работы не настолько критична.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 30 2009, 14:07
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SpiritDance @ Jun 30 2009, 18:00) *
Перезагрузку процессор иногда выполняет некорректно.

Похоже на глюк WDT старых серий, он описан в errat'е.

Цитата(SpiritDance @ Jun 30 2009, 18:00) *
BOD ему на что, чтобы ресет держать или х..?

BOD-то тут каким боком оказался? Он должен вырубить процессор, когда питание опустится до опасного предела. И все, больше он ничего не должен.

Цитата(SpiritDance @ Jun 30 2009, 18:00) *
Или чтобы потом тыкаться в даташит на предмет, а нарастет ли за 1/3 микросекунды питание ядра, которое берется от его собственного стабилизатора?

В даташит нужно тыкаться до того. А внутренний стабилизатор стартует за 150мксек, так что требования по скорости относятся к 3.3В.
Go to the top of the page
 
+Quote Post
shahr
сообщение Jun 30 2009, 14:16
Сообщение #8


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

Группа: Участник
Сообщений: 128
Регистрация: 6-06-06
Из: Москва
Пользователь №: 17 793



Цитата(SpiritDance @ Jun 30 2009, 18:05) *
Вопрос не про объем продукции, а про то какой кровью за это платить. smile.gif

К тому же в кассах и весах безотказность работы не настолько критична.


Вся кровь, пот и слёзы уже пролились в ревизиях "-" и "А". Ревизия "В" вылизана. Есть глюк с CAN, но он описан в еррате. C сентября пойдёт ревизия "D", там вообще все глюки исправили. А безотказность в работе критична в любом встраиваемом приложении smile.gif


--------------------
wbw
shahr
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jun 30 2009, 14:24
Сообщение #9


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Цитата(aaarrr @ Jun 30 2009, 18:07) *
Похоже на глюк WDT старых серий, он описан в errat'е.

Я про него знаю и обхожу как указано. К тому же глюк как раз заключается в том что процессор не запускается, а у меня запускается но начинает глючить. А вот на второй глюк как раз похоже, только условие другое - нестабильное внешнее питание. ревизия кристаллов - В, не помню поправили его в ней или нет.

Если честно ума не приложу как к этому подступиться чтоб выяснить все окончательно.

Цитата(aaarrr @ Jun 30 2009, 18:07) *
BOD-то тут каким боком оказался? Он должен вырубить процессор, когда питание опустится до опасного предела. И все, больше он ничего не должен.
В даташит нужно тыкаться до того. А внутренний стабилизатор стартует за 150мксек, так что требования по скорости относятся к 3.3В.


Я может что-то не понимаю? Я снижаю питание, соответсвенно 3.3 В опускаются ниже плинтуса, а так как я использую АЦП и внутренний стабилизатор, то это очень плохо - BOD должен сработать и остановить cpu чтобы он не натворил дел. Кстати порог его, я так понял изменять нельзя. Далее напряжение снова повышаю, причем повышение могу делать относительно резко - старт должен быть нормальным, но его нет. Чем от такого спасаться?


Цитата(shahr @ Jun 30 2009, 18:16) *
Вся кровь, пот и слёзы уже пролились в ревизиях "-" и "А". Ревизия "В" вылизана. Есть глюк с CAN, но он описан в еррате. C сентября пойдёт ревизия "D", там вообще все глюки исправили.

Такого не бывает!!! smile.gif

Цитата(shahr @ Jun 30 2009, 18:16) *
А безотказность в работе критична в любом встраиваемом приложении smile.gif

Я имел ввиду что кассу то можно "дернуть". А если устройство где-то внутри автомобиля, да еще в паре сотен километров от тебя вот тут уже хуже.

В общем то выбор NXP очевиден, вопрос только сейчас или чуть погодя.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Jun 30 2009, 14:30
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SpiritDance @ Jun 30 2009, 18:24) *
Если честно ума не приложу как к этому подступиться чтоб выяснить все окончательно.

Я тоже. Но почти на 100% уверен, что процессор не виноват.

Цитата(SpiritDance @ Jun 30 2009, 18:24) *
Далее напряжение снова повышаю, причем повышение могу делать относительно резко - старт должен быть нормальным, но его нет. Чем от такого спасаться?

Так можете, или делаете и контролируете? А то "напряжение либо есть - либо нет" не отражает скорость нарастания.
Go to the top of the page
 
+Quote Post
VslavX
сообщение Jun 30 2009, 15:59
Сообщение #11


embarrassed systems engineer
*****

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



Цитата(SpiritDance @ Jun 30 2009, 17:05) *
К сожалению это не вопрос веры. Перезагрузку процессор иногда выполняет некорректно. При каких условиях и что именно происходит так и не удалось выяснить. Просто плюнул потому что бился 2 недели башкой об стенку. Искусственно я вызвать стабильный эффект так и не смог. Собственно я никого и не убеждаю, так как не обладаю полными данными. Видимо накладывались какие-то времянки, глюки моего кода. Надеюсь что я от этого избавился.

Пару лет применяли в изделиях RM3400, SAM7A3, SAM7S, SAM7X, SAM7SE - проблем с WDT никаких не замечено. Даже баг из errat-ы наблюдали всего один раз на старой ревизии SAM7S. Одно время (пока руки до RSTC не дошли) мои бутлоадеры делали рестрт именно по WDT - и все процессоры стартовали "как часики" - иначе это меня быстро задолбало бы при отладке и пришлось бы найти в чем дело. Тоже склоняюсь к мнению что у Вас где-то в коде ошибки есть.
Go to the top of the page
 
+Quote Post
sensor_ua
сообщение Jun 30 2009, 18:29
Сообщение #12


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

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



Мы пару разновидностей контроллеров на LPC2378 выпускаем, но не используем Ethernet и USB (пока). Проблемы находились только в определённых ревизиях с PLL (рекомендации из errata удовлетворили) и с MAM. Со сторожем известен баг от 2138 - нельзя слишком часто его сбрасывать - на 2378 по традиции программную заплатку оставили - в системном Yield() сброс это учитывает - так что не знаю есть он или нет. Ещё помнится было какое-то несоответствие значений делителей PCLK указанным в DS/UM - не помню уж которых, но кажется это было для UART-ов.
Ну и нужно не забывать об неотлечиваемом баге с инициализацией RTC и потреблением (см. Errata)


--------------------
aka Vit
Go to the top of the page
 
+Quote Post
SpiritDance
сообщение Jul 1 2009, 06:09
Сообщение #13


Дух погибшего транзистора
****

Группа: Свой
Сообщений: 877
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 288



Цитата(aaarrr @ Jun 30 2009, 18:30) *
Я тоже. Но почти на 100% уверен, что процессор не виноват.


Цитата(VslavX @ Jun 30 2009, 19:59) *
и все процессоры стартовали "как часики" - иначе это меня быстро задолбало бы при отладке


Меня это и не задалабливало при отладке, так как глюк не проявлялся. Редко такая ситуация происходит, очень редко, в том то и была проблема.

Я для обработки прерываний использовал callback функции и общий обработчик (по историческим причинам), сейчас переделал на обработчики прерываний и увеличил стек. скорее всего да проблема былав стеках, так как такой эффект происходил чаще после вылета в dataabort из прерываний и соответсвенно перезагрузки. Databort я победил, соответсвенно надеюсь что и презагрузка будет корректной. Очень надеюсь что проблема была исключительно в коде.


--------------------
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.
Go to the top of the page
 
+Quote Post
Nemod
сообщение Jul 2 2009, 07:45
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 23-08-06
Из: Москва
Пользователь №: 19 754



Цитата(SpiritDance @ Jun 30 2009, 09:52) *
В новых изделиях нужно добавить can и ethernet. Так как старые наработки исполнены на SAM7S для пеtремственности можно было бы использовать SAM7X512, но хотелось бы заложится на более преспективный камушек, тем более в SAM7 нет ни нормальных часов, ни достаточного количества уартов, ни полноценного интерфейса к sd-карте, ни, возможно, достаточного быстродействия из флэш.
.........................


lpc2378 тоже не особо перспективный т.к. у NXP на подходе почти аналогичные камни на кортексах.
Из минусов по отношению к SAM7X серии:
Чуть меньше суммарная ОЗУ
ОЗУ фрагментирована на сегменты 32кб, Ethernet, USB, 2кб RTC - ну может это кому то покажется плюсом
Нельзя записывать по встроенную Flash память побитно (как на sam7), только по 16 байт вроде
Ethernet только RMII, т.е. нельзя использовать дешевый камень типа Realtek, придется использовать (в большинстве случаев) кварцовый генератор
Интерфейс к SD карте может работать с DMA только из памяти USB (мне лично также реализация FIFO не понравилась)
Нет красивых библиотечек как у Atmel с inline процедурами для инициализации (ну это только для тех кому нравится с ними работать)
IAP функции ИМХО - как бы скрывают от пользователя то что в SAM7 можно написать в RAM функции так как тебе это нужно
Больше пока не припомню
а в остальном одни плюсы:
Дешевле (1-2$), Быстрее, RTC, 2КБ ОЗУ на батарейке, SD интерфейс (хотя для таких процов преимущества в скорости перед SPI нет никакого), RMII - меньше ног
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Jul 2 2009, 09:05
Сообщение #15


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Nemod @ Jul 2 2009, 11:45) *
lpc2378 тоже не особо перспективный т.к. у NXP на подходе почти аналогичные камни на кортексах.
Правда? И с контроллером TFT LCD на кортексе тоже планируют (типа 2478)? И когда обещают их сделать доступными в продаже?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

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

 


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


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