Цифровой потенциометр MCP 41010

VictorArx

★★★✩✩✩✩
22 Мар 2021
652
102
@poty, давай завтра, у меня уже сегодня нет сил всё по кругу пускать.
 

bort707

★★★★★★✩
21 Сен 2020
3,334
964
полученный выше вывод связан с тем, что не подключен вывод U/D (вернее, он подключен к земле).
@VictorArx, можете нарисовать схему подключения с указанием точных пинов? Вы же схемотехник?
И да, какая именно Ардуина используется в качестве контроллера?
 

VictorArx

★★★✩✩✩✩
22 Мар 2021
652
102
@bort707, для вас всё что угодно. Да я схемотехник и очень неплохой, моя профессия и ещё ремонт компов. Вот с программированием напряг. Отвечаю на ваш вопрос. Arduino Nano. Поверьте моему опыту в 5 проводочках я не запутаюсь. Как в коде написано так эти проводочки подключены. Уже убедились, что товарищ дал мне рабочий код и задержку я выставил, в нужном месте. В одном видео чел рассказал, что из 10 комплектов этих потенцев 3 были брак. Как я поступаю в новых разработках( информация для всех) сначала смотрю все видосы, потом всю информацию на тубе, после бывает неделю сам работаю, и только тогда , если не могу разобраться обращаюсь на форум за помощью. Примерно так. Не забывайте про топор :)
 

Bruzzer

★★★★✩✩✩
23 Май 2020
723
224
Уже убедились, что товарищ дал мне рабочий код
Все таки лучше разобраться в даташите самостоятельно (неплохой схемотехник это может) и понимать, что делает код дергающий всего то тремя ножками.
Например код про который вы скорее всего говорите, не обоснованно тратит ресурс EEPROM перезаписывая данные. С учетом задержки в 1 сек, это может и не страшно. Но в исходном варианте, без задержки, поведение не предсказуемо, т.к. CS должен быть высоким мининум 20 мс. И что происходит с EEPROM в этом случае не известно (с точки зрения даташита).
C++:
void wiperUp(void) {
  digitalWrite(CS,HIGH);
  digitalWrite(UD,HIGH);
  delay(1);
  digitalWrite(INC,HIGH);
  delay(1);
  digitalWrite(CS,LOW);
  delay(1);
  digitalWrite(INC,LOW);
  delay(1);
  digitalWrite(INC,HIGH);
  delay(1);
  digitalWrite(CS,HIGH);   // ОБНОВЛЕНИЕ EEPROM ЗАЧЕМ ???

}
 
  • Лойс +1
Реакции: poty

VictorArx

★★★✩✩✩✩
22 Мар 2021
652
102
@Bruzzer, ну это уж вы между собой программистами выясняйте зачем, мне это неведомо. Мне хоть запустить бы этот долбаный потенциометр и не напрягать вас. Уверяю, что со временем разберусь, тем паче скоро на подходе ещё один. Попробую и на других форумах поискать инфу, может у кого был аналогичный случай.
 

VictorArx

★★★✩✩✩✩
22 Мар 2021
652
102
Вот, что получилось. Есть и увеличение и уменьшение, но очень странным образом. Начинается с 1023 примерно 30 градацио до 0, затем 30 градаций 0, и только после этого идёт снова увеличение до 1023( опять 30 градаций) после установки 1023 снова идёт 1023 ( 30 градаций) и после снова уменьшение до нуля. Выставлю скрин.
 

bort707

★★★★★★✩
21 Сен 2020
3,334
964
можете нарисовать схему подключения с указанием точных пинов?
@bort707, для вас всё что угодно.
ну и где же схема? Или вы считаете что слова
моему опыту в 5 проводочках я не запутаюсь.
заменят схему?
 

bort707

★★★★★★✩
21 Сен 2020
3,334
964
а вот как раз скрины никому не нужны. Напечатать строчку чисел может каждый.

Кстати, вот насчет этого:
Уже убедились, что товарищ дал мне рабочий код и задержку я выставил, в нужном месте.
ваш код с задержкой вы так и не выложили

Добавка - извинясь, код не заметил.
Но схему хотелось бы увидеть.
 

VictorArx

★★★✩✩✩✩
22 Мар 2021
652
102
@bort707, я не печатал , а сфотографировал . Насчёт схемы. Как вы хотите от руки нарисовать или программой?
 

Вложения

r4wabr

★✩✩✩✩✩✩
21 Май 2019
73
17
42
Ижевск
@Bruzzer,

Надо просто убрать запись в память. Да и можно вообще нерекомендуемым способом делать. Выставить U\D в нужное значение. INC в 0 и дергать CS
 

r4wabr

★✩✩✩✩✩✩
21 Май 2019
73
17
42
Ижевск
Судя по схеме, питание на плату не подаётся.
В нагрузке у модуля зачем то светодиод.


И откуда берутся цифры, как на скрине, не понятно.
Ну если как на скрине, то понятно почему такие данные. Паразитное питание. Там же подтяжки входов есть внутри микросхемы
 
  • Лойс +1
Реакции: poty

poty

