Перейти к содержимому
Форум журнала практической электроники «Датагор»

Оригинал микро-ПК Raspberry Pi 3 Model B+ (Broadcom 1.4GHz quad-core 64 bit processor, Wifi, Bluetooth, USB)

Офигенная миниатюрная рация на литии BaoFeng UV-5R, 5W, 5-15 км! Охота, поход, торговый центр и т.п.

TrueRMS мультиметр UNI-T UT139A с автодиапазонами

Паяльнник 80W с терморегулятором и LCD-дисплеем, популярные жала серии 900M
Гость Sommi

Показания АЦП ATmega16

Рекомендованные сообщения

Гость Sommi

Написал программу для АЦП для ATmega16 PORTA 0 АЦП. Подключаю землю выдаёт 0, подключаю питание 5013 милливольт(вроде все норм). Подключаю батарейки 1,5 - 3 В показывает одно и тоже 2,4 В. В чем может быть проблема?ъ

 

 

Здесь скрытый текст. Кликни, чтобы увидеть!

 

#include <mega16.h>

#include <stdio.h>

#include <delay.h>

 

#define ADC_VREF_TYPE 0xC0

unsigned int result;

unsigned int read_adc(unsigned char adc_input)

{

ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltage

delay_us(10);

// Start the AD conversion

ADCSRA|=0x40;

// Wait for the AD conversion to complete

while ((ADCSRA & 0x10)==0);

ADCSRA|=0x10;

return ADCW;

}

 

// Declare your global variables here

 

void main(void)

{

 

PORTB=0x00;

DDRB=0xFF;

 

PORTD=0xFF;

DDRD=0x00;

 

GICR|=0xC0;

MCUCR=0x0A;

MCUCSR=0x00;

GIFR=0xC0;

 

UCSRA=0x00;

UCSRB=0x98;

UCSRC=0x86;

UBRRH=0x00;

UBRRL=0x19;

// ADC initialization

// ADC Clock frequency: 1000,000 kHz

// ADC Voltage Reference: Int., cap. on AREF

// ADC Auto Trigger Source: None

ADMUX=ADC_VREF_TYPE & 0xff;

ADCSRA=0x83;

 

 

 

// Global enable interrupts

#asm("sei")

 

while (1)

{

 

float volt;

delay_ms(1000) ;

 

volt=read_adc(0);

result=ADCW*5-ADCW/10;

#asm ("cli")

printf("Voltage:%i",result);

#asm ("sei")

 

 

 

 

 

 

};

}</delay.h></stdio.h></mega16.h>

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


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

А опорное напряжение ты подавал? Внутреннее опорное у нее как раз около 2.4 в. Так что при подаче напряжения выше опорного АЦП просто упирается в потолок...

Ноги AVCC или AREF часом на землю не привесил?

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

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


Ссылка на сообщение
Поделиться на других сайтах
Гость Sommi
А опорное напряжение ты подавал? Внутреннее опорное у нее как раз около 2.4 в. Так что при подаче напряжения выше опорного АЦП просто упирается в потолок...

Ноги AVCC или AREF часом на землю не привесил?

 

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

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


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

Ацп не хочет мерять, а тупо выдаёт значение опорного напряжения, даже когда поменял опорное на 5 В

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


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

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

︽ Наверх страницы ︽
×
×
  • Создать...