Страница 1 из 1

бью челом

Добавлено: Ср янв 20, 2010 17:56:18
НуСовсемПлохойЭлектроник
Ребят, очень прошу - помогите! 23 числа экзамен, попадется одна из ниже следующих задач, если не трудно решите пожалуйста (ну или хотя бы алгоритм какой-нить скажите)
ЗЫ препод сказал задачи "Делать нечего, 5-10 строчек"
программировать надо на асемблере. Микроконтроллер - MCS51
ЗЫЫ надеюсь на вас ;)

1. На порт ввода МПС поступают импульсы от тактового генератора амплитудой 5 В с частотой один герц. Предложить фрагмент принципиальной (функциональной) электрической схемы сопряжения МПС и генератора. Составить программу, накапливающую число секунд в двоичном коде в любом восьмиразрядном регистре.
2. На порт ввода МПС поступают прямоугольные импульсы от тактового генератора амплитудой 5 В с произвольной частотой. Предложить фрагмент принципиальной (функциональной) электрической схемы сопряжения МПС и генератора. Составить программу, формирующую на линии порта вывода МПС прямоугольных импульсов с частотой вдвое меньшей чем у поступающих импульсов.
3. К порту ввода МПС подключены датчики верхней и нижней уставок регулирования технологического параметра ( датчики типа “сухой контакт”), а к порту вывода МПС подключены магнитные пускатели устройств, обеспечивающих увеличение и уменьшение регулируемого параметра . Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Разработать программу на Ассемблере , реализующую релейный двухпозиционный регулятор (с зоной нечувствительности) технологического параметра.
4. К порту вывода МПС подключен дешифратор, выходы которого управляют восемью светодиодами, а к порту ввода подключена кнопка. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Разработать программу на Ассемблере, обеспечивающую последовательное переключение светодиодов при очередном нажатии на кнопку.
5. К МПС подключен аналоговый мультиплексор (К561КП2) , коммутирующий восемь цифровых сигналов на одну линию порта ввода МПС. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Разработать программу на Ассемблере , реализующую последовательный опрос коммутируемых линий, причем переход к опросу очередной линии происходит после получение по текущей линии логического нуля.
6. К порту ввода МПС подключены восемь кнопок, а к порту вывода восемь светодиодов. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Разработать программу на Ассемблере , отображающую состояние кнопок на линейке светодиодов.
7. К порту ввода МПС подключен восьмиразрядный цифровой датчик давления, создаваемого гидропрессом, а к порту вывода магнитный пускатель привода пресса. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Составить программу, управляющую процессом прессования, который прекращается при достижении давлением заданного значения.
8. К МПС подключены датчики аварийных значений давления, температуры и уровня в реакторе ( типа “сухой контакт” ) , табло световой сигнализации из трех светодиодов и магнитный пускатель звонка. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Составить программу световой и звуковой сигнализации аварийных значений технологических параметров.
9. Разработать программу на Ассемблере , формирующую на линии порта вывода МПС прямоугольные импульсы с произвольной частотой.
10.Составить подпрограмму на Ассемблере, осуществляющую подсчет числа единичных битов в коде числа, хранящегося в ячейке памяти МПС. Определить механизм передачи параметров в подпрограмму, привести пример вызова разработанной подпрограммы.

И очень прошу извинить за наглость.

Добавлено: Ср янв 20, 2010 18:19:14
МитяРа
Мяу НуСовсемПлохойЭлектроник..
Как всегда, весь семестр пробалбесничал, а перед экзаменами - рему морщить начинаем ? :evil:
..
Из всех заданий, мне больше понравилось шестое:
6. К порту ввода МПС подключены восемь кнопок, а к порту вывода восемь светодиодов. Предложить фрагмент принципиальной (функциональной) электрической схемы МПС . Разработать программу на Ассемблере , отображающую состояние кнопок на линейке светодиодов.
Т.к. оно "самое сложное" и решается кучей символов на клавиатуре или одной строчкой на Асм-е..
..

Код: Выделить всё

mov P1,P0
..
При этом кнопки подключаются к порту P0 и замыкаются на корпус,
а светодиоды - подключаются к порту P1 через сопротивление на +5 вольт... :tea:

Добавлено: Ср янв 20, 2010 18:28:16
НуСовсемПлохойЭлектроник
Не то чтобы пробалбесничал, просто весь семестр было куча теории плюс кое-где мелькали примеры осуществления этой теории, а как таковой практики не было. Следовательно понимание мое в асемблере минимально, но к моему удивлению на экзамене кроме теории оказались задачи... Не знал куда больше написать.
Эх, хоть одну задачу знаю как делать. Огромное спасибо!

