Onixx

Помогите Студенту-Чайнику По Мк

698 сообщений в этой теме

krant    7

канечно, как же иначе спользовать delay ?

Пробовал с сбросом сторожевого таймера и без

Изменено пользователем krant

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
JIGIT    0

Помогите пожалуйста. Задали по курсовому! Разработать охранное устройство на микроконтроллере 51-серии. Питание 12 и 24 В. Работает с 10 парами светодиод-фотодиод. Микроконтроллер выдает на какоето сигнальное устройство (без разницы) тревогу лишь при пересечении сразу 2 и более лучей. Для экономии энергии использоваться должен генератор микроконтроллера. Программа работы микроконтроллера в Асемблере.

Прошу помочь, ибо самому мне это тяжеловато! С уважением и заранее благодарю за любую помощь.

Для подобных вопросов есть отдельная тема. В следующий раз забаню. Zer.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
krant    7

эм ну так что, проблемма для меня становится всё актуальней и актуальней (для ШИМ'a мне это необходимо)... помогоите кто-нибудь :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
gunya    0

Народ мне нужно придумать себе тему для дипломного проекта:

хочу собрать какоенибуть интересное устройство на ATmega8 в устройстве нужно применить побольше периферии (ЖКИ, АЦП, клавиатура, различные датчики и т. д.)

набросал в sPlan схемку с использованием 6-ти клавиш и ЖКИ, остался свободным порт С(к нему внутри МК подключен 6-ти канальный 10-ти розрядный АЦП)

и контроллер и ЖКИ у меня уже есть, бюджет остальной периферии неболее 10$(50 грн)

подкиньте идейку какого нибуть интересного устройства :rolleyes:

я тут думал сделать несложный лабораторный блок питания (с индикацией тока и напряжения) только незнаю какую на входе каналов АЦП нужно сделать обвязку чтоб мерять напряжение и ток в больших пределах (0 - 30 В, 0 - 5 Ампер)

post-42779-1225127898_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2517212    0

Дорогие форумчане, прошу вас в окозании мне помощи с моим курсовым проектом! Значит прередомной стоит такая задача: для некого прибора есть рабочий температурный режим от 10 до 35 *С, нужно создать устройство на микроконтроллере PIC, которое зажигало бы светодиод(тревоги), при выходе температуры с заданных рамок! Помогите пожалуйста, кто чем может smile.gif

P.S Или можно решить другую задачу: сделать так, чтоб при включении прибора, через 15 мин зажигался светодиод(15 мин. даеться прибору на прогрев),тоже на PIC.

Изменено пользователем 2517212

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545
Или можно решить другую задачу.......
По подробнее пожалуйста...

Это что, обычный таймер нужен чтоли ? Для чего тогда МК ?

Если точность не столь важна, можно сделать так.

long i;
LED=0;
for( i=0;i<=(15 * 60);i++)
{
DelayMs(1000);
}
LED=1;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2517212    0

Да, нужен обычный таймер, в конце отсчета должен зажигаться светодиод, все это должно быть на МК PIC, и написано на асме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2517212    0

Вот по этой ссылке http://radiosait.ru/page_281.html есть помоему что-то похожее на то что мне надо, только нужно переделывать программу, что я сам сделать не в состоянии, хотя надеюсь когда-то научиться, но до сроков сдачи курсовой у меня это явно не выйдет. Может кто то может переделать текст программы http://radiosait.ru/files/image/200/81/thermostst.asm ,

под мои нужды? Тоесть чтобы если температура будет выходить за рамки +10-+35 *С, то зажигался светодиод, который будет висеть вместо реле на ноге RA4? Кнопки на Start и SW INC можно вообще убрать, параметры температуры никогда меняться не будут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545
Может кто то может переделать текст программы
Да легко. Обращайся :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545

Какие могут быть шутки на форуме ? :) Я на полном серьёзе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Dexa    0

Помогите с курсачом, работаю с программатором и отладчиком mplab icd. На PIC16F877 надо сделать устройство, которое запоминало бы введённое число А (ввод потенциометром), затем переключалось в режим ввода числа В (ввод аналогичен) и в режиме коррекции числа В на светодиодах (подключены к порту D) был показан результат сравнения А и В. Сами значения А и В должны отображаться на семисегментных индикаторах. Если загорелся 1 диод значит В<=А, 2-й значит В>А на 12,5%, 3-й - В>А на 25%, 4-й - В>А на 50%.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545

Чем конкретно Вам помоч ? По подробнее плиз...

надо сделать устройство
Вам его собрать и прислать на дом ? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Dexa    0

нет конешно! Надо написать прогу на ассемблере, схему выложу вечером. Просто не знаю где хранить число А, как сравнивать и т.д.