★★★★★★★
19 Фев 2020
3,554
1,014
@SlavaZagaynov, напрямую - нет, но можно записать в non-volatile и не допускать её перезаписи. @Bruzzer это указал в своём объяснении, правда, объяснял несколько другое.
Судя по схеме, питание на плату не подаётся.
Вот это очень правильное замечание. И в этом случае
Паразитное питание. Там же подтяжки входов есть внутри микросхемы
очень вероятно такое поведение.
Также, похоже, что это схема откуда-то из Интернет, потому что соединения с аналоговыми пинами для измерения уровня я тоже не увидел.
 

r4wabr

★✩✩✩✩✩✩
21 Май 2019
73
17
42
Ижевск
Попробывал подключить X9C. Для него есть библиотеки готовые. Вот что удалось получить при выводе в сериал.
Форматирование (BB-код):
Library version: 1.1.0

Digital potentiometer initialised

Initial resistance: ohms 40
Attempting to increase resistance by ohms1.00

Note that the resistance will not increase above maximum
Approx resistance after increment: 132
Wiper position: 1

Analog input : 31
Approx resistance after increment: 224
Wiper position: 2

Analog input : 64
Approx resistance after increment: 316
Wiper position: 3

Analog input : 97
Approx resistance after increment: 408
Wiper position: 4

Analog input : 130
Approx resistance after increment: 500
Wiper position: 5

Analog input : 162
Approx resistance after increment: 592
Wiper position: 6

Analog input : 194
Approx resistance after increment: 684
Wiper position: 7

Analog input : 227
Approx resistance after increment: 776
Wiper position: 8

Analog input : 261
Approx resistance after increment: 868
Wiper position: 9

Analog input : 295
Approx resistance after increment: 960
Wiper position: 10

Analog input : 329
Approx resistance after increment: 1052
Wiper position: 11

Analog input : 360
Approx resistance after increment: 1144
Wiper position: 12

Analog input : 394
Approx resistance after increment: 1236
Wiper position: 13

Analog input : 428
Approx resistance after increment: 1328
Wiper position: 14

Analog input : 461
Approx resistance after increment: 1420
Wiper position: 15

Analog input : 494
Approx resistance after increment: 1512
Wiper position: 16

Analog input : 526
Approx resistance after increment: 1604
Wiper position: 17

Analog input : 560
Approx resistance after increment: 1696
Wiper position: 18

Analog input : 594
Approx resistance after increment: 1788
Wiper position: 19

Analog input : 624
Approx resistance after increment: 1880
Wiper position: 20

Analog input : 658
Approx resistance after increment: 1972
Wiper position: 21

Analog input : 692
Approx resistance after increment: 2064
Wiper position: 22

Analog input : 725
Approx resistance after increment: 2156
Wiper position: 23

Analog input : 756
Approx resistance after increment: 2248
Wiper position: 24

Analog input : 793
Approx resistance after increment: 2340
Wiper position: 25

Analog input : 827
Approx resistance after increment: 2432
Wiper position: 26

Analog input : 858
Approx resistance after increment: 2524
Wiper position: 27

Analog input : 892
Approx resistance after increment: 2616
Wiper position: 28

Analog input : 923
Approx resistance after increment: 2708
Wiper position: 29

Analog input : 957
Approx resistance after increment: 2800
Wiper position: 30

Analog input : 991
Approx resistance after increment: 2892
Wiper position: 31

Analog input : 1023
Approx resistance after increment: 2984
Wiper position: 32

Analog input : 1023
Approx resistance after increment: 3076
Wiper position: 33

Analog input : 1023
Approx resistance after increment: 3168
Wiper position: 34

Analog input : 1023
Approx resistance after increment: 3260
Wiper position: 35

Analog input : 1023
Approx resistance after increment: 3352
Wiper position: 36

Analog input : 1023
Approx resistance after increment: 3444
Wiper position: 37

Analog input : 1023
Approx resistance after increment: 3536
Wiper position: 38

Analog input : 1023
Approx resistance after increment: 3628
Wiper position: 39

Analog input : 1023
Approx resistance after increment: 3720
Wiper position: 40

Analog input : 1023
Approx resistance after increment: 3812
Wiper position: 41

Analog input : 1023
Approx resistance after increment: 3904
Wiper position: 42

Analog input : 1023
Approx resistance after increment: 3996
Wiper position: 43

Analog input : 1023
Approx resistance after increment: 4088
Wiper position: 44

Analog input : 1023
Approx resistance after increment: 4180
Wiper position: 45

Analog input : 1023
Approx resistance after increment: 4272
Wiper position: 46

Analog input : 1023
Approx resistance after increment: 4364
Wiper position: 47

Analog input : 1023
Approx resistance after increment: 4456
Wiper position: 48

Analog input : 1023
Approx resistance after increment: 4548
Wiper position: 49

Analog input : 1023
Approx resistance after increment: 4640
Wiper position: 50

Analog input : 1023
Approx resistance after increment: 4732
Wiper position: 51

Analog input : 1023
Approx resistance after increment: 4824
Wiper position: 52

Analog input : 1023
Approx resistance after increment: 4916
Wiper position: 53

Analog input : 1023
Approx resistance after increment: 5008
Wiper position: 54

