Обсуждаем контроллеры компании Atmel.
Ответить

Re: 3-х разрядный ампервольтметр на атмега

Вс май 09, 2021 06:49:45

у меня был датчик оборотов, у ТС вольтметр постоянного тока - там 0 не добиться, а чтобы начать мерять в обе стороны схему придётся усложнять и ему и мне... но даже и в этом случае выходной диапазон с обеих сторон на х-1 подрезается (где х - делитель).

так ведь и это не поможет... (предлагаешь ТСу с батарейкой ходить, чтоб вольтметр до 0 сбрасывать? :)))

а мне наверно проще было под экранчиком табличку сделать "если показания упали до 16 - вал остановлен" так чтоли? так ведь вал может и не быть остановлен, а уже снова раскрутиться до 32 об/мин (при коэффициенте фильтрации 17)...

хотя в том случае я применил и не БИХ, а КИХ фильтр с длиной равной количеству зубьев на венце вала - так он очень хорошо подавляет джиттер, вызванный неравномерным расположением зубьев на валу.

Re: 3-х разрядный ампервольтметр на атмега

Вс май 09, 2021 08:51:44

Наверное, эта пара строк вас смутила:
Код:
  34:   97 fd          sbrc   r25, 7
  36:   01 96          adiw   r24, 0x01   ; 1

Это стандартная коррекция при инвертировании знака числа.
Это неверно.


Знак меняет вычитание числа из нудя, а не эта конструкция. Для одного байта, к примеру -45 (0xD3) это 0x0-0xD3, получаем 0х2D (45)

PS: Однако, с последующим сложением это равнозначно предварительному переводу в дополнительный код, и результат верный

Re: 3-х разрядный ампервольтметр на атмега

Вс май 09, 2021 22:48:58

lizard66 писал(а):PS: Однако, с последующим сложением это равнозначно предварительному переводу в дополнительный код, и результат верный
Вот без последующего сложения

Re: 3-х разрядный ампервольтметр на атмега

Пн май 10, 2021 00:05:20

Dimon456 писал(а):temp = ((int8_t)(temp)/ 2); работает
у и как эта твоя фигня работает?
если 0xEC после арифметического сдвига вправо сразу дают 0xF6, без всяких
sbrc r24, 7
и без всяких
subi r24, 0xFF ; 255
?

Re: 3-х разрядный ампервольтметр на атмега

Пн май 10, 2021 07:32:01

Starichok51 писал(а):у и как эта твоя фигня работает?
В чем проблема? Вы по чему мне это приписали?
Код:
Out_To_Display += (ADC - Out_To_Display) / 2;
Вот у него и спрашивай, как его фигня работает.

Re: 3-х разрядный ампервольтметр на атмега

Пн май 10, 2021 09:28:38

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

Re: 3-х разрядный ампервольтметр на атмега

Пн май 10, 2021 09:32:59

Dimon456 писал(а):как его фигня работает

эта фигня не моя, но работает замечательно

Re: 3-х разрядный ампервольтметр на атмега

Пн май 10, 2021 09:40:41

Вот без последующего сложения[spoiler]Исходные данные
Код:
volatile uint8_t temp;
      temp = -20; (0xEC)
Во всех случаях ожидаю на выходе увидеть число -10 (0xF6)
Правильный результат получается только при явном приведении типов.


Думаю проблема в том, что Вы пытаетесь присвоить беззнаковому отрицательное значение, в результате temp принимает не -20, а 236 и явное приведение превращает это в -20

Re: 3-х разрядный ампервольтметр на атмега

Вт май 11, 2021 20:43:39

вот так оно это выглядит

диапазон питающего от +15...35в от импульсного, при этом тянет от 75 до 120ма, от меньшего больше.

пульсации питающего +5в и опорного +4в5

измерение входного постоянного напряжения и тока около 30а

нулёвый ток

ток около 100а

Re: 3-х разрядный ампервольтметр на атмега

Ср май 12, 2021 20:32:41

Карбофос, спасибо вам большое! :beer: из всех пытавшихся помочь мне, реально я только смог применить на практике только ваши поправки в исходный код!

Re: 3-х разрядный ампервольтметр на атмега

Ср июл 28, 2021 10:12:55

Вложения
main.c
(9.61 KiB) Скачиваний: 107

Re: 3-х разрядный ампервольтметр на атмега

Чт ноя 09, 2023 11:58:38

наиновейшая кодировка для 3-хразрядной (10/10bit) лёд-головы

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

Re: 3-х разрядный ампервольтметр на атмега

Ср ноя 15, 2023 00:03:56

колхоз имени ордена мужа крупского "1000 лет без урожая"

Вложения
100v_35a.rar
(146.69 KiB) Скачиваний: 15
Ответить