Изменено пользователем Dexa

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545

Ну теперь рассказывайте что конкретно у вас не получаеться. На чём заткнулись.

Устройство простейшее...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545

Вам не зря задали такие простые значения как 12.5, 25, и 50%

Подсказка :

12.5% это деление на 8 ( т.е. сдвинут регистр вправо на 3 позиции )

25% это деление на 4 ( вправо на 2 позиции )

50% это деление на 2 ( вправо на 1 позицию )

Вот вам и все вычесления :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Dexa    0

Спасибо это я знаю, такое же устройство проектировал на ПЛИС и AHDL, а вот с ассемблером проблемы(( Программно как это описать на PIC16F877? Какими командами сравнивать? Где хранить число А? В аккумуляторе? Для сдвига вправо можно использовать команду RRF? И еще куча вопросов про АЦП и так далее. Смутно представляю это так:

movlw ???; загрузил число А в аккумулятор

movwf w_temp50; отправил содержимое акк-ра в ячейку памяти W_temp50

RRF W_temp50,1; сдвинул на 1 бит вправо и получил 50% от числа А (результат в этой же ячейке)

ADDWF W_temp50,1; А+50% от числа А

???; сравниваю В и содержимое ячейки W_temp50 и если В больше значит результат: выше нормы на 50%

еще надо как-то и куда-то загружать число В, также число В должно меняться потенциометром и результат сравнения тут же должен появляться на индикаторах и как-то надо реализовать алгоритм (наверно опрашивать кнопку): 862e8333d07e.jpg

заранее благодарен

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    545

Да, всё верно.

???; сравниваю В и содержимое ячейки W_temp50
Просто из В вычитаешь W_temp50 и смотришь за флагом С. Если не установлен, то заёма не было (В >= W_temp50). И наоборот, если установлен, то B < W_temp50 .

Находиться флаг в регистре STATUS ,бит №0 .

еще надо как-то и куда-то загружать число В, также число В должно меняться потенциометром и результат сравнения тут же должен появляться на индикаторах и как-то надо реализовать алгоритм (наверно опрашивать кнопку):
Чего то я совсем ничего не понял.....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Dexa    0

Спасибо огромное! Сам не додумался))

