Цифровой частотомер на x51 (AT89S51)

Обсуждаем цифровые устройства...
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Если таймер настроить на счетчик, то в нем будет число боле 256, как его преобразовать в двоично-десятичное?
Изображение
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6319
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение Jack_A »

LawManiak писал(а):Если таймер настроить на счетчик, то в нем будет число боле 256, как его преобразовать в двоично-десятичное?
Сто раз этот вопрос в форуме перетирали. Разделить на единицы - десятки - сотни и т.д., преобразовать в код индикатора -- и на табло.
Строчка "Преобразование в двоично-десятичный" в поисковике дает много разумного и полезного.
Реклама
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Поискал, вразумительного нашел не много. Я в ассблере вообще не очень.
Может есть какой-то конкретный пример?
Изображение
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6319
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение Jack_A »

Могу, но только для AVR. Под 51-й почти никогда не пис'ал.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

LawManiak, в поисковике лучше набрать строчку BIN BCD MCS51 вариантов масса..

Можешь вот тут почитать: http://radiokot.ru/forum/viewtopic.php?f=20&t=17812 :)
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Реклама
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

В таком случае такой вопрос. Ведь команду div мы можем применять только к A и B.
Какое максимальное число можно вместить в них?
могу я допустим 4х байтовое число записать в аккумулятор?

Jack_A
Если не сложно, хоть посмотрю логику...
Изображение
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6319
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение Jack_A »

Написано для младших моделей AVR, у которых нет аппаратного деления.

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

 ; Исходное число в R25(ст),R24(мл) .
 ; Результат - 5 байт по указателю Z (ст -> мл) .
 ; В массиве числа - НЕ СИМВОЛЫ !
 ; R25,R24 не сохраняются.
subt:	push	r16
	push	r17
	push	r18
	tst	r24
	brne	st1
	st	z+,r24
	st	z+,r24
	rjmp	part2
 ; Если R24=0, первые две цифры = 0,
 ; переход на 2-ю часть
	;
st1:	ldi	r18,high(10000)
	ldi	r17,low(10000)
	rcall	st_s ; выделили десятки тысяч
	ldi	r18,high(1000)
	ldi	r17,low(1000)
	rcall	st_s ; выделили тысячи
part2:	ldi	r18,high(100)
	ldi	r17,low(100)
	rcall	st_s ; выделили единицы
	;
	ldi	r16,0
st10:	subi	r24,10
	brcs	st15
	inc	r16
	rjmp	st10
st15:	subi	r24,-10
	st	z+,r16 ; распилили R24 на десятки - единицы
	st	z+,r24
	pop     r18
	pop     r17
	pop     r16
	ret
 ; ====
