• Объявления

    • admin

      Просьба всем принять участие!   24.11.2017

      На форуме разыгрывается спектроанализатор Arinst SSA-TG LC (цена 18500 руб). Просьба всем перейти по ссылке ниже и принять участие!
Onixx

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

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

ragnarok    0

спасибо за комментарии! Насчет руки и ее сопротивления, это не моя прихоть - это задание курсовика! я использую программу PROTEUS, в ней соберу схему и напишу прогу. Я понимаЮ что надо нарисовать макет с питанием, реле и клавой, я просто не знаю как это все соеденить!

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

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


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

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

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

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

В общем, в схеме не принципиально какой индикатор и кнопки использовать. Пожалуйста, помогите переделать код и схему. Что для этого необходимо от меня?

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


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

Всем привет, у меня такой вопрос. Как работает АЦП в микроконтроллере ADuC7027, а точнее как работает встроенный в него мультиплексор который перебирает каналы. В нём я использую 8 каналов. Заранее спасибо.

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


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

Есть программа передачи массива с одного компа на другой через 8251 в синхронном режиме, препод говорит, что есть две возможности синхронизировать два компа. 1 ждать DSR, вторую я не знаю. А вот моя реализация:

Но он говорит здесь есть ошибка связанная с ложной записью, кто-нибудь может подсказать в чем проблема? Пожалуйста помогите, а то достало уже. Нет ни книг описывающий как писать программы для 8251, ни препод не написал хотя бы методичку как писать.

Передатчик

mvi a, 82h	; INIT ВВ55 
out 83h 
mvi a, 36h	; INIT ВИ53 
out 87h 		; CT0, режим 3, 2 байта 
mvi a, 0a7h 	; мл. байт коэф. пересчета 
out 84h 
mvi a, 00h	; ст. байт  
out 84h 
lxi d, 3377h	; синхросимволы 
xra a 		; INIT ВВ51  
out 89h 		; поиск CI 
out 89h 
out 89h 
mvi a, 40h	; сброс 
out 89h 
mvi a, 08h	; синхр.режим, 7 бит, 2 синхр.си
out 89h 		; внутр. синхр., нет контроля 
mov a, d 	; первый синхр. символ 
out 89h 
mov a, e 	; второй синхр. символ 
out 89h 
in 88h 		; ложное чтение 
mvi a, 31h 	; TxEN ER RTS 
out 89h 
out 88h 		; ложная запись 
lxi b, 100h 	; коэф. задержки 
w1: in 89h 	; ждем TxRDY (CTS)
ani 01h 
jz w1 
w2: dcr c 	; задержка
jnz w2 
dcr b 
jnz w2 
w3: in 89h 	; ждем TxRDY 
ani 01h 
jz w3 
mvi a,55h					 ; Тупо выводим 55h
out 88h 		; выводим 
dcr b 
jnz w3 		; цикл 
rst7


Приемник

mvi a, 76h ; INIT ВИ53 
out 87h 	; CT1, режим 3, 2 байта
mvi a, 0a7h; мл. байт коэф. пересчета  
out 85h 
mvi a, 00h ; ст. байт  
out 85h 
lxi d, 3377h ; синхросимволы  
xra a 	; INIT ВВ51  
out 89h 	; поиск CI 
out 89h 
out 89h 
mvi a, 40h ; сброс 
out 89h 
mvi a, 08h; синхр. режим, 7 бит, 2 синхр.симв. 
out 89h 	; внутр. синхр., нет контроля 
mov a, d ; первый синхр. символ 
out 89h 
mov a, e ; второй синхр. символ 
out 89h 
in 88h 	; ложное чтение 
mvi a, 94h; EN ER RxEN 
out 89h 
lxi h, 0899h ; пишем в память с 0900h 
mvi b, 00h ; прием 256 символов 
w1: in 89h ; ждем DSR 
ani 80h 
jz w1 
mvi a, 06h ; RxEN DTR 
out 89h 
w2: in 89h; ждем RxRDY 
ani 02h 
jz w2 
in 88h 	; читаем 
cmp d 	; сравниваем с 1-м синхр.симв. 
jz w2 
cmp e 	; сравниваем со 2-м синхр.симв. 
jz w2 
inx h 			   ; HL++ 
mov m, a ; пишем в память 
dcr b 	; B-- 
jnz w2 	; цикл 
rst7

[/code]

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


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

