- posted
19 years ago
_Loader_
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
Hi Dimmy,
Tue Sep 16 2003 13:06, Dimmy Timchenko wrote to Aleksey Polushkin:
EK>> пик должен выполнять программу записанную в м\сЭСПЗУ, не зависимо EK>> от содержания последней.......
AP>> 24C512 напpимеp, там последовательный интеpфейс и емкость 64 AP>> килобайта.
AP>> Сделать тебе пpидется довольно большую pаботу: Для PIC'а нужен AP>> софт, выполняющий обмен с ПЗУ и интеpпpетатоp некого объектного AP>> кода более высокого уpовня.
DT> Hе проще ли поставить МК с возможностью подключения внешней памяти DT> программ (типа 51-го) и шить туда нормальный код?
Тогда уж лучше ставить мк с флэшем IAP (In-Application Programming). Из 51-х таких сейчас много, например, AT51CRx2, и др., да и в других семействах они есть. Флэшовые PIC18 тоже IAP. У интерпретатора есть свои прелести, в частности - робастность. Можно сделать так, что его невозможно будет полностью "завесить". Какую бы дрянь не записать в качестве интерпретируемой программы, всегда можно будет ее стереть и переписать заново не передергивая питания. С "нормальным кодом" этого добиться гораздо труднее, если вообще возможно. Еще одно достоинство: почти из любого проца можно сделать приличную стековую машину. Что позволит создавать очень эффективный и компактный код. Короче, Форт (или почти Форт) поставить :-)
Пока, Алексей
- posted
19 years ago
- posted
19 years ago
Hi Yuriy,
Tue Sep 16 2003 16:44, Yuriy K wrote to Alex Kouznetsov:
AK>> У интерпретатора есть свои прелести, в частности - робастность. Можно AK>> сделать так, что его невозможно будет полностью "завесить". Какую бы AK>> дрянь не записать в качестве интерпретируемой программы, всегда можно AK>> будет ее стереть и переписать заново не передергивая питания. С AK>> "нормальным кодом" этого добиться гораздо труднее, если вообще возможно.
YK> Тривиальнейшая задача - просто надо взять процессор с отдельным блоком YK> бутлоадера с аппаратной защитой оного. Hапример: ATmega8/16/32/64/128. YK> Тогда можно писать appplication на _любом_ языке программирования.
Пример. При помощи этого защищенного бутлодера записываю во прикладную часть флеши такую гнусь:
-- вырубаю все прерывания
-- намертво зацикливаюсь, сбрасывая вочдог в цикле После этого передаю управление своему "приложению". Кранты, я завесил проц, и без передергивания питания его привести в чувство нельзя.
Кстати, _язык_ программирования к этому не имеет ни малейшего отношения. Например, имея run-time Форта (т.е. его интерпретирующую часть, или Форт-машину), в принципе ты можешь писать приложения на Форте, на Жабе, на С, на Паскале, и пр. Собственно, сама Жаба именно так и устроена: ты пишешь прикладуху на языке типа С, а исполняется она навороченной стековой машиной (т.е. по сути Форт-машиной).
Пока, Алексей
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
Hi Alexey,
Thu Sep 18 2003 16:55, Alexey Musin wrote to Alex Kouznetsov:
AK>> Еще пример. Я делаю дистанционный апгрэйд софта в одном из юнитов в AK>> системе, которая управляет освещением в большом здании (building AK>> automation system). После апгрэйда юнит (например, настенный выключатель AK>> в одной из комнат) виснет. Питание всех юнитов резервированное (для AK>> пущей надежности) и распределяется по локальной сети вместе с сигналом.
AM> каковы твои действия пpи наличии интеpпpетатоpа?
Тривиальные. Я дистанционно посылаю новый апгрэйд.
AM> где пpо такyю технологию pазpаботки софта можно почитать пpименительно к AM> embedded (тематика "автоматизация зданий" меня вполне yстpоит :)?
Ява основана на этих же принципах, хотя упор сделан немного на другое. Можешь считать, что ты посылаешь аплет :-) Плохо то, что в Жабе много засирания мозгов, моды, политики и пр. требухи. В частности, ООП для ембеддед в общем-то не очень нужен (пока).
Пока, Алексей
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
Hi Power User,
Thu Sep 25 2003 04:02, Power User wrote to Yuriy K:
PU> [...]
AK>>> þÉÔÁÊ ×ÎÉÍÁÔÅÌØÎÅÅ, É ÎÅ ÇÏ×ÏÒÉ ÞÔÏ ÜÔÏ "ÔÒÉ×ÉÁÌØÎÅÊÛÁÑ ÚÁÄÁÞÁ" ;-) YK>> á, ÄÁ, ÄÅÊÓÔ×ÉÔÅÌØÎÏ, ÐÉÔÁÎÉÅ ÐÒÉÄÅÔÓÑ ÐÅÒÅÄÅÒÇÉ×ÁÔØ, ÕÂÅÄÉÌ.
PU> üÔÏ ÎÅ ÔÁË.ðÒÉ ×ÈÏÄÅ × ÂÕÔÌÏÁÄÅÒ ÐÏ "RESET+ÐÒÏ×ÅÒËÁ ÕÓÌÏ×ÉÑ ×ÈÏÄÁ" PU> ÐÒÉÄÅÔÓÑ ÍÁËÓÉÍÕÍ ÄÅÒÎÕÔØ ÒÅÓÅÔÏÍ(Á ÕÓÌÏ×ÉÅ ×ÈÏÄÁ ÓËÁÖÅÍ,ÎÅËÉÊ PU> ÓÉÇÎÁÌ ÐÏ ÉÎÔÅÒÆÅÓÕ ÐÏ ËÏÔÏÒÏÍÕ ÄÅÌÁÅÍ ÁÐÄÅÊÔ).üÔÏ ÐÒÏÝÅ ÞÅÍ PU> ÐÉÔÁÎÉÅÍ(ÅÓÌÉ Õ ËÁÍÎÑ ÅÓÔØ NMI ÔÏ ÍÏÖÎÏ ÁÌØÔÅÒÎÁÔÉ×ÎÏ ÀÚÁÔØ ÅÇÏ PU> ×ÍÅÓÔÏ reset'Á).
ñ ÎÅ ÄÅÌÁÀ ÒÁÚÎÉÃÙ ÍÅÖÄÕ ÒÅÓÅÔÏÍ, NMI É ÓÂÒÏÓÏÍ ÐÏ ÐÉÔÁÎÉÀ. ïÂÝÅÅ Õ ÎÉÈ ÔÏ, ÞÔÏ ÐÒÏà ÓÂÒÁÓÙ×ÁÅÔÓÑ ×ÎÅÛÎÉÍ ×ÏÚÄÅÊÓÔ×ÉÅÍ. ÷ ËÏÎÔÅËÓÔÅ ÒÁÚÎÉÃÁ ÍÅÖÄÕ ÎÉÍÉ ÓÌÉÛËÏÍ ÎÅÚÎÁÞÉÔÅÌØÎÁ, ÞÔÏÂÙ ÔÒÁÔÉÔØ ×ÒÅÍÑ ÎÁ ÏÐÉÓÁÎÉÅ ÄÅÔÁÌÅÊ. [...] PU> åÓÌÉ ÖÅ ÚÁÝÉÝÁÔØÓÑ ÏÔ ÉÍÅÎÎÏ ÔÁËÏÊ (ÄÏ×ÏÌØÎÏ ÍÁÌÏ×ÅÒÏÑÔÎÏÊ, PU> Ô.Ë.ÚÁÞÅÍ ÍÙ ÂÕÄÅÍ ÓÁÍÉ ÓÅÂÅ ÇÁÄÉÔØ?) ÂÑËÉ,Á ÒÅÓÅÔÏÍ ÒÕÌÉÔØ PU> ÞÅÒÅÚ ÉÎÔÅÒÆÅÊÓ ÞÅÒÅÚ ËÏÔÏÒÙÊ ÉÄÅÔ ÁÐÄÅÊÔ ÎÅ ÓÕÄØÂÁ,ÔÏ ÔÕÔ PU> ×ÎÅÛÎÉÊ WDT ÓÐÁÓÁÅÔ ÐÏÌÏÖÅÎÉÅ.÷ÁÒÉÁÎÔÏ× ÐÒÏÔÉ× üôïê ÂÑËÉ × PU> ÔÁËÉÈ ÎÅÕÄÏÂÎÙÈ ÕÓÌÏ×ÉÑÈ ×ÉÖÕ ÍÉÎÉÍÕÍ Ä×Á:PU> (ÔÒÅÂÕÀÔ ×ÎÅÛÎÉÊ WDT,ÎÏ ÒÁÚ ÕÖ ÔÕÔ ÔÁËÁÑ ÐÁÒÁÎÏÊÑ ÔÏ ÏÎ,×ÅÒÏÑÔÎÏ, PU> × ÐÁÒÅ Ó ÓÕÐÅÒ×ÉÚÏÒÏÍ ÐÉÔÁÎÉÑ Ñ×ÎÏ ÌÉÛÎÉÍ ÎÅ ÏËÁÖÅÔÓÑ...).
PU> - ÷ÎÅÛÎÉÊ ×ÁÞÄÏÇ ÍÏÖÅÔ ÓÂÒÁÓÙ×ÁÔØÓÑ ÐÏ ÁËÔÉ×ÎÏÓÔÉ ÉÎÔÅÒÆÅÊÓÁ PU> ÞÅÒÅÚ ËÏÔÏÒÙÊ ÉÄÅÔ ÁÐÄÅÊÔ É ÅÓÓÎÏ ÐÅÒÅËÁÞËÁ ÄÁÎÎÙÈ(ÈÏÒÏÛÏ ÅÓÌÉ PU> Tx É Rx ÏÔÄÅÌØÎÙÅ,ÀÚÁÔØ ÄÌÑ ÐÒÏ×ÅÒËÉ ÁËÔÉ×ÎÏÓÔÉ ÐÏÔÏË Ë ÄÅ×ÁÊÓÕ PU> ÏÔ ÈÏÓÔÁ, Ô.Ë.ÞÔÏ ÂÕÄÅÔ ÄÅÌÁÔØ ÚÁ×ÉÓÛÉÊ ÄÅ×ÁÊÓ - È.Ú., ÍÏÖÎÏ PU> ×ÅÄØ ÐÒÉ ÕÓÉÌÅÎÉÉ ÐÁÒÁÎÏÊÉ ÄÏÐÕÓÔÉÔØ ÞÔÏ ÏÎ ÅÝÅ É ÄÁÎÎÙÅ ÂÕÄÅÔ PU> ÓÌÁÔØ ÎÅÐÒÅÒÙ×ÎÏ ÉÌÉ ÈÁÏÔÉÞÎÏ ÉÌÉ ... ÐÒÉ ÜÔÏÍ). PU> ôÏÇÄÁ ÈÏÓÔÕ ÂÕÄÅÔ ÄÏÓÔÁÔÏÞÎÏ ÐÒÉ ÏÂÎÁÒÕÖÅÎÉÉ ÐÒÏÂÌÅÍ ÚÁÔËÎÕÔØÓÑ PU> ÎÁ ÜÎÎÏÅ ×ÒÅÍÑ,ÂÏÌØÛÅÅ ÞÅÍ ÔÁÊÍÁÕÔ ×ÎÅÛÎÅÇÏ WDT.÷ÁÞÄÏÇ ÓÂÒÏÓÉÔ PU> uC É ÍÏÖÎÏ ÐÏ×ÔÏÒÉÔØ update (ÍÉÎÕÓ:ÈÏÓÔ ÄÏÌÖÅÎ ÂÙÔØ ÎÁÄÅÖÎÙÍ, PU> ÖÅÌÁÔÅÌØÎÏ ÂÙÓÔÒÏ ×ÏÓÓÔÁÎÁ×ÌÉ×ÁÔØÓÑ ÐÒÉ ÓÂÏÑÈ É ÐÅÒÉÏÄÉÞÅÓËÉ PU> ÐÉÎÇÏ×ÁÔØ ÄÅ×ÁÊÓ ÐÒÉ ÎÏÒÍÁÌØÎÏÊ ÒÁÂÏÔÅ,×ÐÒÏÞÅÍ,ÅÓÌÉ ÏÎ ÎÁÐÒÉÍÅÒ, PU> ÐÅÒÉÏÄÉÞÅÓËÉ ÄÁÎÎÙÅ ÓÏÂÉÒÁÅÔ Ó ÄÅ×ÁÊÓÁ ÐÏ ÜÔÏÍÕ ÖÅ ÉÎÔÅÒÆÅÊÓÕ PU> ÔÏ ÜÔÏ ÎÅ ÏÓÏÂÁÑ ÐÒÏÂÌÅÍÁ...ÚÁÔÏ ×ÓÅÇÄÁ ÍÏÖÎÏ ÚÁÇÎÁÔØ ÄÅ×ÁÊÓ PU> × ÎÕÖÎÏÅ ÎÁÍ ÓÏÓÔÏÑÎÉÅ É ÐÅÒÅÛÉÔØ ÅÇÏ).
÷ ÐÒÉÎÃÉÐÅ ÐÒÉ ÐÏÍÏÝÉ ×ÎÅÛÎÅÊ ÁÐÐÁÒÁÔÕÒÙ ÐÒÏÂÌÅÍÕ ÍÏÖÎÏ ËÁË-ÔÏ ÒÅÛÉÔØ. ïÄÎÁËÏ ÜÔÏ ÂÕÄÅÔ ÄÏ×ÏÌØÎÏ ËÒÉ×ÏÅ É ÓÒÁ×ÎÉÔÅÌØÎÏ ÄÏÒÏÇÏÅ ÒÅÛÅÎÉÅ. éÎÔÅÒÐÒÅÔÁÔÏÒ ÒÅÛÁÅÔ ÜÔÕ ÚÁÄÁÞÕ ÐÒÏÝÅ, ËÁÞÅÓÔ×ÅÎÎÅÅ É ÄÅÛÅ×ÌÅ. [...] AK>>> åÝÅ ÐÒÉÍÅÒ. ñ ÄÅÌÁÀ ÄÉÓÔÁÎÃÉÏÎÎÙÊ ÁÐÇÒÜÊÄ ÓÏÆÔÁ × ÏÄÎÏÍ ÉÚ ÀÎÉÔÏ× × AK>>> ÓÉÓÔÅÍÅ, ËÏÔÏÒÁÑ ÕÐÒÁ×ÌÑÅÔ ÏÓ×ÅÝÅÎÉÅÍ × ÂÏÌØÛÏÍ ÚÄÁÎÉÉ (building AK>>> automation system).YK>> äÌÑ _ÔÁËÏÊ_ ÚÁÄÁÞÉ ÉÎÔÅÒÐÒÅÔÁÔÏÒ ÄÁÖÅ ÍÏÖÅÔ ÂÙÔØ ÐÏÌÅÚÎÙÍ.
PU> åÓÌÉ ÓËÏÒÏÓÔØ ÐÏÆÉÇÕ - ×ÏÚÍÏÖÎÏ ÞÔÏ ÄÁ.
óËÏÒÏÓÔØ ÚÁ×ÉÓÉÔ ÏÔ ÔÏÇÏ ËÁË ÓÄÅÌÁÎ ÉÎÔÅÒÐÒÅÔÁÔÏÒ. îÁÐÒÉÍÅÒ, ÅÓÌÉ ÓÔÁ×ÉÔØ öÁÂÕ- ÄÁ, ÂÕÄÅÔ ÍÅÄÌÅÎÎÏ. åÓÌÉ ÖÅ ÓÔÁ×ÉÔØ FVM - ÔÏ ÂÁÂÕÛËÁ ÎÁÄ×ÏÅ ÓËÁÚÁÌÁ.
YK>> HÏ Ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ ÚÁËÌÁÄÙ×ÁÔØÓÑ ÎÁ _ÎÅÏÂÈÏÄÉÍÏÓÔØ_ ÞÁÓÔÏÇÏ YK>> ÄÉÓÔÁÎÃÉÏÎÎÏÇÏ ÁÐÇÒÅÊÄÁ ÓÏÆÔÁ ×ÙËÌÀÞÁÔÅÌÑ ÐÉÔÁÎÉÑ... ëÁË-ÔÏ YK>> ÎÅÁËËÕÒÁÔÎÏ.
üÔÏ ÚÁ×ÉÓÉÔ ÏÔ ÚÁÄÁÞÉ. ðÏËÁ, áÌÅËÓÅÊ- posted
19 years ago
- posted
19 years ago
- posted
19 years ago
Hi Power User,
Tue Sep 30 2003 07:08, Power User wrote to Alex Kouznetsov: [...] YK>>>> Для _такой_ задачи интерпретатор даже может быть полезным. PU>>> Если скорость пофигу - возможно что да. AK>> Скорость зависит от того как сделан интерпретатор.
PU> Hо она никогда не переплюнет скорость работы native кода?! Ж8-)
Встречались сообщения, что вполне может переплюнуть,
Пока, Алексей
- posted
19 years ago
- posted
19 years ago
- posted
19 years ago