Таймер на ATMega8 в Bascom-AVR

Обсуждаем контроллеры компании Atmel.
Ответить
Грызет канифоль
Сообщения: 291
Зарегистрирован: Ср май 26, 2010 20:40:47

Сообщение AlekseyV »

Ура! Заработало. :beer: Ошибка была в коде, нужно было xmin обнулить после совпадения. Фьюзы выставил такие: CKOPT, BOOTSZ1, BOOTSZ0, SUT1, SUT0, CKSEL3, CKSEL1, CKSEL0. Если кому надо - могу научить как их выставлять в bascom.
Реклама
Грызет канифоль
Сообщения: 291
Зарегистрирован: Ср май 26, 2010 20:40:47

Сообщение AlekseyV »

Пытаюсь оцифровать (замерить) напряжение - не получается.
Использую делитель 100k+22k(переменный)/10k. С внешней стороны приходят постоянный ток напряжением от 10В до 20В.
За основу взят код:
СпойлерStart Adc
Readadc1 = Getadc(5)
Voltage1 = Readadc1 / 1023
Voltage1 = Voltage1 * 30
Stop Adc

...

If Voltage1 < 15.9 Then
Portd.2 = 1
End If
Крутил, вертел, менял все значения - никак не могу добиться результата. Иногда конечно лампочка загоралась, но далеко от значения 15.9
Реклама
Мучитель микросхем
Сообщения: 494
Зарегистрирован: Пн авг 12, 2013 19:07:47
Откуда: башкирия мелеуз

Сообщение pavel1979 »

был в командировке,поэтому не писал
выложите пожалуйста весь проект-может еще кому пригодится
vek
Вымогатель припоя
Аватара пользователя
Сообщения: 563
Зарегистрирован: Чт апр 16, 2009 04:53:41

Сообщение vek »

А делитель каким концом к земле подтянут?
В первый раз меня ударило током - и я подумал что ни черта не соображаю в электричестве. Во второй раз был аккуратнее и меня не ударило - теперь я возомнил из себя крутого микроэлектронщика.
Реклама
Эиком - электронные компоненты и радиодетали
Грызет канифоль
Сообщения: 291
Зарегистрирован: Ср май 26, 2010 20:40:47

Сообщение AlekseyV »

Ну естественно 10к подтянут.
Реклама
Открыл глаза
Сообщения: 61
Зарегистрирован: Вс фев 14, 2010 11:29:12
Откуда: РФ, Рязань

Сообщение servnt »

ZN-GAME, я, конечно далеко не ас, но, вот это кусок кода

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

Start Adc
Readadc1 = Getadc(5)
Voltage1 = Readadc1 / 1023
Voltage1 = Voltage1 * 30
Stop Adc
разве сам себя не кольцует?
Может, вот так надо?

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

Start Adc
Readadc1 = Getadc(5)
Voltage1 = Readadc1 / 1023
Voltage2 = Voltage1 * 30
Stop Adc
Реклама
Грызет канифоль
Сообщения: 291
Зарегистрирован: Ср май 26, 2010 20:40:47

Сообщение AlekseyV »

Уже мозг сломал, взял делитель 100к (к входну напр.) и 10к (к земле) между ними к ATMega8 ADC5 выводу.
Конфиг задан следующий:

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

Dim Readadc1 As Word
Config Adc = Single , Prescaler = Auto , Reference = Internal

Do
Start Adc
Readadc1 = Getadc(5)
Stop Adc
If Readadc1>= 508 Then
Portd.2 = 0
Portd.4 = 1
Waitms 500
Portd.3 = 1
End If
Loop
По расчетам при 14В подачи на делитель ADC должен быть равен близко к значению 508, но на деле получается где-то в области 230-250. Неправильные расчеты - я так понимаю, т.к. при выставлении близких значений к 230-250 начинает все работать. Подскажите как произвести правильные расчеты на делитель 100к/10к и 75к/10к. Спасибо.
Мучитель микросхем
Сообщения: 494
Зарегистрирован: Пн авг 12, 2013 19:07:47
Откуда: башкирия мелеуз

Сообщение pavel1979 »

У вас делитель на входе 100к и 10 к делит напряжение на (100+10)/10=11 раз,вот и возникает ошибка 14 в/11=12,7 вольт
вместо 100 к надо 90 к,все остальное правильно
Вымогатель припоя
Аватара пользователя
Сообщения: 650
Зарегистрирован: Пн июн 18, 2012 12:01:04
Откуда: Челябинская область, Копейск

Сообщение zero648 »

Если правильно понимаю, то както так,
Делитель 100k/10k:
14/(100+10)*10/5*1023=260
Делитель 75k/10k:
14/(75+10)*10/5*1023=337
Грызет канифоль
Сообщения: 291
Зарегистрирован: Ср май 26, 2010 20:40:47

Сообщение AlekseyV »

С ADC разобрался, давненько.
---------------------
Посоветуйте пожалуйста быстродействующую схему от КЗ/перегрузки на 12-15В примерно max.I=8А.
Ответить

Вернуться в «AVR»