Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: sim5 <= лазерная растяжка )
 
 автор: ddhvvn   (21.12.2008 в 16:47)   письмо автору
 
 

Уже в лучших традициях форума... )
sim5, прошу Вас помочь мне )

вот схемка )
можете описать примерные процессы в этом устройстве? т.е. что происходит от момента, когда включили питание, до момента, когда питание выключили

мне просто надо составить алгоритм работы изделия, а я половину происходящего в устройстве не вижу/не понимаю (

  Ответить  
 
 автор: xx77 :)   (21.12.2008 в 17:14)
 
   для: ddhvvn   (21.12.2008 в 16:47)
 

Чтоито мне кажется что происходящие процессы сильно будут зависеть от того какой прошивкой прошить этот контроллер atmega8 :) хотя не очень курил такие книжки

  Ответить  
 
 автор: sim5   (21.12.2008 в 17:54)   письмо автору
 
   для: ddhvvn   (21.12.2008 в 16:47)
 

Что именно рассказать? Как она работает, так достаточно краткого описания в статье, что еще рассказывать. Если вас интересует программная часть, так можно скачать исходники, и посмотреть среди них:
LASER_SIG1.lst
LASER_SIG1.asm
LASER_SIG1.i
А если кратко, то в любой процессорной системе, в момент включения питания происходит сброс процессора. Что конкретно просходит в нем, это отдельный разговор, но об одном надо сказать - счетчик адреса устанавливается в ноль, порты (микроконтроллера) принимают состояние "отключено" (высокий импеданс). Поэтому, по окончании импульса сброса процессор будет обращаться к программе расположенной по нулевому адресу. Так как начальные адреса процессоров обычно отдаются под векторы прерываний, то по нулевому адресу распологают команду безусловного перехода на адрес, по которому распологается начало программы.
Посмотрите листинг программы, и вы увидите, что в начале происходит инициализация портов микроконтроллера (линии портов), которые обрабатывают поступающие сигналы или управляют выходными устройствами (элементами). Инициализация в микроконтроллере, это запись в порт (если необходимо) начального уровня: либо 0, либо 1, а для языка (Си, Ассемблер,...), это укзание адреса порта.
Я не рассматривал листиг весь, но могу сказать, что в принципе это работает так, примерно:
После установки устройства под охрану, постоянно происходит провека состояния порта PD4. Если перекрыть луч лазера, то на входе этого порта будет лог. 1, и произойдет обработка подпрограммы выдачи звукового сигнала. Вот и все. Подпрограммы выдачи сигнала и прочие можете посмотреть в исходнике.
Единственное, что хотелось бы добавить - во многих микроконтроллерах есть встроенный счетчик-таймер (есть и несколько таких), который в данном случае было бы удобнее задействовать для управлением сигнализации, а также есть порты входные, которые имеют свои вектора прерываний. В общем все это можно было бы переложить на них, что позволило бы перевести микроконтроллер и в режиме "Охрана" на малое потребление питания. Есть таковые функции в них.

  Ответить  
 
 автор: ddhvvn   (21.12.2008 в 19:28)   письмо автору
 
   для: sim5   (21.12.2008 в 17:54)
 

хм... ок
СПАСИБО! )

  Ответить  
 
 автор: sim5   (21.12.2008 в 19:42)   письмо автору
 
   для: ddhvvn   (21.12.2008 в 19:28)
 

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

  Ответить  
 
 автор: Trianon   (21.12.2008 в 20:03)   письмо автору
 
   для: sim5   (21.12.2008 в 19:42)
 

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

  Ответить  
 
 автор: ddhvvn   (21.12.2008 в 20:25)   письмо автору
 
   для: Trianon   (21.12.2008 в 20:03)
 

да, я видел.
но может мне, конечно, кажется (из-за незнания ассемблера), что он какой-то "неполный" )

  Ответить  
 
 автор: sim5   (21.12.2008 в 20:32)   письмо автору
 
   для: Trianon   (21.12.2008 в 20:03)
 

Исходник на С не дает полного представления о работе устройства. Вы сравните его с листингом ассемблера. Именно он дает всю подробную картину. Это как сравнить скрипты РНР с конечной работой интерпретатора.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования