Перейти к содержанию

Кнопка и светодиод


Andre

Рекомендуемые сообщения

Помогите с задачей. В Протеусе собрана схема, показанная на рисунке. Два резистора по 1кОм, микроконтроллер 51, кнопка и светодиод. Необходимо дописать код на ассемблере, чтобы при нажатии на кнопку светодиод горел.

post-53744-1252769501_thumb.jpg

Кусок кода начального:

LEDPIN BIT P2.0 ; your favorite port pin (LED preffered)

START CODE 8000H

TIME EQU 8 ; time constant in units of 250 ms (for 12MHz)

ORG START

BLINK: CPL LEDPIN ;toggle pin (Great, when connected to a LED!)

MOV R3, #TIME ; wait for TIME * 125 ms (12 MHZ)

MOV R2, #0

MOV R1, #0

LOOP: DJNZ R1, LOOP

DJNZ R2, LOOP

DJNZ R3, LOOP

SJMP BLINK ;This is repeated forever, if you don't press reset...

END

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Лови, разбирайся ;)

LEDPIN BIT P2.0; your favorite port pin (LED preffered)
START CODE 8000H
TIME EQU 8; time constant in units of 250 ms (for 12MHz)
ORG START

BLINK: 
JNB P2.1, gorit; переходим к горит если ноль



CPL LEDPIN;toggle pin (Great, when connected to a LED!)
MOV R3, #TIME; wait for TIME * 125 ms (12 MHZ)
MOV R2, #0
MOV R1, #0
LOOP: DJNZ R1, LOOP
DJNZ R2, LOOP
DJNZ R3, LOOP
SJMP BLINK;This is repeated forever, if you don't press reset...


gorit:
SETB LEDPIN; зажигаем 
MOV R3, #TIME; wait for TIME * 125 ms (12 MHZ)
MOV R2, #0
LOOP1: DJNZ R1, LOOP1; даем паузу
DJNZ R2, LOOP1
JMP BLINK; возврвщаемся к  проверке и блинку


END

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Огромнейшее спасибо))) Сейчас попробую разобраться, если что, лови вопросы ;)

Не хочет что-то пахать((((

Изменено пользователем Andre
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Не хочет что-то пахать((((

Резистор в кнопке на землю не нужен! Ставятся только полапы на питание+

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

не хочет блин работать((

Ну не знаю, все работает :rolleyes: !

Тогда поподробнее...

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

у меня мигают квадратики (полярности) порта P2.0 при замыкании (размыкании) кнопки, не реагирует на кнопку вообще. А если убрать резистор со светодиода, то и кнопка не нужна ))) он сам мигает без нажатия. КАк вариант может ошибка алгоритма программы ?

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

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

А тебе, нужно чтобы мигал при нажатой? ну так горит и мигает вещи разные!

post-59428-1252830646_thumb.jpg

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

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

А резистор 200 Ом сделал, у меня стоит 1 кОм. Это влияет на что-то ?

На ток через СИД и силу его свечения, вообще, порты у 51 слабые и подобные вещи допустимы только в симуляторе, в реалии нужно включать через буфер.

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

Необходимо, чтобы при зажатии кнопки светодиод горел непрерывно (если возможно). Вообщем так, как ты описал при вложении своей схемы. Но не понимаю, почему у меня не работает(( ведь прошивка то у нас одинаковая!!

прикольно)) работает)) только вот различие в том, что я изменил тип резистора с цифрового на аналоговый и заработало. Не подскажешь в чем дело ? а первоначально нужно было чтобы резистор был цифровой.

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

прикольно)) работает)) только вот различие в том, что я изменил тип резистора с цифрового на аналоговый и заработало. Не подскажешь в чем дело ? а первоначально нужно было чтобы резистор был цифровой.

Непонятно, уточни, где ты взял "цифровой" резистор?

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

в свойствах резистора (при нажатии два раза левой кнопкой) в пункте Model Type устанавливаешь Digital

Все понял! используеться только при моделировании логики, и не учитывает реальных свойств резистора, для симулирования логических схем на основе напр. диодно резисторн логики.

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

Мужики, так светодиод включать нельзя! У 51 контроллера внутренняя подтяжка такая, что через неё нельзя зажечь светодиод. Как более-менее реальный вариант, это повесить светодиод катодом на вывод 0-го порта(у него нагрузочная способность выше), а анодом, через резистор на +питания.

Пока ты жив, надежда есть.

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

Мужики, так светодиод включать нельзя! У 51 контроллера внутренняя подтяжка такая, что через неё нельзя зажечь светодиод. Как более-менее реальный вариант, это повесить светодиод катодом на вывод 0-го порта(у него нагрузочная способность выше), а анодом, через резистор на +питания.

Большенство СИД светяться от тока в десятые доли милиА. Во внутреннем полапе 51 на портах более нулевого стоит резистор в несколько килоОм, так что, в учебных целях свечение мы наблюдать будем, для нормальных применений, как писал, нужен буфер...

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

Большенство СИД светяться от тока в десятые доли милиА. Во внутреннем полапе 51 на портах более нулевого стоит резистор в несколько килоОм, так что, в учебных целях свечение мы наблюдать будем...

В атмелевских 51 стоят резюки более 15 килоом, ты что веришь, что светодиод при этом засветится? :lol:

Иногда днём смотришь на нормально светящийся светодиод и не поймёшь, светится он или нет. А в том варианте наверное и ночью не поймёшь! :P

Пока ты жив, надежда есть.

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

mazzi, извини но это спор не о чем! Все написано выше! А про свечение СИДА от 5 В через резистор 15 К, у меня всегда в кармане контролька- сверхяркий СИД через резистор 16 КОм, светиться и от 380В и от 5 ;) можете проверить.

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