Есть программа передачи массива с одного компа на другой через 8251 в синхронном режиме, препод говорит, что есть две возможности синхронизировать два компа. 1 ждать DSR, вторую я не знаю. А вот моя реализация:

Но он говорит здесь есть ошибка связанная с ложной записью, кто-нибудь может подсказать в чем проблема? Пожалуйста помогите, а то достало уже. Нет ни книг описывающий как писать программы для 8251, ни препод не написал хотя бы методичку как писать.

Передатчик

mvi a, 82h	; INIT ВВ55 
out 83h 
mvi a, 36h	; INIT ВИ53 
out 87h 		; CT0, режим 3, 2 байта 
mvi a, 0a7h 	; мл. байт коэф. пересчета 
out 84h 
mvi a, 00h	; ст. байт  
out 84h 
lxi d, 3377h	; синхросимволы 
xra a 		; INIT ВВ51  
out 89h 		; поиск CI 
out 89h 
out 89h 
mvi a, 40h	; сброс 
out 89h 
mvi a, 08h	; синхр.режим, 7 бит, 2 синхр.си
out 89h 		; внутр. синхр., нет контроля 
mov a, d 	; первый синхр. символ 
out 89h 
mov a, e 	; второй синхр. символ 
out 89h 
in 88h 		; ложное чтение 
mvi a, 31h 	; TxEN ER RTS 
out 89h 
out 88h 		; ложная запись 
lxi b, 100h 	; коэф. задержки 
w1: in 89h 	; ждем TxRDY (CTS)
ani 01h 
jz w1 
w2: dcr c 	; задержка
jnz w2 
dcr b 
jnz w2 
w3: in 89h 	; ждем TxRDY 
ani 01h 
jz w3 
mvi a,55h					 ; Тупо выводим 55h
out 88h 		; выводим 
dcr b 
jnz w3 		; цикл 
rst7


Приемник

mvi a, 76h ; INIT ВИ53 
out 87h 	; CT1, режим 3, 2 байта
mvi a, 0a7h; мл. байт коэф. пересчета  
out 85h 
mvi a, 00h ; ст. байт  
out 85h 
lxi d, 3377h ; синхросимволы  
xra a 	; INIT ВВ51  
out 89h 	; поиск CI 
out 89h 
out 89h 
mvi a, 40h ; сброс 
out 89h 
mvi a, 08h; синхр. режим, 7 бит, 2 синхр.симв. 
out 89h 	; внутр. синхр., нет контроля 
mov a, d ; первый синхр. символ 
out 89h 
mov a, e ; второй синхр. символ 
out 89h 
in 88h 	; ложное чтение 
mvi a, 94h; EN ER RxEN 
out 89h 
lxi h, 0899h ; пишем в память с 0900h 
mvi b, 00h ; прием 256 символов 
w1: in 89h ; ждем DSR 
ani 80h 
jz w1 
mvi a, 06h ; RxEN DTR 
out 89h 
w2: in 89h; ждем RxRDY 
ani 02h 
jz w2 
in 88h 	; читаем 
cmp d 	; сравниваем с 1-м синхр.симв. 
jz w2 
cmp e 	; сравниваем со 2-м синхр.симв. 
jz w2 
inx h 			   ; HL++ 
mov m, a ; пишем в память 
dcr b 	; B-- 
jnz w2 	; цикл 
rst7

[/code]

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


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

Здравствуйте! Уважаемые форумчане, скажите как управлять светодиодным драйвером

MIB5026 с помощью МК-Atmega32 (4 порта)

У MIB5026 есть 5 входов управляющих сигналов:

1)CLK 2)SDI 3)LE 4)OE 5)Вход для резистора задающего ток на 16-ти выходах

post-54440-1212507246_thumb.jpg

post-54440-1212507260_thumb.jpg

На сколько я понимаю

1)На вход CLK мы подаем тактовую частоту

2)Если на SDI приходит +5В и на CLK в течении этого времени произошло нарастание

переднего фронта, то по соответствующему номеру импульса CLK включается

соответствующий светодиод, и т.д. до LE

3)LE - +5 задает момент окончание приема SDI (на одном форуме читал что он(LE) не работает)

4)время на которое загорятся светодиоды

А теперь вопрос, уважаемые знатоки :rolleyes:

Что в таблице обозначает Dn?

Получается, мне надо тратить 4 ножки МК на подключение всего одного драйвера?

И что делать, если у меня имеется матрица светодиодов и мне нужно соединить 32 драйвера

(еще несколько контроллеров, либо ключ поставить, либо еще что либо)?

