Top secrets sources NedoPC pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

history:

14.09.09: lvd
 initial release

=======================================================================================

×òî äîëæåí è íå äîëæåí äåëàòü áóò-çàãðóç÷èê: ñïèñîê òðåáîâàíèé è ïîæåëàíèé

I. äëÿ ÷åãî ïðåäíàçíà÷àåòñÿ áóò-çàãðóç÷èê â atmeg'e?
 Äëÿ âîçìîæíîñòè àïäåéòà îñíîâíîé ïðîøèâêè àòìåãè áåç ïðèìåíåíèÿ ïðîãðàììàòîðà.

II. îñíîâíûå òðåáîâàíèÿ.

 1. Áóò-çàãðóç÷èê äîëæåí áûòü ïðîçðà÷åí ïî îòíîøåíèþ ê îñíîâíîé ïðîãðàììå. Äðóãèìè ñëîâàìè, îñíîâíàÿ
 ïðîãðàììà ïèøåòñÿ òàê, ÷òîáû îíà ðàáîòàëà áåç çàãðóç÷èêà, à çàãðóç÷èê - òàê, ÷òîáû îñíîâíàÿ ïðîãðàììà
 ïðîäîëæàëà êîððåêòíî ðàáîòàòü è ñ íèì (ïðè ýòîì ñóùåñòâóåò î÷åâèäíîå îãðàíè÷åíèå: äëèíà îñíîâíîé
 ïðîãðàììû - 120êÁ).

 2. Áóò-çàãðóç÷èê äîëæåí àïäåéòèòü ïðîãðàììó àòìåãè ÷åðåç COM-ïîðò (îáÿçàòåëüíî),
 à òàêæå ñ÷èòûâàÿ ïðîøèâêó àòìåãè ñ SD-êàðòû (îïöèîíàëüíî) è óìåòü ïåðåøèâàòü ÏÇÓ ñïåêòðóìà, áåðÿ ïðîøèâêè
 èç äâóõ âûøåóêàçàííûõ èñòî÷íèêîâ (îïöèîíàëüíî).
  îáîèõ ñëó÷àÿõ ôàéë äëÿ àïäåéòà äîëæåí èìåòü îáùåïðèíÿòóþ ñòðóêòóðó, à äëÿ çàëèâêè íå äîëæíî èñïîëüçîâàòñÿ
 ïëàòôîðìî-çàâèñèìîå ÏÎ. Îïòèìàëüíûì ìíå êàæåòñÿ âàðèàíò ihex'à (âûõëîï ëþáîãî äåâñîôòà ïîä àòìåãó), à äëÿ
 çàëèâêè ñàìîå ïðîñòîå - èñïîëüçîâàòü ëþáóþ òåðìèíàëêó, èëè äàæå copy file.hex COM1: Ìîæíî ñäåëàòü
 âèíäîñîôòèíó ñ  êíîïêîé "ÕÀ×Þ!", íî ëèøü êàê äîïîëíåíèå ê èçëîæåííûì òðåáîâàíèÿì. Òàêàÿ ñîôòèíà äîëæíà èç ñåáÿ
 ïðåäñòàâëÿòü âíóòðè òó æå òåðìèíàëêó, òîëüêî ñ àâòîìàòè÷åñêîé çàëèâêîé.

 3. Äëÿ çàãðóçêè ôàéëîâ ñ SD-êàðòû, à òàêæå äëÿ ïåðåøèâêè ÏÇÓ ñïåêòðóìà, çàãðóç÷èê äîëæåí çàãðóçèòü â ÔÏÃÀ
 ñâîþ ñïåöèàëüíóþ ïðîøèâêó, ïðåäíàçíà÷åííóþ òîëüêî äëÿ âûøåóêàçàííîãî. Ýòà ñïåöéèàëüíàÿ ïðîøèâêà çàíèìàåò äîøèøà ìåñòà
 (5-6 êèëî), çàïàêîâàííàÿ, òàê ÷òî ïîòîìó è îïöèîíàëüíî.

 4. Çàãðóç÷èê äîëæåí â ïðîöåññå ñâîåé ðàáîòû èíèöèàëèçèðîâàòü àáñîëþòíûé ìèíèìóì îáîðóäîâàíèÿ, íàïðèìåð,
 èíèöèàëèçèðîâàòü òîëüêî òðåáóåìûå äëÿ åãî ðàáîòû ïèíû, òàéìåðû, êîììóíèêàöèîííûå èíòåðôåéñû. Ïðè ýòîì
 äîïóñòèìî ïîëàãàòü, ÷òî çàãðóç÷èê íà÷èíàåò ñâîþ ðàáîòó èñêëþ÷èòåëüíî èç reset'à.

 5. Çàãðóç÷èê äîëæåí çàïóñêàòü îñíîâíóþ ïðîøèâêó òîæå ÷åðåç ðåñåò.  äîïîëíåíèå ê òðåáîâàíèþ ïðîçðà÷íîñòè
 ýòî âëå÷¸ò çà ñîáîé ñëåäóþùèé ìåõàíèçì: çàãðóç÷èê ïðîâåðÿåò òèï ðåñåòà, åñëè ýòî áûë watchdog-ðåñåò, òî
 áåçóñëîâíûé çàïóñê îñíîâíîé ïðîøèâêè. Åñëè ëþáîé äðóãîé - òî ïðîâåðêà íåîáõîäèìîñòè çàïóñêà çàãðóç÷èêà,
 â ñëó÷àå îòñóòñòâèÿ - çàïóñê îñíîâíîé ïðîøèâêè. Òàêèì îáðàçîì, ïåðåõîä íà îñíîâíóþ ïðîøèâêó îñóùåñòâëÿåòñÿ ÷åðåç
 watchdog-ðåñåò.

 6. Ñëåäóåò ó÷èòûâàòü õàðàêòåð ïèòàíèÿ ïëàòû îò ÀÒÕ-áëîêà, à èìåííî, ÷òî ïðè ðåñåòå àòìåãè îòêëþ÷àåòñÿ
 îñíîâíîå ïèòàíèå ïëàòû, à çàïèòàííîé îñòà¸òñÿ ëèøü àòìåãà ñ êîì-ïîðòîì è ÷àñèêàìè. Ëèøíèé ðàç ä¸ðãàòü
 ïèòàíèå ïëàòû íå ñòîèò, îòêóäà ñëåäóåò âûâîä, ÷òî ïûòàòüñÿ ïåðåøèòüñÿ èç ÑÄ-êàðòû çàãðóç÷èê äîëæåí ëèøü
 â ñëó÷àå, åñëè ýòîãî ðåàëüíî õî÷åò þçåð. Èíà÷å ïðè êàæäîì ñáðîñå ïîèìååì äâîéíîé ïåðåä¸ðã ïèòàíèÿ ïëàòû...

 7. âûïîëíåíèå ôóíêöèè çàãðóç÷èêà äîëæíî íà÷èíàòüñÿ, ëèøü åñëè ýòîãî ðåàëüíî õî÷åò þçåð, à íå ïî æåëàíèþ
 åãî ëåâîé ïÿòêè. Íàïðèìåð, íå ñ÷èòàþ íåîáõîäèìûì èìåòü ïóíêò çàïóñêà çàãðóç÷èêà â OSD-ìåíþ îñíîâíîé ïðîãðàììû.
 Ïåðåøèâàþòñÿ íå êàæäûé äåíü, ïîòîìó òðåáîâàíèå çàïóñêà äîëæíî áûòü, íàïðèìåð òàêîå: íàæàòü è óäåðæèâàòü
 soft-reset ïðè ïîäà÷å hard-reset'à (èëè ïîâåðîíå).


äîáàâëåíèÿ...

1. âîçìîæíî ïîëó÷øå ïàêîâàòü ôàéë ïðîøèâêè äëÿ ôïãà, åñëè èñïîëüçîâàòü ïîä ýòî íå 2êèëî, à áîëüøå.
Åñëè "áîëüøå"<4096, òî íàñòàíåò æóòêèé ãåìîððîé ïî çàöèêëèâàíèþ óêçààòåëåé, ïîòîìó "áîëüøå"=4096.
Òàê êàê áóòëîàäåð ïèøåòñÿ íà àññåìáëåðå, òî ýòî íå äîëæíî ñîñòàâèòü îñîáîé ïðîáëåìû. Ãëàâíîå,
äåïàêåð íå ñ ñåé ïåðåïèñûâàòü, à âçÿòü z80-êîä ;)