...сверхяркий СИД через резистор 16 КОм, светиться и от 380В и от 5 ;) можете проверить.

Поверю на слово. У меня нет под рукой сверхярких.

Пока ты жив, надежда есть.

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

mazzi, есть способ заставить светиться СИДы, на этих портах в "практически полный накал", да простят модератеры за ОФФтоп! Включить их не на вытекающий, а на втекающий ток, ограниченный резистором на уровне допустимого, для данного МК. Внизу то, стоит КМОПик сажающий порт на грунт, с нагрузочной способностью в один ТТЛ элемент...

Errare humanum est. Коли людЯм позволено, что же о нас то говорить!
 

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • ваше видение имеет крайне общий характер и может быть трактовано неоднозначно. Если вы готовы перематывать и изучать схемы коммутации обмоток, то это не так просто как вам кажется, и вступает в противоречие с вашим же ТЗ: Ни мотору, ни вам хорошо не будет. Поэтому, не ломайте мотор а подключайте как есть. Вращаться будет, медленно. Не понравится - сформируете более конкретные хотелки и начнете перекоммутировать. Никаких ухмылок. Вот программа для намотки. https://www.bavaria-direct.co.za/scheme/calculator/ Разбирайтесь.
    • По поводу времени ожидания последовательного порта. В случае обмена пакетами разной длинны, времени ожидания последовательного порта изменяется в соответствии с длинной пакета. Ну и подразумевается, что байты в пакете передаются без пауз (обусловлено тем, передача ведется через контроллер прямого доступа к памяти [ПДП]). А учитывая, что бутлодер только тем и занят, что принимает данные с последовательного порта, а затем записывает во флеш или еепром (время записи не более 5 мс),  ответ МК на пакет данных от ПС не должен составлять большого времени (<10мс). мне кажется здесь кроется какое-то логическое несоответствие.  
    • А как его проверить с помощью мультиметром если робочий например? Я по схеме собрал не зароботал УВЧ на КП 103 пробитый наверное ещё не проверял мультиметром нужно проверить,и подойдёт ли сюда полевой транзистор MMBF5459 в подобную схему УВЧ,если уж получиться что кп103 мерт 
    • И небыстрая. Срок поставки в ЧиДе небыстрый. (а где ещё нормальные брать).   
    • А я считал, что ВЫ появитесь не раньше 23 апреля. Выяснил, почему последний купленный чип (ATmega88), такой дешевый. При записи в ЕЕПРОМ по СРИАЙ постранично (4 байта на страницу) в некоторых страницах не записываются некоторые байты.   Хотя при записи по одному байту все пишется без ошибок.
    • и выпячивать глазки, глядя на показания... ужс такие индикаторы, неужто стандартных нынче мало ? Как пример p.s. теребонькать epprom пика конечно такое себе. внешнюю память бы конечно лучше бы использовали.  Я вот на основе девайса ra4nal собирал. Правда формирователь не запустился вовсе штатный, дурацкие кп313.
    • схема не для АТмега32. нужно смотреть даташит, и там смотреть куда подключаются все сигналы.
×
×
  • Создать...