Просба давать ответы только с наборами Atmega + MIB

а тут и даташит естьmbi5028.pdf

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

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


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

А как на счет выложить ссылку на даташит этой самой MIB5026?

По делу.

Обрати внимание на вывод SO.

Цепляешь его к выводу SI следующего за ним драйвера и радуешься жизни.

LE должен переписывать из сдвигового регистра принятую информацию в паралельный.

Его дергаешь после передачи данных для всех драйверов.

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


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

Обрати внимание на вывод SO.

Цепляешь его к выводу SI следующего за ним драйвера и радуешься жизни.

LE должен переписывать из сдвигового регистра принятую информацию в паралельный.

Его дергаешь после передачи данных для всех драйверов.

Спасибо Migray, а насчет логики действия этого MIB'a я правильно написал выше?

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


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

Почти правильно.

На вход SI выдаем информацию

На вход CLK мы подаем импульсы, по которым сдвигается информация в сдвиговом регистре

Из сдвигового регистра инфа выталкивается на вывод SO, для каскадирования микросхем.

Синхронизация не обязана быть какой-то фиксированной частотой.

Можно выставить инфу, на что-то другое отвлечься, потом и CLK перебросить.

Во время всего этого процесса, если LE в "0", информация на выходах не меняется.

После того, как записали информацию во все сдвиговые регистры, даем импульс записи на вывод LE

По этому импульсу инфа переписывается в регистры хранения, обычные паралельные "защелки".

Хотя в принципе LE независим от CLK, и дергать его можно сколько хочешь, что-бы наблюдать процесс :)

OE разрешает отображать информацию, хранящуюся в "защелках".

Можно подвязать к постоянному уровню и не париться.

В целях экономии батарей этим выводом можно отключать индикацию в переносных приборах.

Или регулировать яркость, подавая ШИМ-сигнал.

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


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

Migray, спасибо за ответ. А вот еще такой вопрос: Как управляется MIB5028?

Если я правильно понимаю, имеется 2 режима, 1-ый обычный как для MIB5026.

2-ой - режим управления током

При подаче 101 на LE, включается выбор режима,

и если со следующим передним фронтом CLK на OE приходит:

1-то включается режим изменения тока.

0- включается обычный режим.

В режиме изменения тока, по SDI мы задаем значение каждого бита

0 бит не используется, 1 бит HC, 2 бит CC0 , 2 бит CC1 ... , 7 бит CC5,

7-15 биты не используются.

рассчитываем коэффициенты

G = (1 + HC) x (1 + D/64)/2

D = CC0 x (25^5)+ CC1 x (24^4)+ CC2 x (23^3)+ (CC3 x 22^2)+ CC4 x (21^1)+ CC5 x (20^0);

(0.63Volt x G / Rext ) x 15. - выходной ток на ВСЕХ выходах микросхемы

Затем посылаем 1 на LE и значение тока сохраняется

Потом посылаем на LE 101 на OE 1 и переходим в обычный режим.

И еще один вопрос: при большом количестве параллельно включенных MBI2028 нужны ли какие-либо дополнительные элементы (кроме токоограничительных резисторов для диодов и Rext) может фильтры какие- нибудь?

OE разрешает отображать информацию, хранящуюся в "защелках".

Можно подвязать к постоянному уровню и не париться.

В целях экономии батарей этим выводом можно отключать индикацию в переносных приборах.

Или регулировать яркость, подавая ШИМ-сигнал.

Каким образом можно регулировать? OE воспринимает всего два уровня

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


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

Ребята, горю!!! Срочно нужна самая простая схемка схедующего типа.

На входе МК есть три ключа. на выходе 4 лампочки. При замыкании первого ключа, горит первая лампочка, при замыкании второго - вторая, при замыкании третьего - 3-я лампочка.

Когда замкнуты все три ключа с выхода МК поступает сигнал на др устройство. Вместо устройства для наглядности нужно использовать еще одну лампочку.

Нужно всю эту схему представить в EWB (Electronic WorkBench). Напряжение 12В, элементы не критичны, главное не использовать ничего лишнего. Ребята, срочно нужно!!! Помогите!!!

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


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

Какой тип выходного сигнала на другое устройство ? И скажите применение этой девайсины.

И почему именно МК ? Это и без МК можно сделать.

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


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

Да без разницы. Я собрал в EWB схемку на логическом "И". Но преподу не понравилось. Сказал, чтоб было на МК. На выходе сигнал любой. Другое устройство должно включаться в зависимости от сигнала на выходе МК: есть сигнал - ус-во работает, нет сигнала - курит)))

