Кстати МК ток жрёт 8...10 mA, это немного??
ATmega8 и АЦП
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Пробывал, нет невыводит(( Выводил, после настройки портов.
Кстати МК ток жрёт 8...10 mA, это немного??
Кстати МК ток жрёт 8...10 mA, это немного??
- Реклама
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Пробывал, нет невыводит(( Выводил, после настройки портов.
Кстати МК ток жрёт 8...10 mA, это немного??
Кстати МК ток жрёт 8...10 mA, это немного??
Чего пробывал?DIMA040891 писал(а):Пробывал, нет невыводит(( Выводил, после настройки портов.
Кстати МК ток жрёт 8...10 mA, это немного??
на какой частоте работает мк? смотри в ДШ кокой ток должен быть при этом.
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Вот так теперь это выглядит:
.
.
. ldi Temp,low(RamEnd) ;установка указателя стека
out SPL,Temp
ldi Temp,high(RamEnd)
out SPH,Temp
ldi Temp,0b11111110
out DDRC,Temp
ldi Temp,0b00101000
out PORTC,Temp
ldi Temp,0b11100000
out ADMUX,Temp; выбор канала, а так же выравнивание влево(бит 5),+(биты 6 и 7)
; включение опорного напряжения внутреннего источника
.
.
.
.
.
.
. ldi Temp,low(RamEnd) ;установка указателя стека
out SPL,Temp
ldi Temp,high(RamEnd)
out SPH,Temp
ldi Temp,0b11111110
out DDRC,Temp
ldi Temp,0b00101000
out PORTC,Temp
ldi Temp,0b11100000
out ADMUX,Temp; выбор канала, а так же выравнивание влево(бит 5),+(биты 6 и 7)
; включение опорного напряжения внутреннего источника
.
.
.
.
- Реклама
- Сообщения: 491
- Зарегистрирован: Вс янв 07, 2007 01:45:48
- Откуда: Российская Федерация, будь она неладна...
Код полностью мы увидим?
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
.INCLUDE "m8def.inc"
.def Temp=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R20
.def Temp5=R21
.def Temp6=R22
.def Temp7=R23
.def Temp8=R24
.def Temp9=R25
.dseg
Digit: .byte 4
RAM: .byte 10
.cseg
.org 0
rjmp Reset
rjmp EXT_INT0
rjmp EXT_INT1
rjmp TIM2_COMP
rjmp TIM2_OVF
rjmp TIM1_CAPT
rjmp TIM1_COMPA
rjmp TIM1_COMPB
rjmp TIM1_OVF
rjmp TIM0_OVF
rjmp SPI_STC
rjmp USART_RXC
rjmp USART_UDRE
rjmp USART_TXC
rjmp EE_RDY
rjmp ANA_COMP
rjmp TWSI
rjmp SPM_RDY
;Reset:
EXT_INT0:
EXT_INT1:
TIM2_COMP:
TIM2_OVF:
TIM1_CAPT:
TIM1_COMPA:
TIM1_COMPB:
TIM1_OVF:
TIM0_OVF:
SPI_STC:
USART_RXC:
USART_UDRE:
USART_TXC:
EE_RDY:
ANA_COMP:
TWSI:
SPM_RDY:
reti
ldi Temp,low(RamEnd) ;установка указателя стека
out SPL,Temp
ldi Temp,high(RamEnd)
out SPH,Temp
ldi Temp,0b11111110
out DDRC,Temp
ldi Temp,0b00101000
out PORTC,Temp
ldi Temp,0b11100000
out ADMUX,Temp; выбор канала, а так же выравнивание влево(бит 5),+(биты 6 и 7)
; включение опорного напряжения внутреннего источника
ldi Temp,0b10000101
out ADCSR,Temp; старший бит вкл АЦП, младшие - предделитель
reset: sbi ADCSR,ADSC ; уст бит "старт преобразования"
WaitADC:
sbis ADCSR,ADIF
rjmp WaitADC
; тут отсчет готов...
in Temp1,ADCH ; ст байт
out PORTC,Temp1
ldi Temp3,0x06
ldi Temp2,0x1A
ldi Temp1,0x80
Delay: subi Temp1,1;ждём 0,5С
sbci Temp2,0
sbci Temp3,0
brcc Delay
rjmp reset
.def Temp=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R20
.def Temp5=R21
.def Temp6=R22
.def Temp7=R23
.def Temp8=R24
.def Temp9=R25
.dseg
Digit: .byte 4
RAM: .byte 10
.cseg
.org 0
rjmp Reset
rjmp EXT_INT0
rjmp EXT_INT1
rjmp TIM2_COMP
rjmp TIM2_OVF
rjmp TIM1_CAPT
rjmp TIM1_COMPA
rjmp TIM1_COMPB
rjmp TIM1_OVF
rjmp TIM0_OVF
rjmp SPI_STC
rjmp USART_RXC
rjmp USART_UDRE
rjmp USART_TXC
rjmp EE_RDY
rjmp ANA_COMP
rjmp TWSI
rjmp SPM_RDY
;Reset:
EXT_INT0:
EXT_INT1:
TIM2_COMP:
TIM2_OVF:
TIM1_CAPT:
TIM1_COMPA:
TIM1_COMPB:
TIM1_OVF:
TIM0_OVF:
SPI_STC:
USART_RXC:
USART_UDRE:
USART_TXC:
EE_RDY:
ANA_COMP:
TWSI:
SPM_RDY:
reti
ldi Temp,low(RamEnd) ;установка указателя стека
out SPL,Temp
ldi Temp,high(RamEnd)
out SPH,Temp
ldi Temp,0b11111110
out DDRC,Temp
ldi Temp,0b00101000
out PORTC,Temp
ldi Temp,0b11100000
out ADMUX,Temp; выбор канала, а так же выравнивание влево(бит 5),+(биты 6 и 7)
; включение опорного напряжения внутреннего источника
ldi Temp,0b10000101
out ADCSR,Temp; старший бит вкл АЦП, младшие - предделитель
reset: sbi ADCSR,ADSC ; уст бит "старт преобразования"
WaitADC:
sbis ADCSR,ADIF
rjmp WaitADC
; тут отсчет готов...
in Temp1,ADCH ; ст байт
out PORTC,Temp1
ldi Temp3,0x06
ldi Temp2,0x1A
ldi Temp1,0x80
Delay: subi Temp1,1;ждём 0,5С
sbci Temp2,0
sbci Temp3,0
brcc Delay
rjmp reset
если при старте программа уходит на зацикливание, без всякой настройки портов и перефирии...
посмотри где у тебя стоит метка Reset
и все-таки включи ADIE
- Сообщения: 491
- Зарегистрирован: Вс янв 07, 2007 01:45:48
- Откуда: Российская Федерация, будь она неладна...
Мда... Две страницы исписали, чуть не подрались, а тут...
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Мне очень и очень
стыдно)) Большое спасибо, так я бы наверное долго головой об стенку бился))))
Осталось 2 вопросика:
1. Можно ли в недиферинциальном режиме АЦП задействовать внутренний усилитель x10???? Если можно то как????
2. Все ракроме старшего разряда светодиодов моргают, это возможно из-зи плохого источника питания????
Осталось 2 вопросика:
1. Можно ли в недиферинциальном режиме АЦП задействовать внутренний усилитель x10???? Если можно то как????
2. Все ракроме старшего разряда светодиодов моргают, это возможно из-зи плохого источника питания????
Ну начнем с того что у М8 нет усилителя, если один светодиод отличается по яркости - ИП здесь ни при чем.
Смотри настройки портов, подключение пул-ап резисторов, подключенную периферию и т.п.
Смотри настройки портов, подключение пул-ап резисторов, подключенную периферию и т.п.
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Нет, дела не в разной яркости, а в том что значение постоянно меняется, горят то 2 то 3, 4 светодиода (хотя переменный ризистор в этот момент я нетрогую), ИП у меня очень слабенький, напряжение на клемах питания изменятся примерно на 0,3В при загорании разного количества светодиодов. Возможно это может спровоцировать ошибки при измернии напряжения???? 
- Сообщения: 491
- Зарегистрирован: Вс янв 07, 2007 01:45:48
- Откуда: Российская Федерация, будь она неладна...
Плохое питание - это "смерть" точности измерения. Плюсом к тому, Ваше программное решение не способно обеспечить высокую точность хотябы из за того, что АЦП рекомендуется использовать в режиме ADC Noise Reduction Mode.
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Просадка на 0.3В - это примерно 15 ед.АЦП, при таком способе преобразования, а это 3-4 мл.разряда в результате, поэтому вполне возможно мигание светодиодов в хаотичном порядке
, пардон беспорядке.
зы: ну ADC Noise Reduction Mode нужно "включать" при полном (10 разрядном) преобразовании, а при 8-и разрядах этот режим не обязателен.
зы: ну ADC Noise Reduction Mode нужно "включать" при полном (10 разрядном) преобразовании, а при 8-и разрядах этот режим не обязателен.
- Сообщения: 491
- Зарегистрирован: Вс янв 07, 2007 01:45:48
- Откуда: Российская Федерация, будь она неладна...
Ну почему же? Ведь мы считываем младшие разряды.
Научить нельзя, можно научиться. Пифагор.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
Вставь недостающие буквы в слово *у*ня. Если у тебя получилось слово кухня, значит ты интеллигентный человек.
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03
Ну вобщем испльзование хорошего ИП, LC фильтроф питания, а также конденсатора для AREF совместно с режимом ADC Noise Reduction Mode даст точность 8-9 разрядов?? так примерно??
+ питание на аналоговую часть через LC-фильтр
- Сообщения: 68
- Зарегистрирован: Чт дек 03, 2009 19:55:03



