Приветствую ВСЕХ! Подскажите как сконфигурировать Т0(нога PD7) и T5(нога PL2) для подсчета внешних импульсов. При этом TIMER0 задействован для прерываний измерений АЦП.
Atmega2560 и T0, T5
Страница: 1
Сообщений 1 страница 3 из 3
Поделиться22017-07-23 13:17:40
приветствую
не для данного МК, но вдруг пригодится:
Код:
$regfile = "2313def.dat" ' Частотомер 50.00 Герц $crystal = 4000000 ' компилятор BASCOM In_hertz Alias Pind.6 Declare Sub Byte2led(data_2byte As Word) Dim Tempb As Byte , Data_2byte As Word , Tempw As Word Dim Data_1 As Byte , Data_2 As Byte , Data_3 As Byte , Data_4 As Byte Dim Tyscha As Byte , Sotka As Byte , Desaytka As Byte , Edinica As Byte , Timercounter As Single Config Portb = Output : Portb = 255 Config Pind.6 = Input Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7 = Portb.7 , E = Portb.0 , Rs = Portb.1 Config Lcd = 16 * 2 'configure lcd screen Config Timer1 = Timer , Prescale = 8 , Capture Edge = Rising On Capture1 Captmr Enable Capture1 Enable Interrupts ' разрешаем прерывания и включаем таймер Lcd "Start..." ' ======================= С Т А Р Т ========================= Start_main_prog: Cls Timercounter = 25000000 \ Timercounter ' на входе - частота в 2 раза выше, чем от генератора сигнала! Tempw = Timercounter Lcd Tempw Goto Start_main_prog ' ========================================================= Captmr: ' Считаем импульсы, как-бы наполняем пачками между импульсами Timercounter = Capture1 Timer1 = 0 Return"
Поделиться32017-07-23 17:20:04
РРЕШЕНО! СПАСИБО sasha_1973!!!!
'Config Timer0 = Counter , Edge = Rising / Falling , Clear Timer = 1|0
Config Timer0 = Counter , Edge = Rising , Clear Timer = 0
Config Timer5 = Counter , Edge = Rising , Clear Timer = 0
Страница: 1