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    484
Или можно решить другую задачу.......
По подробнее пожалуйста...

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

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

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    484
Может кто то может переделать текст программы
Да легко. Обращайся :)

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


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

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

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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

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


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

Вам не зря задали такие простые значения как 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    484

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

???; сравниваю В и содержимое ячейки 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 смайлов.

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

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

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

Загрузка...

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

    • Автор: karomag
      Добрый день.
      Экспериментирую с подключение 7-сегментного индикатора к мк stm32. Индикатор с общим катодом. Соответственно для вывода цифры необходимо на анод каждого сегмента подать 1, а на общий катод 0. И тут я не могу понять какие токи будут через порты. Теоретически, пины МК подключенные через резистор 300 Ом к аноду (напряжение МК 3.3 В) то ток будет 4 мА, тогда на общем катоде должно быть 7 * 4 = 28 мА (цифра 8, т.е. горят все сегменты). Т.е. это небольшое, но превышение макс тока на ногу 20 мА. И надо общий вывод подключать через транзисторный ключ.
      Взял мультиметр. Результаты замера: ток каждого сегмента ~2.5 мА, ток общего катода 5 мА. Вот тут я подумал о школе Хогвардс))) Как все таки рассчитывается все таки ток на общем выводе? 
    • Автор: art_budka
      Ищу подрядчика для разработки проекта робота-рисовальщика. Есть бюджет, ТЗ. 
      Устройство представляет собой манипулятор передвигающий головку в плоскости XY в пределах жесткой рамы на которой установлены двигатели и направляющие перемещения. Головка представляет собой блок, отвечающий за передвижение закрепленного в фиксаторе объекта-пера по оси Z на расстояние до 20 мм. Фиксатор на элементе подъёма головки должен обеспечить жесткое закрепление предметов массой 10 - 80 грамм - кистей, шариковых ручек, карандашей и маркеров диаметром от 5 до 20 мм.
      Решение необходимо для обеспечения точных, многократно повторяющихся перемещений “пера” над плоской поверхностью. Для формирования движений в устройстве должна быть реализована электромеханическая схема, подключенная посредством USB-интерфейса к персональному компьютеру для отправки команд на манипулятор и получения обратной связи от контроллера манипулятора. 
      ТЗ, смета и бюджет через art_budka@rambler.ru 
    • Автор: green_whale
      Доброго времени суток.
      Собственно, сразу к делу. Необходимо измерить вч напряжение (частота порядка 20кГц, максимальная амплитуда 75мВ) с помощью микроконтроллера (скорее всего будет использоваться Arduino).
      Форма входного сигнала - пила (возрастает от минимального значения до максимального). Сигнал однополярный.
      Измерить нужно именно максимальное значение входящего сигнала. Измерение должно быть весьма точным (желательно, чтобы погрешность не превышала 1-2%).
      Есть пару идей :
      1. Сгладить сигнал, используя пиковый детектор (сможет ли сигнал такой частоты и формы зарядить конденсатор?).
      2. Использовать цап для генерации постепенно снижающегося напряжения и аналоговый компаратор.

      Надеюсь, кто-нибудь уже решал подобную проблему и сможет помочь советом или схемой.
    • Гость мистер_чувак
      Автор: Гость мистер_чувак
      Здравствуйте. Нашёл свои старые китайские портативные колонки, которые давно уже разобрал и потерял некоторые провода. Помогите разобраться, что к чему соединять, чтобы работало.
      фотка1
      фотка2
      фотка3
      фотка4
      фотка5
      фотка6
      фотка7
    • Автор: butyavk
      Компания "Диаконт" приглашает на собеседование по вакансии инженер-программист микроконтроллеров.
      Мы производим и поставляем современные приборы управления электроприводами для различных отраслей отечественной промышленности.
      Пополняем нашу команду программистов (готовы принять 2-3 кандидатов с различным опытом работы)!

      Основные обязанности:
      Разработка программного обеспечения для блоков управления приводами и др. вычислительных систем.
      Программирование на C++ микроконтроллеров фирмы Texas Instruments и НИИЭТ на базе ядра ARM Cortex-M4.
      Поддержка и доработка существующего программного обеспечения.
      Участие в научно-исследовательских и опытно-конструкторских работах.
      Участие во внедрении систем на объектах (редкие командировки).

      Требования к кандидатам:
      Хорошее знание схемотехники;
      Знание методов разработки и проектирования ПО для микроконтроллеров и опыт работы с их периферией;
      Знание основ управления электроприводами и ТАУ;
      Знание языков программирования высокого уровня (C++, C);
      Знание современных методов разработки ПО (ООП, ...);
      Знание английского языка (чтение технической документации);
      Приветствуется знание Python, Matlab/Octave;
      Дополнительным плюсом будет опыт автоматизированного тестирования встроенного ПО.

      Условия:
      Оплата полностью белая (на руки в зависимости от знаний и опыта от 50 000 руб до 100000 руб). Но, готовы обсуждать!;
      Карьерный и профессиональный рост;
      Предприятие с комфортными условиями труда на севере города;
      ДМС;
      График работы понедельник - пятница 9:00-17:40;
      Плавающее начало работы с 8:00-10:00;
      Льготное питание в столовой на территории предприятия;...

      Ключевые навыки
      Программирование микроконтороллеров
      C/C++
      Управление электродвигателями

      Адрес
      Санкт-Петербург, ул. Учительская 2, м. Гражданский проспект

      Тип занятости
      Полная занятость, полный день

      Резюме лучше отправлять на rykov@diakont.com 
  • Сообщения

    • Всем привет подскажите пожалуйста. Есть модуль А6. У него есть пин RST. В даташите написано, что для сброса надо применять низкий уровень, но при этом ток через все это дело пойдёт до 70ма и у модема возникнут трудности с поиском сети. Там же сказано, что рекомендовано использовать nMOSFET. Так вот я правильно понял, что надо просто тянуть эту ногу к земле через мосфет н типа, никаких там обвесов не надо? Есть схемка как правильно притянуть ногу к земле через мосфет? И как правильно подобрать транзистор? Питание 5в.
    • всем привет. И так по-порядку без лишних слов. схема управляет двигателем в игрушечной машинке спаял самодельный H-bridge на KT816В + КТ817Г + управляющие 2n3904 схему взял тут: http://www.laurentkneip.de/H_bridges.html Оригинальня схема: Схема чуть модифицированная мною: На схеме:
      - замены по сравнению с оригиналом подчеркнул: желтым
      - номера ножек транзисторов: голубым
      - заменил R1 и R3 с 10К на 200 Ом. Как по мне 10К это перебор
      - добавил диодов на каждый транзюк: в инете видел много схем где диоды стоят У меня есть еще 1 машинка. Я её схему перепаивал, так как там стояли очень слабые транзюки и 1 из них был сгоревшим, но там диодов и резюков НЕТ вообще - и она работает. По сути там копия оригинальной схемы (фото №1) ПРОБЛЕМА: текущая самопайка при подаче сигнала на X2-1 или X2-2 - двигатель крутит или по часовой или против часовой. вроде бы всё ОК. Но не особо сильно. Как будто в пол силы. НО! когда на обеих контактах 0 - то он сам еле еле крутится в одну сторону. На X1-1 при этом 0.49V, а на X1-2 около 1.42V. Тут то я и понял, что что-то явно не то. Я так понимаю транзюки каким-то образом приоткрыты? - честно говоря я очень силен в схемотехнике , Программист, но люблю и паять. По-этому пишу с просьбой помочь. Пробовал оба X2-1 и X2-2 тупо на землю посадить без Arduino - эффект тот же. Ну и если рукой взять за вал моторчика - то слышно, как он туда сюда как бы дергается с оооочень большой скоростью. Но так как напруга на одном из контактов больше - он всё же еле-еле крутится по часовой. Может я неправильно добавил диоды в схему? или резисторы R2 и R4 поставить около 2К-4К Ом? Неправильно номера ножек транзюков определил? Вместо 2n3904 есть еще С945 если, что. Могу замерять напряжения в любых точках где скажете.
    • "Сеня, про зайцев - это не актуально!" И про шапочки из фольги - тоже! Настоящий Мастер всегда на шаг впереди общественной мысли! Вот здесь наш уникум, в книге "Электронные фокусы для любознательных ДЕТЕЙ" учит подростающее поколение делать кипятильник из двух бритв и спички, а так же жарить аналогичным образом сосиски! Очень правильно - кто знает, куда этх детей нелегкая занесет... Я вот, например, с нетерпением жду от Автора развития этой, столь нужной нашим детям, тематики; публикаций на темы: "Тату-машинка за пять минут из электробритвы" "Делаем игральные карты из старой газеты" "Поделки из хлеба" "Шмон. Инструкция для новичков. Как спрятать карты, траву и телефон, чтобы не нашли" "Дыра в миске, кружке, ложке - заделываем хлебным мякишем" "150 рецептов классического чифиря" "Прописка в хате - инструкция по выживанию" Дети будут рады получить от Мастера столь ценные в повседневной жизни советы! Вааау, Вам выпала честь вживую пообщаться с этой знаменитостью? Как же я Вам завидую! Просто не могу поверить в это - сам Кашкаров! Класс!!!
    • Гость Николай
      усилитель tpa3118.  Если к нему подсоединить те два провода ( R2 и U5 ) которые идут на штатный динамик-звука вобще нет.  Один провод откидываю-звук есть,но без низких частот,слабенький
    • Нет не "можеш".  Я говорю о реально допустимом значении индукции, а Вы утрируете.
    • Объясняю: 1. В первом пакетике вес будет меньше, а в другом будет больше. 2. МП-ешки и ГТ-ешки будут стоить намного меньше 1 руб/грамм.  
    • Помогите собрать фито лампу из конкретных компонентов можно со схемой имею 30 диодов и лед драйвер(на фото). Нужны ли резисторы с таким драйвером? Думаю либо параллельно 3 линии по 10 диодов либо 6 линий по 5 диодов. Подскажите как будет правильно. И если нужны резисторы то какие.