Ниже я говорил про цикл, т.е. после вывода результата сравнения надо вернуться на шаг "чтение с АЦП числа В". Я могу менять потенциометром число В и при следующем его значении может загореться уже другой диод (>25%). Не знаю как точнее объяснить ...ну на картинке вот эта стрелочка 2bc04de461fb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
M`art    0

Хорошо бы, но у меня чтоб воткнуть программатор надо выдирать клаву, посему очень пролематично оперативно работать... (при неверном контроллере прого подвисает)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
dimivan    0

Здравствуйте. Умоляю, помогите с курсовой :rolleyes:

Знаний у меня почти совершенно никаких, пожалуйста поподробнее) Если кто соберется помочь от начала до конца, отблагодарю материально через вебмани или еще как-то.

Первая часть задания:

1. Увеличить ПЗУ.

Там стоит вроде на 2К, нужно поставить хотя бы еще 3 штуки, чтоб было 8Кб. Как я понимаю, нада запараллелить данные, поставить какую-то штуку, чтоб переключала ПЗУ в каждый момент времени... Не знаю.

2. Заменить операционный усилитель и всю его обвязку на АЦП серии 1108. Т.е сделать датчик температуры на нем.

02e86ccea278533bf2f4d7c7369c193d.jpg

Описание устройства из журнала "Микропроцессорные средства и системы №4, 1989"

Локальный регулятор температуры на основе ОЭВМ серии К1816

Основу прибора состовляет ОЭВМ К1816ВЕ39 (D3) в сочетании с регистрами К555ИР27 (D4) и К155ТМ8 (D5) для хранения адреса, шинными формирователями (ШФ) К589АП26 (D6, D7), РПЗУ К573РФ5 (D8)? преобразователем сопротивление-код К140УД20 (DA9), десятичным делителем частоты К155ИЕ1 (D2), триггером Шмитта К155ТЛ2 (D1), усилителем на транзисторе КТ315 (VT3), формирователем импульса сброса при отключении питания на транзитсторах КТ315 (VT1, VT2), схемой дополнительного питания энергонезависимого ОЗУ ОЭВМ на стабилитроне КС137 (VD2) и диодах КД511 (VD3... VD5), гальваническим элементом питания GB, коммутаторами для управления исплнительными механизмами.

кварцевый генератор на 8Мгц. Для инициализации функционирования К1816ВЕ39 вырабатывается сигнал системного сброса. После прихода имульса сброса, выборка команд из РПЗУ начинается с нулевого адреса. Адреса выставляются на 8ми разрядной шине DB, трех младших разрядах порта Р и заносятся в регистры D4, D5 по сигналу ALE. C выходов этих регистров адреса поступают на адресные шины РПЗУ, где по данному адресу выбирается соответсвующая команда при наличии сигнала PME(с черточкой, наверное, НЕ РМЕ). Порт DB после выдачи адреса переходит в высокоимпендансное состояние и готов принять команду (инструкцию), выбираемую из РПЗУ. В процессе выполнения команд программы на соответствующие шины портов Р1, P2 выдаются сигналы управления, необходимые для запуска преобразователя сопротивление-код и считывания кода температуры, подачи сигналов управления на коммутаторы исполнительных механизмов.

Для организации связи ОЭВМ с центральной микроЭВМ разработана схема, состоящая из ШФ D6, импульсного трасформатора ТР, ТШ, D1.4, усилителя на транзисторе VT3 и двупроводной линии связи (ЛС). Управление режимом вводы-выода информации через ШФ осуществляется синалоом DIEN. Передоваемый в ЛС сигнал усиливается по току тразистором VT3, затем через имульсный трансформатор ТР, ТШ, D1.4 и ШФ D6 поступает для обработки в ОЭВМ. Резисторы R12 и R13 предназначены для согласования волнового сопротивления линии связи. Шифратор D7 выводит сигналы управления на коммутаторы.

Преобразователь сопротивление-код, выполненный на операционном усилителе К140УД20 (DA 9), позволяет считывать аналоговую информацию с любых резистивных датчиков, например с термометров сопротивления. Для считывания используется всего один логический (одноразрядный) вход и выход порта К1816ВЕ39. Преобразователь не требует управляющих сигналов и отдельного блока питания (используется 5В), основной элемент преобразователя - электрический мост, образованный резисторами R15..R17, R20, К21. На случай кратковременного отключения питания предусмотрен гальванический элемент дополнительного питания GB.

Изменено пользователем dimivan

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: Dmitry Suhoruk
      Доброй ночи, мне бы не помешала помощь опытных людей. Дело в том что на днях у меня на сабе Genius GHT-s200 пошло замыкание по плате. выключил снял крышку сделал пару фото погуглил, оказалось сгорели ножки на tda7265. но дело в том что на задней стороне платы по ходу перегорела еще и дорожка.. есть опытные люди в этой сфере которые подскажут что куда пхать или на какую плату лучше заменить. ? 



    • Автор: paulb
      Есть задумка собрать вольтметр постоянного напряжения (до 1000В) на ГРИ, использовав за основу популярную схему часов. Либо на базе микросхемы ICL7107, если это возможно. Знающих прошу помочь.
    • Автор: admin
      Сайт Паяльник открывает обучающий видеокурс по AVR-микроконтроллерам.
      В этой теме "обратной связи" будем постепенно добавлять новые видеоролики с нашего канала. Здесь можно задавать вопросы, давать рекомендации, критиковать, оставлять отзывы и пожелания, а также запросы на тему будущих видеоуроков.
      Ведет видеокурс наш форумчанин kobzar.
      Профиль пользователя на сайте cxem.net. Там же финансовые реквизиты для тех, кто пожелает финансово отблагодарить автора данного видеокурса
      Подписка на YouTube канал
      Краткий обзор сред разработки для различных микроконтроллеров на сайте: http://cxem.net/software/soft_mcu.php
      Внимание начинающим! Перед тем, как задавать вопросы не по теме видеоуроков, прочитать:
      Статьи по МК для начинающих
      Книга по программированию микроконтроллеров AVR
      Также, здесь же на форуме рядом с этой темой смотрите прикрепленные темы: для начинающих, по языку Си и т.д. Все вопросы не по видеокурсу задавайте только там. С этой темы подобные вопросы удаляются
      Кракозябры вместо русских букв
      Ребята - спешу сообщить что найден метод борьбы с кракозябрами вместо русских символов, при работе с ЖК. Дело в том, что у некоторых из вас, проект создается в кодировке UTF-8, а наша библиотека работает только с ср1251
      Фикс:
      1.Открываем проект
      2. File - Advanced Save Options
      3. Вместо кодировки UTF-8 выбираем Cyrillic(Windows) - cp1251
      Сохраняем, сохраняем проект - компилируем!
      Добавлено 12.01.16 :
      Изменённые версии библиотеки lcd_5110 :
      От Alex - http://forum.cxem.ne...20#comment-2287906
      От COKPOWEHEU - http://forum.cxem.net/index.php?showtopic=136229&st=1840#comment-2373820