Изменено пользователем Alex
Зачем править посты ?

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


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

Тогда к Вам вопрос. Вы же знаете прекрасно где нужно постить по студенческой теме. Почему новую тему создаёте ?

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


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

Представим, что я не студент)))

Есть какие-нить соображения? Какие есть МК в EWB для решения данной задачки???

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


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

Насколько я помню, у этих микросхем встроенные источники тока, поэтому токоограничивающие резисторы не нужны.

Достаточно с помощью Rext или цифрового способа задать ток, и он будет поддерживаться на этом уровне для всех включенных каналов.

При включении большого числа микросхем нужно учитывать нагрузочную способность выводов МК, которые будут управлять LE, OE и CLK

Возможно что придется сюда поставить буферные элементы.

ШИМ - это Широтно-Импульсная Модуляция, т.е. мы меняем ширину импульса при неизменной частоте.

Для примера возьмем частоту 100 Гц, что-бы не видеть мерцания.

Период равен 10 мсек.

Если мы будем выдавать разрешающий сигнал на OE в течении 1 мс, а 9 мс - запрет, то на светодиоды попадет 10% энергии.

Соответственно 5 мс импульс и 5 мс паузы - 50% мощности и т.д.

Варьируя ширину импульса на ОЕ можно в довольно широких пределах менять яркость светодиодов, при одном и том-же установленном Rext токе.

По крайней мере на TLC5921 это замечательно работало.

Нужно только помнить, что в режим стабилизации тока микросхема мгновенно не войдет, и задавать частоту ШИМ в десяток килогерц :)

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


Ссылка на сообщение
Поделиться на других сайтах
Alex    517
Ребята, горю!!! Срочно нужна самая простая схемка схедующего типа.

На входе МК есть три ключа. на выходе 4 лампочки. При замыкании первого ключа, горит первая лампочка, при замыкании второго - вторая, при замыкании третьего - 3-я лампочка.

Когда замкнуты все три ключа с выхода МК поступает сигнал на др устройство. Вместо устройства для наглядности нужно использовать еще одну лампочку.

Нужно всю эту схему представить в EWB (Electronic WorkBench). Напряжение 12В, элементы не критичны, главное не использовать ничего лишнего. Ребята, срочно нужно!!! Помогите!!!

Дак схема то не проблема, даже думаю для тебя. А прошивку для МК сам напишешь ?

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


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

А прошивка это уже, как говорится, не моя забота))) Моя задача схему собрать))) Но я уже разобрался, срочно нужно было на понедельник. Уже разобрался.

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


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

Доброго времени суток ! нужна помощь.

Цель задачи. Управлять с компьютера набором моторчиков( от 1 до 8) через rs232.

Что имеется:

1)компьютер с выходом RS-232. (никаких улучшений типа синего зуба или юсб не требуется)

2)Набор логики которая получает два бита и по ним решает куда крутить (или не крутить) моторчик

Подключил это «чудо» к параллельному выходу lpt. Всё работает.

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

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


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

2 g_arkady

Преобразователь интерфейса (MAX232) + любой микроконтроллер, лучше, если с аппаратным usart (к примеру, какая-нибудь atmega).

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


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

для такой простой задачи можно обойтись и без контроллера, с помощью регистра сдвига 74НС595

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


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

Если 2 бита, то и регистра сдвига не надо, одного ADM/MAX 232 вполне хватит.

Если 2-битовое устройство нужно на каждый моторчик, то тогда да, сдвиговый регистр потребуется.

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


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

