Страница 2 из 2
Re: управление
Добавлено: Ср дек 22, 2010 19:42:29
олежек
$regfile = «atini 2313.dat» 'говорим компилятору что у нас мега8
$crystal = 8000000
Config Portb.1 = Output ' конфигурируем порт B.1 как выход
Config Pind.1 = Input ' конфигурируем порт B.1 как выход
Do
If Pind.1 = 0 Then ' УСЛОВИЕ - если на 2-й ножке порта С низкий логический уровень то...
Portb.1=1 'подключаем Portb.1 к положительному выводу источника питания
Waitms 500 'ждем пол секунды
Portb.1=0
Else ' в противном случае...
Portb.0 = 0 ' устанавливаем на ножке 0 порта В низкий логический уровень (светодиод не горит)
End If'конец условия
Loop
End ' начало бесконечного цикла
вот так получилось
пришлось правда резистор подтягиваюший единичку pind.1 на 4.7 ком поставить
Re: управление
Добавлено: Ср дек 22, 2010 22:13:48
Engineer_Keen
олежек писал(а):пришлось правда резистор подтягиваюший единичку pind.1 на 4.7 ком поставить
Надо было PORTD.1 в единицу установить, тогда резистор не нужен.
Re: управление
Добавлено: Ср дек 22, 2010 23:34:45
олежек
тоесть добавить строчку в конфигурацию порта
или заменить пин на порт
Re: управление
Добавлено: Пт дек 24, 2010 19:39:34
олежек
хоть порт пиши хоть пин
все равно без резистора не работает
Re: управление
Добавлено: Пт дек 24, 2010 20:31:38
Engineer_Keen
Вы в курсе за что отвечают регистры PORTn, DDRn и PINn каждого порта? Если нет, советую сходить в обучалку...
Re: управление
Добавлено: Вс дек 26, 2010 09:42:00
олежек
да читал я про конфигурацию портов
я написал и порт целиком в 1
и пин выставил в единицу
пробовал по всякому
без резистора не тянется ножка
не знаю почему
Re: управление
Добавлено: Вс дек 26, 2010 11:10:58
Engineer_Keen
олежек писал(а):без резистора не тянется ножка не знаю почему
Ну тогда остается только вариант что ножка спалилась

Re: управление
Добавлено: Ср дек 29, 2010 16:57:51
олежек
сразу на двух мк спалилась?
Re: управление
Добавлено: Вс мар 06, 2011 15:30:12
олежек
здравствуйте
усложнение задачки
вот сюда надо подключить еще одну кнопку
сказжем на порт д2
она должна прибавлять время скажем на 10 и до бесконечности
и кнопку которая будет убавлять время на 10 и до 0
tit не плохо бы вывести значение этого времени на семисегментный индикатор
$regfile = «atini 2313.dat» 'говорим компилятору что у нас мега8
$crystal = 8000000
Config Portb.1 = Output ' конфигурируем порт B.1 как выход
Config Pind.1 = Input ' конфигурируем порт B.1 как выход
Do
If Pind.1 = 0 Then ' УСЛОВИЕ - если на 2-й ножке порта С низкий логический уровень то...
Portb.1=1 'подключаем Portb.1 к положительному выводу источника питания
Waitms 500 'ждем пол секунды
Portb.1=0
Else ' в противном случае...
Portb.0 = 0 ' устанавливаем на ножке 0 порта В низкий логический уровень (светодиод не горит)
End If'конец условия
Loop
End ' начало бесконечного цикла