Analog input : 1023
Approx resistance after increment: 5100
Wiper position: 55

Analog input : 1023
Approx resistance after increment: 5192
Wiper position: 56

Analog input : 1023
Approx resistance after increment: 5284
Wiper position: 57

Analog input : 1023
Approx resistance after increment: 5376
Wiper position: 58

Analog input : 1023
Approx resistance after increment: 5468
Wiper position: 59

Analog input : 1023
Approx resistance after increment: 5560
Wiper position: 60

Analog input : 1023
Approx resistance after increment: 5652
Wiper position: 61

Analog input : 1023
Approx resistance after increment: 5744
Wiper position: 62

Analog input : 1023
Approx resistance after increment: 5836
Wiper position: 63

Analog input : 1023
Approx resistance after increment: 5928
Wiper position: 64

Analog input : 1023
Approx resistance after increment: 6020
Wiper position: 65

Analog input : 1023
Approx resistance after increment: 6112
Wiper position: 66

Analog input : 1023
Approx resistance after increment: 6204
Wiper position: 67

Analog input : 1023
Approx resistance after increment: 6296
Wiper position: 68

Analog input : 1023
Approx resistance after increment: 6388
Wiper position: 69

Analog input : 1023
Approx resistance after increment: 6480
Wiper position: 70

Analog input : 1023
Approx resistance after increment: 6572
Wiper position: 71

Analog input : 1023
Approx resistance after increment: 6664
Wiper position: 72

Analog input : 1022
Approx resistance after increment: 6756
Wiper position: 73

Analog input : 1023
Approx resistance after increment: 6848
Wiper position: 74

Analog input : 1023
Approx resistance after increment: 6940
Wiper position: 75

Analog input : 1023
Approx resistance after increment: 7032
Wiper position: 76

Analog input : 1023
Approx resistance after increment: 7124
Wiper position: 77

Analog input : 1023
Approx resistance after increment: 7216
Wiper position: 78

Analog input : 1023
Approx resistance after increment: 7308
Wiper position: 79

Analog input : 1023
Approx resistance after increment: 7400
Wiper position: 80

Analog input : 1023
Approx resistance after increment: 7492
Wiper position: 81

Analog input : 1023
Approx resistance after increment: 7584
Wiper position: 82

Analog input : 1023
Approx resistance after increment: 7676
Wiper position: 83

Analog input : 1023
Approx resistance after increment: 7768
Wiper position: 84

Analog input : 1023
Approx resistance after increment: 7860
Wiper position: 85

Analog input : 1023
Approx resistance after increment: 7952
Wiper position: 86

Analog input : 1023
Approx resistance after increment: 8044
Wiper position: 87

Analog input : 1023
Approx resistance after increment: 8136
Wiper position: 88

Analog input : 1023
Approx resistance after increment: 8228
Wiper position: 89

Analog input : 1023
Approx resistance after increment: 8320
Wiper position: 90

Analog input : 1023
Approx resistance after increment: 8412
Wiper position: 91

Analog input : 1023
Approx resistance after increment: 8504
Wiper position: 92

Analog input : 1023
Approx resistance after increment: 8596
Wiper position: 93

Analog input : 1023
Approx resistance after increment: 8688
Wiper position: 94

Analog input : 1023
Approx resistance after increment: 8780
Wiper position: 95

Analog input : 1023
Approx resistance after increment: 8872
Wiper position: 96

Analog input : 1023
Approx resistance after increment: 8964
Wiper position: 97

Analog input : 1023
Approx resistance after increment: 9056
Wiper position: 98

Analog input : 1023
Approx resistance after increment: 9148
Wiper position: 99

Analog input : 1023
Approx resistance after increment: 9148
Wiper position: 99

Analog input : 1023

X9C Lib

Скорее всего-это особенность резистора такая. По идее он должен сбрасываться установкой 3-х сигналов управления в высокий уровень.
 
Изменено:

poty

★★★★★★★
19 Фев 2020
3,554
1,014
@r4wabr, код покажите или какой пример использовали?
Установки никакой начальной нет для этой микросхемы.
 

r4wabr

★✩✩✩✩✩✩
21 Май 2019
73
17
42
Ижевск
Ссылка же выложена на гитхаб. Там все есть. Добавил только вывод данных с АЦП. Код не сохранял. Надо подключать мультиметр и смотреть как меняется сопротивление.
 

poty

★★★★★★★
19 Фев 2020
3,554
1,014
@r4wabr, ссылка - на библиотеку. Судя по выводу - это пример последовательного повышения сопротивления. Причём начальное сопротивление явно не равно нулю.
 

viktor1703

★★★✩✩✩✩
9 Дек 2021
766
188
начальное сопротивление явно не равно нулю.
Судя по информации на гитхабе, потенциометр может хранить последнее состояние до 100 лет. Поэтому начальное сопротивление очень даже может быть не равно нулю.
 

Вложения

  • Лойс +1
Реакции: SlavaZagaynov

poty

★★★★★★★
19 Фев 2020
3,554
1,014
@r4wabr, потому я и попросил конкретный пример, который Вы использовали из библиотеки.