st_s:	ldi	r16,0    ; Подпрограмма деления `
sts05:	sub	r24,r17  ; R25,R24 на R18,R17
	sbc	r25,r18  ; Частное в R16 -> [Z+]
	brcs	sts10    ; Остаток в R25,R24
	inc	r16
	rjmp	sts05
sts10:	add	r24,r17
	adc	r25,r18
	st	z+,r16
	ret
	;
LawManiak писал(а):В таком случае такой вопрос. Ведь команду div мы можем применять только к A и B.
Какое максимальное число можно вместить в них?
могу я допустим 4х байтовое число записать в аккумулятор?
А можно в один стакан налить молоко, сок, водку и рассол , каждого по 200гр?
Моя прога для 2-байтового числа. Если надо 4 байта, ее надо модифицировать.
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

А теперь самый глупый вопрос. Сколько мне нужно выделять байт под 4х разрядное число в пределах 1к?
Изображение
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Вот тут нашел в одной книге пример использования в двоично-десятичный код, но не могу разобраться как же это реализовать в моей программе...
Допустим я получаю число 876 и записываю его в какую-то переменную tmp, как мне разбить его для индикации?...

Изображение
Изображение
Изображение
Изображение
Изображение
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6319
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение Jack_A »

LawManiak писал(а):А теперь самый глупый вопрос. Сколько мне нужно выделять байт под 4х разрядное число в пределах 1к?
Даю умный ответ на глупый вопрос : для 4-значного десятичного числа 0...9999 в его двоичном виде нужно 2 байта ( 0...0х270F ), которые обеспечат даже больший диапазон 0...65535
:)

Посмотрел вышеприведенный код - с моим практически 1 : 1. Только в части "десятки - единицы" не догоняю, бо практики с 51-ми почти не было.
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Подскажите, пожалуйста назначение этой схемы и из каких соображений для неё рассчитываются элементы? Мне её поставили знающие люди, сказали что так нада, что оно работает, но объяснять не стали... Оно у меня стоит на входе, с неё сигнал поступает на порт микроконтроллера...
Изображение
Изображение
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

Это входной усилитель сигнала с ограничением по входу..
Двухсторонний ограничитель собран на VD1 и VD2, на VT1 собран усилитель-инвертор, R4 задаёт рабочую точку для транзистора, а заодно обеспечивает ООС..
С8 - развязка по постоянному току..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Можно поподробнее как в таком случае рассчитывается коэффициент усиления, зачем стоит R2 и почему именно 100 Ом и для чего 470 Ом на питании?
Изображение
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

LawManiak писал(а):470 Ом на питании?
Так не говорят, R5 является нагрузкой для VT1, т.е. на нём будет усиленный по амплитуде и проинвертированный входной сигнал..
LawManiak писал(а):ачем стоит R2
R2 это защитное и ограничивающее сопротивление, оно стоит последовательно со входом.
При больших входных сигналах /больше прямого напряжения на VD1 и VD2 примерно 0.6 вольта/ эти диоды открываются и начинают ограничивать напряжение на базе транзистора, а лишнее напряжение рассеивается на R2, заодно R2 ограничивает ток через диоды что-бы их не пробило..

Коэффициент усиления зависит от Кусиления транзистора и отношений R4 и R5..
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

Да вот ещё:
R4 должен быть со звёздочкой, т.е. его при настройке надо будет подбирать..
от номинала C8 зависит частотный диапазон твоего прибора, а т.к. у тебя кГц, то ёмкость надо увеличить..
Вот можешь тут посмотреть-почитать.. http://www.qrz.ru/schemes/contribute/co ... /ch2.shtml
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Таким образом входной сигнал будет отграничен примерно в пределах +/- 0.6В?
Я тут поднял свои старые записи, пришел к выводу, что коэффициент усиления в этой схеме зависит фактически только от R4 и R2, тобишь Uвых=Uвх*Rос/Rг
правильно я понимаю? в этом случае коэффициент усиления получается 470, да? но тогда что определяет сопротивление коллектора... По идее оно задает ток питания транзистора, но как его рассчитать...
Параметры транзистора:
Наимен. КТ315А
тип n-p-n
Uкбо(и),В 25
Uкэо(и), В 25
Iкmax(и), мА 100
Pкmax(т), Вт 0.15
h21э 30-120
Iкбо, мкА 0.5
fгр., МГц 250

И почему R2 100, это какое-то стандартное значение?
Изображение
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

LawManiak писал(а):Таким образом входной сигнал будет отграничен примерно в пределах +/- 0.6В?
Не входной сигнал, а сигнал на базе транзистора..
LawManiak писал(а):только от R4 и R2
Нет.. R2 тут вообще не при чём..
LawManiak писал(а):что определяет сопротивление коллектора... По идее оно задает ток питания транзистора, но как его рассчитать...
Нет понятия "ток питания транзистора", есть - ток коллектора..
Он не расчитывается, а при расчётах его просто задают..
Вот смотри:
Входной уровень единицы для микросхемы максимальный, берём 3 вольта, это напряжение нам надо получить когда на вход усилителя ничего не подаётся../измеряемый сигнал в смысле/
Т.е. на коллекторе транзистора относительно корпуса мы должны получить 3 вольта../этот уровень устанавливается подбором R4/
На R5 тогда будет 5-3=2 вольта, ток коллектора транзистора будет 2/470=4.25мА

Когда у нас будет подаваться входной сигнал, то на коллекторе напряжение будет относительно 3-х вольт туда-сюда колебаться, например от 0.5 до 5 вольт...
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

так... теперь я снова в тупике...
как же мне рассчитать коэффициент усиления для этого упт?
просто мне нужно сделать расчет всех элементов этой схемы и указать почему они тут стоят и для чего...
Изображение
Аватара пользователя
МитяРа
Модератор
Сообщения: 11492
Зарегистрирован: Чт дек 11, 2008 14:52:26
Откуда: град Нижний

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение МитяРа »

LawManiak писал(а):просто мне нужно сделать расчет всех элементов этой схемы и указать почему они тут стоят и для чего..
Для чего мя те вроде про всё написал, а насчёт расчётов - ищи расчёт этой схемы включения транзистора..
Блин, даже щас и не вспомню, как это включение называется.. :cry:
[img]http://radiokot.ru/forum/download/file.php?id=93376[/img][i][color=#000080][size=85]Между людьми возникает напряжение, если у них разный потенциал...[/size][/color][/i]
Аватара пользователя
LawManiak
Открыл глаза
Сообщения: 62
Зарегистрирован: Пн мар 14, 2011 18:34:23
Откуда: Смоленск
Контактная информация:

Re: Цифровой частотомер на x51 (AT89S51)

Сообщение LawManiak »

Вообще я предполагал что здесь вот эта схема включения:
Изображение
но ты говоришь что по другому, так что я даже не знаю...
Последний раз редактировалось LawManiak Чт июн 02, 2011 15:21:49, всего редактировалось 1 раз.
Изображение
Ответить

Вернуться в «Цифровая техника»