На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (3) 1 [2] 3  все  ( Перейти к последнему сообщению )  
    > Микроконтроллер для опытов. , И программатор к нему.
      Цитата Змей(Чёрный), 06.08.2006, 21:06:19, 1206496
      Видел трансивер с цифровым управлением, на интеловском 8080 (ВМ80 - его копия.) нормально работает...

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

      Цитата Змей(Чёрный), 06.08.2006, 21:06:19, 1206496
      ЭЭххх... адресуемая память - 64К.

      Видел решение только на две страници, по этому так и сказал 128. А больше наверное и смысла нет. Так как ПЗУ не особо обьемны были. Если это контроллер, не ПК.
        Спасибо за ссылки и советы! Ушел изучать :)
          Здравствуйте! Решил новую тему не начинать, а в этой спросить:
          в Аtiny13 Watchdog-таймер сбрасывает память, или нет(в режиме system reset)? Т.е., делает ли WDT полный аппаратный сброс?
          Мне нужно реализовать режим, когда программа выполняется один раз и МК отправляется в спячку, а по WD таймеру (через пару секунд) просыпается, но нужно сохранять параметры с предыдущего цикла. Или придётся использовать WDT в режиме прерывания? Хотелось бы системный сброс, чтобы заодно и надёжность повысить, хотя, может я становлюсь параноиком?
          Что посоветуете?
            Несовсем понял что за параметры цикла хочешь сохранить.
            Если это данные, то пиши в оперативку. (или оставляй там, в зависимости от того как реализована программа)

            WD на tiny13 полюбому вызывает прерывание номер 9 - 0x0008 - WD Timeout

            Добавлено
            Кстати, раз уж подняли тему.... Нашел суперскую прогу для прошивки микроконтроллеров, никакого программатора, напрямую в LPT коннетится.
            Вобщем мега-вещь.

            UniProf - http://avr.nikolaew.org/
              Я и имею в виду данные из оперативки. Мне нужно, чтобы они сохранялись. Да какие там данные. По идее, наверное, можно будет одним битом обойтись(режим работы устройства на предыдущем цикле). Под циклом я имею в виду каждый проход программы: от нулевого адреса и до команды "спать". Т.е., проснулся МК, и с нулевого адреса всё по новой, только с учётом текущего режима устройства
              WD имеет несколько режимов: Interrupt, system reset, и смешанный: сначала Int, потом sys res. Вот этот последний как раз используется для того, чтобы сохранить данные(в еерrom?). Но чего-то мне неохота в eeprom каждые 2 сек. записывать, этак она долго не протянет. Может есть какой-нибудь способ?
                Цитата Prince @
                Может есть какой-нибудь способ?
                Этот способ был придуман еще во времена MS-DOS, чтобы отличать "горячий старт" от "холодного". В память(ОЗУ) пишется определенное достаточно длинное слово, после сброса оно читается и проверяется.

                Добавлено
                Цитата Prince @
                в Аtiny13 Watchdog-таймер сбрасывает память, или нет(в режиме system reset)?
                Никакой сброс нигде память не сбрасывает. После подачи питания в ОЗУ мусор, после сброса - то, что там было до сброса(если только в железе нет ошибки, приводящей к порче памяти). Я не видел ни одного микроконтроллера, в котором память чистилась бы автоматически.
                Сообщение отредактировано: trainer -
                  Цитата
                  Этот способ был придуман еще во времена MS-DOS, чтобы отличать "горячий старт" от "холодного". В память(ОЗУ) пишется определенное достаточно длинное слово, после сброса оно читается и проверяется.

                  Ну так после холодного старта данные в памяти теряются? Что-то я не понял, к чему... :unsure:

                  Цитата
                  Никакой сброс нигде память не сбрасывает. После подачи питания в ОЗУ мусор, после сброса - то, что там было до сброса(если только в железе нет ошибки, приводящей к порче памяти). Я не видел ни одного микроконтроллера, в котором память чистилась бы автоматически.



                  trainer, спасибо. Но это точно? Я проверить сейчас не могу, нужно все свои железки раскапывать. А мне пока нужно определиться: использовать ли МК вообще, или "по старинке", на ОУ схему делать.
                  Почему я спрашиваю. Я в предыдущем посте упомянул про третий режи WDT. В даташите написано, что он используется как раз для того, чтобы данные можно было предварительно сохранить. Т.е., имеются в виду только данные из РОН, а в ОЗУ и так всё сохраниться?
                  Сообщение отредактировано: Prince -
                    Цитата Prince @
                    Т.е., имеются в виду только данные из РОН, а в ОЗУ и так всё сохраниться?
                    Цитата
                    This mode will for instance allow a safe shutdown by saving critical parameters before a system reset.


                    Цитата Prince @
                    Ну так после холодного старта данные в памяти теряются? Что-то я не понял, к чему...
                    После старта, и начального тестирования читаешь содержимое участка ОЗУ. Если там содержится некое условное число, например, 0x5555, значит у нас произошел сброс без отключения питания(внешний сброс или сторожевая собака сработала) - ОЗУ содержит данные, бывшие там до сброса, если не содержит, то только что подали питание. В зависимости от этого выполняем нужные действия и записываем в тот же участок памяти это самое условное число.

                    Добавлено
                    Кстати, у ATTiny13 есть флаг, показывающий, что произошел сброс от сторожевой собаки - бит WDRF в регистре MCUSR.
                      Цитата
                      This mode will for instance allow a safe shutdown by saving critical parameters before a system reset.

                      Не понял. :unsure:

                      Цитата
                      Кстати, у ATTiny13 есть флаг, показывающий, что произошел сброс от сторожевой собаки - бит WDRF в регистре MCUSR.

                      Да эт я знаю. Но мне не это надо: узнавать отчего сброс.
                        Цитата Prince @
                        Не понял.
                        Цитата
                        Этот режим позволяет, например, выполнять безопасное завершение работы путем сохранения критических параметров перед выполнением системного сброса
                          Хороший девайс Atmel-stk500.
                          Цитата

                          The STK500 is a complete starter kit, programming tool and development system for Atmel’s AVR microcontrollers. The STK500 gives AVR users the freedom to develop and test complete AVR designs and prototypes. The STK500 supports the following Atmel AVR devices: ATtiny11 ATtiny12 ATtiny15 ATtiny22 ATtiny26 ATtiny28 AT90S1200 AT90S2313 AT90S2323 AT90S2333 AT90S2343 AT90S4414 AT90S4433 AT90S4434 AT90S8515 AT90S8535 ATmega8 ATmega8515 ATmega8535 ATmega161 ATmega162 ATmega163 ATmega16 ATmega1692 ATmega323 ATmega32 ATmega641 ATmega1031 ATmega1281 AT899513 AT899523
                          AT86RF4013.
                            Где сохранять? В ЕЕPROM?
                            Что-то мы как-то не поймём друг друга.
                            Мне подходит, если ОЗУ после системного сброса сохраняет данные. Но вот эта цитата, что Вы привели, и заставляет меня сомневаться в этом. Поэтому я и спросил: имеется в виду сохранять критические параметры только те, что храятся в регистрах, которые после системного сброса 100% "потеряются" или и ОЗУ тоже?
                            Сообщение отредактировано: Prince -
                              Цитата Prince @
                              которые после системного сброса 100% "потеряются" или и ОЗУ тоже?

                              Если питание не снимается то ОЗУ останется без изменений,
                              именно поэтому и предложили держать какую-то ячейку ОЗУ как контрольный флаг.
                              Если програма инициализации смотрит в эту ячейку и пароль не сходится(мусор при первом холодном страте) то ОЗУ чистое, если пароль(флаг) сходится значит
                              значит стартанули или из спячки, или по сторожевой собаке.
                                Цитата Prince @
                                имеется в виду сохранять критические параметры только те, что храятся в регистрах, которые после системного сброса 100% "потеряются" или и ОЗУ тоже?
                                Имеется в виду, что этот режим позволяет делать что-то перед сбросом.
                                  :wall:
                                  Вы меня совсем запутали.
                                  Есть режим WDT: сначала выполняется преывание(в обработчике которого нужно ручками сохранить важные данные: откуда-то(регистры ОН IO, ОЗУ(?) , и куда-то(EEPROM, ОЗУ(?), чтобы они не потерялись, а уже потом выполняется системный сброс(после которого эти данные могли бы потеряться).
                                  Вопрос: ОЗУ Atiny13 после cистемного сброса сохраняет инфу или нет? Чёткого ответа я не нашёл пока.

                                  В общем, как проверю, отпишусь.
                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                  0 пользователей:
                                  Страницы: (3) 1 [2] 3  все


                                  Рейтинг@Mail.ru
                                  [ Script execution time: 0,1297 ]   [ 16 queries used ]   [ Generated: 23.04.24, 11:28 GMT ]