- •Пояснительная записка
- •Содержание
- •Введение
- •Выбор микроконтроллера для разработки измерителя частоты сигналов на микроконтроллере pic16f628
- •Проектирование измерителя частоты сигналов на микроконтроллере pic16f628
- •Разработка измерителя частоты сигналов на микроконтроллере pic16f628
- •Разработка программы измерителя частоты сигналов на микроконтроллере pic16f628
- •Тестирование программы измерителя частоты сигналов на микроконтроллере pic16f628
- •Заключение
- •Список литературы
Список литературы
Гелль П.П., Н.К.Иванов-Есипович. Конструирование и микроминиатюризация радиоэлектронной аппаратуры: Учебник для вузов. - Л.: Энергоатомиздат. Ленингр.отд-ние, 1984. – 536 с.
Гуткин А.С. Проектирование радиосистем и радиоустройств. - М: Высш. Шк., 1989.
Микроконтроллеры. Выпуск 2: Однокристальные микроконтроллеры PIC12c5x, PIC16x8x, PIC14000, M16C/61/62. Перевод с англ. Б.Я. Прокопенко / Под ред. Б. Я. Прокопенко. - М.: ДОДЭКА, 2000.- 336 с.
Радио №1, 2001г. - с.21, "Частотомер на PIC-контроллере".
Справочник по конструированию РЭА под ред. А.И. Горобец, А.И. Степаненко, В.М. Коронкевич.
Угрюмов Е.П. Цифровая схемотехника. - СПб.: БХВ-Санкт-Петербург, 2000. - 528 с.: ил.
Фрумкин Г.Д. Расчет и конструирование радиоаппаратуры: Учебник для радиотехнич. спец. Техникумов. М.: Высш. Шк.,1989. - 463 с.: ил.
microchip:8101/
paguo/
disall.narod/picpro.htm
chipnews/html.cgi/arhiv/index.htm
ПРИЛОЖЕНИЕ 1
ПРИНЦИПИАЛЬНАЯ ЭЛЕКТРИЧЕСКАЯ СХЕМА ИЗМЕРИТЕЛЯ ЧАСТОТЫ СИГНАЛОВ НА МИКРОКОНТРОЛЛЕРЕ PIC16F628
ПРИЛОЖЕНИЕ 2
ПОЛНЫЙ ТЕКСТ РАЗРАБОТАННОЙ ПРОГРАММЫ ИЗМЕРИТЕЛЯ ЧАСТОТЫ СИГНАЛОВ НА МИКРОКОНТРОЛЛЕРЕ PIC16F628
Да
Да
Да
#include <p16F628.inc>
_BODEN_ON EQU H'3FFF'
_BODEN_OFF EQU H'3FBF'
_CP_ALL EQU H'03FF'
_CP_75 EQU H'17FF'
_CP_50 EQU H'2BFF'
_CP_OFF EQU H'3FFF'
_DATA_CP_ON EQU H'3EFF'
_DATA_CP_OFF EQU H'3FFF'
_PWRTE_OFF EQU H'3FFF'
_PWRTE_ON EQU H'3FF7'
_WDT_ON EQU H'3FFF'
_WDT_OFF EQU H'3FFB'
_LVP_ON EQU H'3FFF'
_LVP_OFF EQU H'3F7F'
_MCLRE_ON EQU H'3FFF'
_MCLRE_OFF EQU H'3FDF'
_ER_OSC_CLKOUT EQU H'3FFF'
_ER_OSC_NOCLKOUT EQU H'3FFE'
_INTRC_OSC_CLKOUT EQU H'3FFD'
_INTRC_OSC_NOCLKOUT EQU H'3FFC'
_EXTCLK_OSC EQU H'3FEF'
_LP_OSC EQU H'3FEC'
_XT_OSC EQU H'3FED'
_HS_OSC EQU H'3FEE'
d0 EQU H'20'
d1 EQU H'21'
d2 EQU H'22'
d3 EQU H'23'
d4 EQU H'24'
d5 EQU H'25'
d6 EQU H'26'
d7 EQU H'27'
d8 EQU H'28'
d9 EQU H'29'
dF EQU H'2A'
d10 EQU H'30'
d11 EQU H'31'
d12 EQU H'32'
d13 EQU H'33'
d14 EQU H'34'
d15 EQU H'35'
d16 EQU H'36'
d17 EQU H'37'
d18 EQU H'38'
d19 EQU H'39'
dFF EQU H'3A'
dgt100 EQU H'3B'
dgt10 EQU H'2B'
dgt1 EQU H'2F'
TIMER1 EQU H'2C'
TIMER2 EQU H'2D'
count EQU H'2E'
cnvrt EQU H'3C'
ORG 0
GOTO init
DELAY1 movlw D'125'
movwf timer1
movlw D'7'
movwf timer2
LOOP1 decfsz timer1, f
goto loop1
decfsz timer2, f
goto loop1
return
dsp1 movfw dgt100
addlw H'20'
movwf FSR
movfw INDF
movwf PORTB
movfw dgt100
addlw H'30'
movwf FSR
movfw INDF
movwf PORTA
return
dsp2 movfw dgt10
addlw H'20'
movwf FSR
movfw INDF
movwf PORTB
movfw dgt10
addlw H'30'
movwf FSR
movfw INDF
movwf PORTA
return
dsp3 movfw dgt1
addlw H'20'
movwf FSR
movfw INDF
movwf PORTB
movfw dgt1
addlw H'30'
movwf FSR
movfw INDF
movwf PORTA
return
init MOVLW B'00000111'
MOVWF CMCON
movlw B'11101'
movwf T2CON
movlw B'101110'
movwf T1CON
BSF STATUS,RP0
movlw .250
movwf PR2
MOVLW B'100'
MOVWF OPTION_REG
movlw B'11000000'
movwf TRISB
MOVLW B'11100000'
MOVWF TRISA
BCF STATUS,RP0
movlw B'111111'
movwf d0
clrf d10
movlw B'110'
movwf d1
clrf d11
movlw B'11011'
movwf d2
clrf d12
bsf d12,3
movlw B'1111'
movwf d3
clrf d13
bsf d13,3
movlw B'100110'
movwf d4
clrf d14
bsf d14,3
movlw B'101101'
movwf d5
clrf d15
bsf d15,3
movlw B'111100'
movwf d6
clrf d16
bsf d16,3
movlw B'111'
movwf d7
clrf d17
movlw B'111111'
movwf d8
clrf d18
bsf d18,3
movlw B'100111'
movwf d9
clrf d19
bsf d19,3
movlw B'110001'
movwf dF
clrf dFF
bsf dFF,3
clrf dgt1
clrf dgt10
clrf dgt100
main movlw .120
movwf count
loop2 call dsp1
bsf PORTA,0
call delay1
call dsp2
bsf PORTA,1
call delay1
call dsp3
bsf PORTA,2
call delay1
decfsz count,f
goto loop2
bcf PIR1,TMR2IF
clrf TMR1L
clrf TMR1H
gopen btfss PIR1,TMR2IF
goto gopen
bsf T1CON,TMR1ON
bcf PIR1,TMR2IF
gclse btfss PIR1,TMR2IF
goto gclse
bcf T1CON,TMR1ON
bcf PIR1,TMR2IF
incf TMR1H,f
movfw TMR1L
movwf cnvrt
incf cnvrt,f
clrf dgt1
clrf dgt10
clrf dgt100
b2d decfsz cnvrt,f
goto b2d1
goto b2d2
b2d1 incf dgt1,f
movlw .10
subwf dgt1,w
btfss status,z
goto b2d
incf dgt10,f
clrf dgt1
movlw .10
subwf dgt10,w
btfss status,z
goto b2d
incf dgt100,f
clrf dgt10
movlw .10
subwf dgt100,w
btfss status,z
goto b2d
clrf dgt100
movlw .10
movwf dgt10
movlw .120
movwf count
loop3 call dsp1
bsf PORTA,0
call delay1
call dsp2
bsf PORTA,1
call delay1
call dsp3
bcf PORTA,2
call delay1
decfsz count,f
goto loop3
goto main
b2d2 decfsz TMR1H,f
goto b2d
END