как в CCW-PICC в процедуре delay_xx(a) заставить работать переменную "а", всё время какое я бы значение "а" не придал, оно одинаково (по осцилограмме) и не сопадает с тем значением которое должно быть на самом деле (два пика, в одном через переменную, в другом напрямую (т.е. delay_xx(100)) и сравнил осцилограммы, они на порядок различаются по врмени задержке...

подскажите как заставить работать их равнозначно ?

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


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

В заголовочном файле прописана тактовая частота?

Например

#use delay (clock=4000000)

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


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

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

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

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

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

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

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

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

Загрузка...

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

    • Автор: east1095
      Здравствуйте, давно читаю форум, зарегистрировался только сегодня, хочу попросить советов у вас для очередной работы.
       
      1. Мощность 30 кВт, напряжение 2 кВт, 15 А ток.
      2. Планирую полумост;
      вопросы:
      1. Шим контроллер должен поддерживать регулировку к.заполнения, с заданным dU/dT, это планирую делать с МК, потому что в случае пробоя быстроействуюий ключ даст сигнал об остановке преобразователя, потом будет строб, потом пуск источника, при этом он должен выйти на напряжение на котором произошла остановка работы с более коротким (быстрее) dU/dT, это можно реализовать с МК, завести сигнал с датчика КЗ.
      При этом нужна регулировка напряжение и регулировка уставки максимального тока(в приципе в схеме защиты от КЗ она уже реализована)
       
      2. Полумоста хватит на такую мощность?
      3. Можно ли с помощью софта рассчитать трансформатор на такие характеристики? Lite_calcIT не осилил такую задачу.
      4. 1 трансформатор или набор модулей соединенных последовательно для обеспечения нужного напряжения?
      5. Ткните носом в краткую но понятную ветку/статью о резонансных и квазирезонансных и других типах схем, т.к. я недостаточно в этом подкован, немного другие интересы, однако.
       
      Заранее спасибо!
    • Автор: sergeistydent
      Всем привет , ребята подскажите такую ситуацию надо откомпилить прошивку в среде BASCOM-AVR а она весит 6 килобайт демо версия не пропускает, ну как бы там только одно значение надо изменить а в готовом хексе не могу найти, точнее я его вижу их там два значения я не знаю кого изменить ну это я так думаю что знаю, значение находитса в еепроме это цифра 70 она же в 16ричной 46 но в моем хексе две цифры 46 чтобы было проще понять я строю регулятор вентилятора пропорциональный он на меандре (сайте) там значение для старта нужно подобрать опытным путем от 55 до 95 вот его то нужно изменить в готовом хексе оно 70 как подскажете решить вопрос без баскома или без него некак
    • Автор: timoxa87
      Здравствуйте! Я занимаюсь организацией страйкбольных игр! 
      Идея: Сделать устройство работающее на радио частотах передающее информацию по рациям(цифровым, аналоговым)

      Задача: Нужно изготовить устройство №1 оборудованное двумя кнопками А и Б работающее на радио частотах от аккумуляторной батареи . При нажатии на кнопку А или Б всем по рации передается информация, что нажата кнопка А или Б! Нужно изготовить устройство №2 оборудованное двумя лампочками(индикаторами)  которое дублирует судьям соревнованию, что на устройстве №1 нажата кнопка А или Б

      Требования
      1. Устройство №1 должно передавать в радиусе 200 метров на устройство №2 цифровой сигнал , чтобы исключить наводки или помехи!
      2. Устройство №1 должно дублировать сигнал для аналоговых раций в виде звукового сообщения "Кнопка А включена" или "Кнопка Б включена" 



      Цена договорная!
    • Автор: timoxa87
      Здравствуйте! Помогите для игры в страйкбол/пейнбол доработать устройство. Мы изготовили устройство(в коробочке) оборудованное двумя кнопками 1 и 2 с цифровым таблом, при нажатии на кнопку 1 для нее включается свой секундомер,при нажатии на кнопку 2  секундомер для кнопки 1 останавливается и включается секундомер для кнопки 2. Секундомеры для обоих кнопок накопительные. Когда секундомер доходит до 25 мин срабатывает громкий сигнал!
      Как сделать так чтобы информация о переключении кнопок и секундомере дублировалась по радио сигналу на устройство оборудованное двумя лампочками и  цифровым таблом, дистанция 200 метров ,сигнал должен быть мощный так как встречаются постройки из кирпича и бетона. Если есть мастер который может сделать такое устройство, отзовитесь!!!
    • Автор: timoxa87
      Здравствуйте! Помогите для игры в страйкбол/пейнбол доработать устройство. Мы изготовили устройство(в коробочке) оборудованное двумя кнопками 1 и 2 с цифровым таблом, при нажатии на кнопку 1 для нее включается свой секундомер,при нажатии на кнопку 2  секундомер для кнопки 1 останавливается и включается секундомер для кнопки 2. Секундомеры для обоих кнопок накопительные. Когда секундомер доходит до 25 мин срабатывает громкий сигнал!
      Как сделать так чтобы информация о переключении кнопок и секундомере дублировалась по радио сигналу на устройство оборудованное двумя лампочками и  цифровым таблом, дистанция 200 метров ,сигнал должен быть мощный так как встречаются постройки из кирпича и бетона. Если есть мастер который может сделать такое устройство, отзовитесь!!!