Добавлено: Ср янв 20, 2010 18:29:28
GP1
МитяРа!
Пять баллов! :))) :))) :)))

Добавлено: Ср янв 20, 2010 18:38:49
МитяРа
Приветствую GP1..
Как ты мог заметить /дело не в МК51 или AVR/, а программу-то мя недописал..
Т.е. она будет работать, но только 1 раз.. :)
..
Эх, хоть одну задачу знаю как делать. Огромное спасибо!
Спасать мя не-за-что..
А раз ты всё-же слушал теорию, то сам сообразишь, как сделать так, что-бы моя программа выполнялась не один раз, а - бесконечно..
Надо только добавить одну строчку.. всего-то 6 знаков на клавиатуре..
Давай, шевели теорией... :tea:

Добавлено: Ср янв 20, 2010 18:47:25
НуСовсемПлохойЭлектроник
L1:
mov P0,P1
sjmp L1
end

Работает ;)
еще не все потеряно, да?
Зы кнопки к порту П1 подключил.

Добавлено: Ср янв 20, 2010 18:52:16
МитяРа
НуСовсемПлохойЭлектроник
еще не все потеряно, да?
Теорию знаешь - молодец !!!
..
Зы кнопки к порту П1 подключил.
Практику - вроде тоже умеешь..
А кнопки-то к питанию надеюсь подтянул через сопротивления ?
..
Дальше будем продолжать ?

Добавлено: Ср янв 20, 2010 18:58:06
НуСовсемПлохойЭлектроник
Практику кое-как, похожую схему в лекциях нашел. В протеусе это все искать замучался. Да, через сопротивление, правда это был первый попавшийся резистор. А с теорией у меня немного получше, чем с практикой, но все равно "не айс" :)
А можно еще одну задачу? Тоже хотя бы недоделанную. Глядишь с Вашей помощью я хоть что-то в свою голову запихаю.

Добавлено: Ср янв 20, 2010 19:07:59
МитяРа
Выбирай цифру.. :tea:
Если не успею с работы - из дома отвечу...

Добавлено: Ср янв 20, 2010 19:17:08
НуСовсемПлохойЭлектроник
3...

Добавлено: Ср янв 20, 2010 19:39:07
МитяРа
Перечитал задачу и немного не понял..
Сколько входных датчиков и что конкретно подразумевается под словосочетанием "двухпозиционный регулятор"...

Добавлено: Ср янв 20, 2010 19:42:32
GP1
Здесь имеется ввиду, типа две кнопки, сработала кнопка нижнего предела включился скажем подогрев, сработал верхний датчик нагреватель отключился, ну типа того.
между сработками кнопок состояние системы не меняется, проще - гистерезис.

Добавлено: Ср янв 20, 2010 19:57:29
НуСовсемПлохойЭлектроник
Сколько этих датчиков - не знаю, но предполагаю, что одного хватит.
Двух позиционный регулятор ( в моем понимании) - это регулятор, который может держать систему в двух состояниях (или-или). Например: включил - нагрелась - отключил.
Ладно, насчет этой задачи уточню на консультации, не забивайте мозги.
Тогда 9, если еще у Вас желание осталось.

Добавлено: Чт янв 21, 2010 10:26:32
МитяРа
Хорошо, насчёт 3-го номера - уточни..
Ну ты и номера выбираешь.. 9-я тоже "очень" сложная задача..
Буковок всё больше и больше писать надо..
..

Код: Выделить всё

cpl  P0.0
ljmp 0
..
Импульсы формируются на выводе P0.0...

Добавлено: Чт янв 21, 2010 12:31:04
НуСовсемПлохойЭлектроник
Спасибо!
Cpl это команда инверсии, т.е. когда на выходе 0 она делает 1, а когда 1 она делает 0. Так и формируются импульсы, я правильно понимаю?

Добавлено: Чт янв 21, 2010 12:46:22
МитяРа
Правильно понимаешь и именно с её помощью формируется импульсы типа "меандр"..
Т.е. у которых длительности 0 и 1 - одинаковые..
..
Следующий номер.. или уже скис от "сложности"?

Добавлено: Чт янв 21, 2010 12:55:32
НуСовсемПлохойЭлектроник
Не, приятно осознавать, что я на экзамене могу осилить аж 20% всех задач =)

Пять...