регулировка яркости светодиода потенциометром
|
|
SimBB | Дата: Воскресенье, 21.12.2014, 10:21 | Сообщение # 1 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| Всем привет. Так,как в программировании я не силён(только начал осваивать),то решил попросить помощи здесь. В общем есть мк ATtiny24, синий светодиод и потенциометр 50К. Как я понял - среднюю ногу потенциометра нужно подключить к ADC микроконтроллера(в моём случае ADC7),а крайние ноги +5V и GND соответственно. Светодиод подключил к OC1B. Нужна помощь в написании программы,поправьте,где не так. $regfile = "attiny24.dat" $crystal = 4000000 $hwstack = 32 $swstack = 8 $framesize = 16 Config Adc.7 = Single , Prescaler = 128 , Reference = Internal Config Porta.5 = Output
Сообщение отредактировал SimBB - Воскресенье, 21.12.2014, 10:33 |
|
| |
kestrel | Дата: Воскресенье, 21.12.2014, 11:45 | Сообщение # 2 |
Группа: Проверенные
Сообщений: 52
Статус: Offline
| что, это такое Adc.7 = Single? в Bascom`е: помощь-оглавление-поиск в строке наберите config adc заодно в datasheet на tiny24 посмотрите величину опорного напряжения (internal) если вопросы останутся пишите
|
|
| |
SimBB | Дата: Воскресенье, 21.12.2014, 12:52 | Сообщение # 3 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| Семёрку после ADC наверное не нужно было ставить,вот так правильно?
$regfile = "attiny24.dat" $crystal = 4000000 $hwstack = 32 $swstack = 8$framesize = 16 Config Adc = Single , Prescaler = 128 , Reference = InternalConfig Porta.5 = Output Config Porta.5 = Output config TIMER1= PWM
опорное напряжение 1,1в
Сообщение отредактировал SimBB - Воскресенье, 21.12.2014, 16:11 |
|
| |
kestrel | Дата: Воскресенье, 21.12.2014, 19:03 | Сообщение # 4 |
Группа: Проверенные
Сообщений: 52
Статус: Offline
| насколько я понял, вы хотите чтобы при повороте переменного резистора менялась яркость светодиода? тогда здесь http://avrproject.ru/publ/zadejstvuem_acp_voltmetr_na_avr/1-1-0-13 как пользоваться АЦП (измерять напряжение, обратите внимание на делитель напряжения, это если у ва Reference = Internal, если Reference = AVcc он не нужен, и переменник подключается как вы указали в первом посте); а здесь http://avrproject.ru/publ/pwm_bascom/1-1-0-37 показано как использовать PWM если все правильно сложить то вы получите, что хотите. а вообще, материал изложенный на сайте подходит для решения практически всех задач еще вопросы остались?
|
|
| |
SimBB | Дата: Воскресенье, 21.12.2014, 21:13 | Сообщение # 5 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| То есть напряжение на ножке должно быть от 0 до 1,1В ? Правильно понял? $IMAGE1$
Сообщение отредактировал SimBB - Воскресенье, 21.12.2014, 21:46 |
|
| |
SimBB | Дата: Воскресенье, 21.12.2014, 21:48 | Сообщение # 6 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| картинку не могу вставить
|
|
| |
sany2 | Дата: Понедельник, 22.12.2014, 01:10 | Сообщение # 7 |
Группа: Проверенные
Сообщений: 107
Статус: Offline
| примерно так $regfile = "attiny24.dat" $crystal = 4000000 $hwstack = 32 $swstack = 8 $framesize = 16
Config Adc = Single , Prescaler = Auto , Reference = Avcc Start Adc
Config Timer1 = Pwm , Pwm = 8 , Compare B Pwm = Clear Up , Prescale = 8 Enable Timer1 Config Porta.5 = Output
do Pwm1b = Getadc(7) / 4 waitms 10 loop
|
|
| |
SimBB | Дата: Понедельник, 22.12.2014, 09:46 | Сообщение # 8 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| Делитель правильно изобразил? Потенциометр меняет напряжение от 0 до 1,1В
https://yadi.sk/i/M3uIVvD1dXZTh
Сообщение отредактировал SimBB - Понедельник, 22.12.2014, 09:47 |
|
| |
SimBB | Дата: Понедельник, 22.12.2014, 12:19 | Сообщение # 9 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| Цитата sany2 ( ) Reference = Avcc То есть делитель напряжения не нужен и можно подавать на ножку 0 -5 вольт?
|
|
| |
kestrel | Дата: Понедельник, 22.12.2014, 12:30 | Сообщение # 10 |
Группа: Проверенные
Сообщений: 52
Статус: Offline
| да не нужен, вам же sany2 и код уже написал
|
|
| |
SimBB | Дата: Понедельник, 22.12.2014, 14:34 | Сообщение # 11 |
Группа: Проверенные
Сообщений: 12
Статус: Offline
| sany2 , kestrel , огромное Вам спасибо,теперь я разобрался что куда)
|
|
| |