ATmega + 12bit ADC
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
ATmega + 12bit ADC
Пламенный честной публике
мне снова жидкость в голову ударила и сразу после этого, ни секунды немедля, я решил что пора бы уже оцифровать ток с датчика 12-битным внешним ацп mcp3201, т,к. разрешения встроенного 10-битного нехватайет. нужно цифровать диапазон 0...200а с разрешением 0.1а, т.е. вывод на 4-диджитный лёд с точкой во втором младшем разряде. 0.1...199.9а. встроенный цифрует напряжение. до этого я делал два 10-битных и ничтоже сумяшися решил пришить козью голову где-то сбоку к овце. но... меня замучили остатки совести и я решил посоветоваться с си-программистами по поводу: все ли я правильно сделал? а может быть есть более красивые места для козей головы? схема в протеусе и код в блокнотике
- Вложения
-
- atmega_8_av_meter_var_0.rar
- (27.7 КБ) 277 скачиваний
-
- main.c
- (10.75 КБ) 277 скачиваний
- Реклама
Re: ATmega + 12bit ADC
[uquote="charchyard",url="/forum/viewtopic.php?p=4069664#p4069664"]4-диджитный лёд[/uquote]
а это что за лёд такой? Новый вид не скользкого льда?
а это что за лёд такой? Новый вид не скользкого льда?
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: ATmega + 12bit ADC
сразу бросается в глаза
Код: Выделить всё
if((Adres_Reg & 0x80)==0x80)
if(Adres_Reg & 0x80)Код: Выделить всё
for(V=5;V<8;V++)
{
Data_In[V] = Digit[V];
Send_max7219(V,Data_In[V]);
}
for(V=5;V<8;V++)
{
Send_max7219(V,Digit[V]);
}ohmycode!
primuss3.com
primuss3.com
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
привет slav0nсразу бросается в глаза
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: ATmega + 12bit ADC
бросается в глаза лишнее и бесполезное масло масляное.
да там еще есть что кромсать
драйвер нехай будет на софтовой шине, какая ему разница, да и АЦП тоже неважно
а шить прошивку надо просто попробовать и убедиться как повлияет на процесс DOUT MCP3201
да там еще есть что кромсать
драйвер нехай будет на софтовой шине, какая ему разница, да и АЦП тоже неважно
а шить прошивку надо просто попробовать и убедиться как повлияет на процесс DOUT MCP3201
ohmycode!
primuss3.com
primuss3.com
- Реклама
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
реж лишнее я благословляюда там еще есть что кромсать
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
понял slav0n спасибо
кста на соседнем форуме меня модераторс забабанил за ВНИМАНИЕ! : Тему нужно создавать с осмысленным заголовком, вкратце отражающим суть проблемы... а там нету проблемы от слова совсем. т.е. такие темы вообще запрещены к публикации, а если безмозглый "грамматическая ошибка на уровне 4 класса" решил расколупать кривыми клешнями настоящую пром электронику даже без тестера, то это проблема достойна публикации
кста на соседнем форуме меня модераторс забабанил за ВНИМАНИЕ! : Тему нужно создавать с осмысленным заголовком, вкратце отражающим суть проблемы... а там нету проблемы от слова совсем. т.е. такие темы вообще запрещены к публикации, а если безмозглый "грамматическая ошибка на уровне 4 класса" решил расколупать кривыми клешнями настоящую пром электронику даже без тестера, то это проблема достойна публикации
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
...продолжаю медитировать...
- Вложения
-
- av_meter_ver_3.rar
- (22.18 КБ) 261 скачивание
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
прочитал. не понял ровным счётом ни хирра. да и доказательств в конце ни идиного не приведено. ни кода, ни схемы. ни фоток, ни видев. ни хирра вообчем целом. голимая абстракция про сфеерического каня педального. заказная бессмысленая статейка ради кусочка хлеба насущного не боле 
буду делать разводняк под внешний 12-битный ацп.
буду делать разводняк под внешний 12-битный ацп.
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: ATmega + 12bit ADC
это был перевод первой половины атмеловского апноута
там же ссылка на вторую половину
просто проведи дополнительную дорожку между входами внешнего ацп и ацп меги, может пригодиться
там же ссылка на вторую половину
если ты нифига не понял, это совершенно ничего не значит.charchyard писал(а):не понял ровным счётом ни хирра.
буду делать разводняк под внешний 12-битный ацп.
просто проведи дополнительную дорожку между входами внешнего ацп и ацп меги, может пригодиться
Последний раз редактировалось slav0n Вт авг 10, 2021 13:28:43, всего редактировалось 1 раз.
ohmycode!
primuss3.com
primuss3.com
-
goldmen8
- Говорящий с текстолитом
- Сообщения: 1523
- Зарегистрирован: Пн май 28, 2012 19:52:17
- Откуда: г.Киров (Вятка)
Re: ATmega + 12bit ADC
Смотрим в книгу - видим фигу.
Там есть и вторая часть у статьи.
Вообще то это рекомендации от производителя AVR и схемы там есть и всё разжевано. И более того что работает, проверено.
Там есть и вторая часть у статьи.
Вообще то это рекомендации от производителя AVR и схемы там есть и всё разжевано. И более того что работает, проверено.
-
charchyard
- Поставщик валерьянки для Кота
- Сообщения: 2466
- Зарегистрирован: Сб май 07, 2011 17:52:59
Re: ATmega + 12bit ADC
читал я всю литературу. сделаю оператор switch из двух 0R. но кодировки то у меня всё одно нетути для этого. там програмных наворотов боле гораздо чем внешний прикрутить. а то что всё работает и проверено где конкретные доказательства?
душа человеческая темна и с легкостью обращается ко злу
- slav0n
- Опытный кот
- Сообщения: 882
- Зарегистрирован: Ср дек 01, 2010 00:38:15
- Откуда: Харьков
- Контактная информация:
Re: ATmega + 12bit ADC
та ты шо!charchyard писал(а):там програмных наворотов боле гораздо чем внешний прикрутить.
суммируешь 16 10-битных выборок и делишь сумму на 4, получаешь 12 бит
вот и весь хрен до копейки
ohmycode!
primuss3.com
primuss3.com
- Starichok51
- Модератор
- Сообщения: 19054
- Зарегистрирован: Сб авг 14, 2010 15:05:51
- Откуда: г. Озерск, Челябинская обл.
Re: ATmega + 12bit ADC
а если я суммирую за 1 секунду 1000 10-битных выборок, то сколько бит я реально могу получить?slav0n писал(а):суммируешь 16 10-битных выборок и делишь сумму на 4, получаешь 12 бит
у меня получается 5 бит - 4^5 = 1024.
правда, я оставляю 16 старших бит от суммы и меня это устраивает.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Re: ATmega + 12bit ADC
Попытка обмануть, и так, посчитаем:slav0n писал(а):суммируешь 16 10-битных выборок и делишь сумму на 4, получаешь 12 бит
суммируем 16 10-битных выборок, к примеру 956, итог 15296
- делим на 4 = 3824
- делим на 16 (среднее) 956
далее, будем определять шаг,
956 * 5000 / 1024 = 4668,0
3824 * 5000 / 4096 = 4668,0
суммируем 16 10-битных выборок, к примеру 957, итог 15312
- делим на 4 = 3828
- делим на 16 (среднее) 957
957 * 5000 / 1024 = 4672,9
3828 * 5000 / 4096 = 4672,9
определяем шаг
при 10 бит 4672,9 - 4668,0 = 4,9
при ваших 12 бит 4672,9 - 4668,0 = 4,9
истинный шаг 10 битного АЦП 1 * 5000 / 1024 = 4,9
истинный шаг 12 битного АЦП 1 * 5000 / 4096 = 1,2
Кого вы пытаетесь обмануть?
Re: ATmega + 12bit ADC
а как здесь учитывается тот факт, что последние два бита - это шум? Точнее, шум квантования и нелинейность преобразования?


