Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
АЦП
tolyan249 Дата: Ср, 08.01.2025, 08:52  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 203
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Использую контроллер PIC18F4553 ,проблема с ацп(12 бит) ,меряет напряжение всегда разное , измеряю раз в секунду и всегда ,сотые доли разные (5.12, 5.06 ,4.98 5,25) меряю с питание  микросхемы пока. Хотя тестер стоит в параллель на нём показывает стабильно ровно 5.00.
Так же скачет и показания тока ,на тестере стоит 3.50а ,а у меня скачет(3.48, 3.65 , 3.45, 3.70,3.36)
Cделал усреднение  результата не помогло.

value1=0
tk=0
tk1=0

For  i=0 To 199
AD_result1 = ADIn 1
value1=AD_result1*1.2265
tk1=tk1+value1
DelayUS 5
Next

tk=tk1/200

Не понятно. Может кто чего объяснит по этому поводу.?

спасибо.


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Ср, 08.01.2025, 09:25
ЯНДЕКС Дата: 08.01.2025
xvovanx Дата: Ср, 08.01.2025, 19:33  |                                                                                                                Сообщение # 2
Группа: Модераторы
Ранг:  Помогаю всем
Сообщений: 336
Репутация: 63   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Хорошо бы видеть программу с вашими настройки АЦП. В вашем коде есть данная строка задержки для того, чтоб внутренний конденсатор АЦП успевал разряжаться перед каждым замером?
Прикрепления: 5506587.png (46.4 Kb)
tolyan249 Дата: Чт, 09.01.2025, 13:43  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 203
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Declare  SHOW_SYSTEM_VARIABLES = OFF
Declare  FSR_CONTEXT_SAVE = OFF
Declare  Reminders = OFF
Declare  Warnings = OFF
Declare  Optimiser_Level 0

Device = 18F4553
Xtal = 20

Declare  LCD_Type ALPHA
Declare  LCD_DTPin  PORTB.3
Declare  LCD_ENPin  PORTB.3
Declare  LCD_RSPin  PORTB.2
Declare  LCD_Interface  4
Declare  LCD_CommandUs  2000
Declare  LCD_DataUs  50
Declare  LCD_Lines   2

Declare Bootloader = OFF

ADCON0= %00000011
ADCON1 = %10001110 ' Make PORTA.0 analogue   %10001110
ADCON2 = %10000000           '  %10000000

CMCON = 7

Declare  Adin_Res 12
Declare  Adin_Tad FRC
Declare  Adin_Stime  50

TRISA=%00100011
TRISB=$00000000
TRISC=$00000000
TRISD=$00000000

Dim TT As Byte

Dim AD_result    As Word
Dim AD_result1   As Word
Dim value        As Float
Dim value1       As Float
Dim tk As         Float
Dim  volts       As Float
Dim volts1 As Float
Dim tk1 As Float

main:
GoSub tok

GoSub naprezenie

Print At 1,1,Dec2 volts,"v
Print At 2,1,Dec2 tk,"a "

delayms 1000
Goto main

naprezenie:

volts1=0
For i=0 To 149
AD_result = ADIn 0
value=AD_result *12.28
volts=value/1000
volts1=volts1+volts
Next;
volts=volts1/150

Return

tok:
tk1=0
tk=0

For  i=0 To 149
AD_result1 = ADIn 1
value1=AD_result1*1.28
tk1=tk1+value1
DelayUS 1
Next

tk1=tk1/150

tk=tk1*0.1
Return

end


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Чт, 09.01.2025, 13:54
tolyan249 Дата: Чт, 09.01.2025, 14:14  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 203
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Спасибо за помощь поставил то что выделено красным и появилась стабильность измерений ,у меня включено было
Declare  Adin_Tad  FRC .
Прикрепления: 1380198.png (50.1 Kb)


если знаешь,помоги.
  • Страница 1 из 1
  • 1
Поиск: