亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lcfmet737.asm

?? FCL 元件數字測試儀
?? ASM
?? 第 1 頁 / 共 3 頁
字號:
;CAPMET737.ASM 21AUG03 - COPYRIGHT JOHN BECKER - EPE IND/CAP/FREQ METER

;PIC16F628, 3.2768MHz, WDT OFF, POR ON, XTAL XS

;Config register bits
; CP1 CP0 CP1 CP0 NIL CPD LVP BOR MCL OS2 POR WDT OS1 OS0
;  1   1   1   1   1   1   0   0   1   0   0   0   0   1
;N.B. Logic 1/0 do NOT necessarily mean that the function is On/Off
;respectively - refer to PIC '627/8 data sheet

#DEFINE BANK0 BCF $03,5
#DEFINE BANK1 BSF $03,5

        List P = PIC16F628, R=DEC; 
        __CONFIG   h'3F21'

        include P16F628.inc

        CBLOCK
REGA0				;lsb
REGA1
REGA2
REGA3				;msb

REGB0				;lsb
REGB1
REGB2
REGB3				;msb

REGC0				;lsb
REGC1
REGC2
REGC3				;msb

DSIGN				;Digit Sign. 0=positive,FF(or non zero)=negative
DIGIT1				;MSD
DIGIT2
DIGIT3
DIGIT4
DIGIT5				;Decimal digits
DIGIT6
DIGIT7
DIGIT8
DIGIT9
DIGIT10				;LSD
MTEMP
MCOUNT
DCOUNT

LOOP
LOOPA
RSLINE
STORE
SLOWIT
POINT
TIMEMSB
OVERFLOW
STORE2
LARGE
NANO
CAPREF3
CAPREF2
CAPREF1
CAPREF0
INDREF3
INDREF2
INDREF1
INDREF0
TIMEOUT
SWITCH
ZERO
INDCORRECT
CAPCORRECT
CORRECTLOC
        ENDC

PROMVAL  EQU $70   ; accessed via both BANKS

               ; locations up to $7F are available

; **************

        .ORG 0
        goto GIEOFF
        .ORG 4          ; Interrupt vector address
        goto GIEOFF
        .ORG 5          ; Start of program memory

GIEOFF: BCF INTCON,GIE  ; turn off global interrupts
        BTFSC INTCON,GIE
        goto GIEOFF
        goto START

TABLCD: addwf PCL,F     ;LCD initialisation table
        retlw %00110011 ;initialise lcd - first byte
        retlw %00110011 ;2nd byte (repeat of first)
        retlw %00110010 ;set for 4-bit operation
        retlw %00101100 ;set for 2 lines
        retlw %00000110 ;set entry mode to increment each address
        retlw %00001100 ;set display on, cursor off, blink off
        retlw %00000001 ;clear display
        retlw %00000010 ;return home, cursor & RAM to zero
                        ;end inititalisation table

TITLE:  addwf PCL,F
        retlw ' '
        retlw 'E'
        retlw 'P'
        retlw 'E'
        retlw ' '
        retlw 'L'
        retlw 'C'
        retlw 'F'
        retlw ' '
        retlw 'M'
        retlw 'E'
        retlw 'T'
        retlw 'E'
        retlw 'R'
        retlw ' '
        retlw ' '
        retlw ' '

TITLEB: addwf PCL,F
        retlw ' '
        retlw 'W'
        retlw 'A'
        retlw 'I'
        retlw 'T'
        retlw 'I'
        retlw 'N'
        retlw 'G'
        retlw ' '
        retlw 'T'
        retlw 'I'
        retlw 'M'
        retlw 'I'
        retlw 'N'
        retlw 'G'
        retlw ' '


OVERFLOWED:  addwf PCL,F
        retlw 'O'
        retlw 'V'
        retlw 'E'
        retlw 'R'
        retlw 'F'
        retlw 'L'
        retlw 'O'
        retlw 'W'

CALIB:  addwf PCL,F
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw 'N'
        retlw 'U'
        retlw 'L'
        retlw 'L'
        retlw 'E'
        retlw 'D'
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '

TIMEDOUT: addwf PCL,F
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw 'T'
        retlw 'I'
        retlw 'M'
        retlw 'E'
        retlw ' '
        retlw 'O'
        retlw 'U'
        retlw 'T'
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '

CAPTIME: addwf PCL,F
        retlw ' '
        retlw ' '
        retlw ' '
        retlw 'C'
        retlw 'A'
        retlw 'P'
        retlw 'A'
        retlw 'C'
        retlw 'I'
        retlw 'T'
        retlw 'O'
        retlw 'R'
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '

INDTIME: addwf PCL,F
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw 'I'
        retlw 'N'
        retlw 'D'
        retlw 'U'
        retlw 'C'
        retlw 'T'
        retlw 'O'
        retlw 'R'
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '


CORRECTMSG: addwf PCL,F
        retlw ' '
        retlw 'C'
        retlw 'O'
        retlw 'R'
        retlw 'R'
        retlw 'E'
        retlw 'C'
        retlw 'T'
        retlw 'I'
        retlw 'O'
        retlw 'N'
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '
        retlw ' '


;*******************

START:  clrf PORTA
        clrf PORTB
        movlw $07
        movwf CMCON

        BANK1
        movlw %11000000
        movwf TRISB
        movlw %00011100     ; RA0,RA1 as output
        movwf TRISA
        movlw %10000110     ; timer 1:128, pull-ups off
        movwf OPTION_REG
        BANK0

        clrf INTCON
        call PAUSIT
        call LCDSET
        call PAUSIT

        movlw %00000000     ; T1 ext osc disable (bit3=0), T1 stopped (bit0=0), internal clock (bit1=0), bit2 dont care
        movwf T1CON

        btfsc PORTA,2       ; is S3 (RA2) pressed?
        goto CORRECTIT

        call LCD1
        bsf RSLINE,4

        clrf LOOP
TITLE2: movf LOOP,W
        call TITLE
        call LCDOUT
        incf LOOP,F
        btfss LOOP,4
        goto TITLE2

        clrf INTCON
        clrf POINT
        clrf CAPREF3
        clrf CAPREF2
        clrf CAPREF1
        clrf CAPREF0
        clrf INDREF3
        clrf INDREF2
        clrf INDREF1
        clrf INDREF0

        movlw 0
        call PRMGET
        movwf INDCORRECT
        movlw 1
        call PRMGET
        movwf CAPCORRECT

        call PAUSIT         ; delay
        call PAUSIT         ; delay

        clrf INTCON
        movlw 255
        movwf SWITCH

;****************** START OF MAIN

MAIN:   clrf TIMEOUT
        movf PORTA,W
        andlw %00010000
        xorwf SWITCH,W
        btfsc STATUS,Z
        goto MAIN2

        movf PORTA,W
        andlw %00010000
        movwf SWITCH

        call LCD21
        bsf RSLINE,4
        clrf LOOP
TITLE3: movf LOOP,W
        call TITLEB
        call LCDOUT
        incf LOOP,F
        btfss LOOP,4
        goto TITLE3

        call LCD1
        bsf RSLINE,4
        clrf LOOP
        btfsc PORTA,4
        goto TIMOUT4

MAIN3:  movf LOOP,W
        call CAPTIME
        call LCDOUT
        incf LOOP,F
        btfss LOOP,4
        goto MAIN3
        goto MAIN2

MAIN4:  movf LOOP,W
        call INDTIME
        call LCDOUT
        incf LOOP,F
        btfss LOOP,4
        goto TIMOUT4
        goto MAIN4

MAIN2:  btfsc SWITCH,4
        goto INDUCT
        goto CAPACITOR

; *****************

; QBASIC ROUTINE ILLUSTRATING INDUCTANCE FORMULA

;CLS
;DEFDBL A-Z
;PRINT "Formula:  L = ((1000000000 / (2 * PI * F) ^ 2)) / C"
;PRINT

;PI = 22 / 7
;F = 389305: PRINT "Frequency = "; F
;C = 200: C = (C * C) / (C + C): PRINT "Capacitance = "; C

;Process:
;L = F * 44: PRINT L
;L = INT(L / 7): PRINT L
;L = INT(1000000000 / L): PRINT L
;L = L * L: PRINT L
;L = INT(L / 10):
;L = L / 1000
;PRINT "Inductance = "; L; "uH"

; **************

INDUCT: movlw %00000001     ; set for correct osc
        movwf PORTA

        call INDTIMER       ; get osc frequency
        call COPY_TIME_REGA

        clrf POINT
        clrf LARGE

        movf TMR1H,W
        andlw %11000000
        iorwf TIMEMSB,W     ; is timing value less than 16384?
        btfsc STATUS,Z
        call LARGEVALUE     ; yes
        btfsc TIMEOUT,0
        goto TIMEEND

        call LCD1           ; set address
        bsf RSLINE,4        ; set RS for data send
        call BIN2DEC
        call SHOWITALL
        movlw 'H'
        call LCDOUT
        movlw 'z'
        call LCDOUT
        movlw ' '
        call LCDOUT
        movlw ' '
        call LCDOUT

        call COPY_TIME_REGA

        movlw 44            ; multiply freq x 44 (22 x 2) (2 x PI = 44/7)
        call MULTIPLYSMALL  ; REGA * 44 -> REGA        

        movlw 7             ; divide by 7
        call DIVIDESMALL    ; REGA / 7 -> REGA

        call COPY_REGA_REGB ; copy answer into REGB
        call DIVIDEBILLION  ; 1,000,000,000 / REGB -> REGA

        call COPY_REGA_REGB ; copy answer into REGB
        call MULTIPLY       ; REGA * REGB -> REGA (squaring REGA)
        movf STATUS,W
        andlw 1
        movwf OVERFLOW

        movlw '2'
        movf OVERFLOW,F
        btfss STATUS,Z
        goto SHOWOVERFLOW

        movlw 10            ; divide by 10
        call DIVIDESMALL    ; REGA / 100 -> REGA
        movf STATUS,W
        andlw 1
        movwf OVERFLOW

        movlw 'C'
        movf OVERFLOW,F
        btfss STATUS,Z
        goto SHOWOVERFLOW

        movf INDCORRECT,W   ; multiply by correction factor
        call MULTIPLYSMALL  ; REGA * REGB -> REGA
        movf STATUS,W
        andlw 1
        movwf OVERFLOW

        movlw 'A'
        movf OVERFLOW,F
        btfss STATUS,Z
        goto SHOWOVERFLOW

        movlw 100           ; divide by 100
        call DIVIDESMALL    ; REGA / 100 -> REGA
        movf STATUS,W
        andlw 1
        movwf OVERFLOW

        movlw 'B'
        movf OVERFLOW,F
        btfss STATUS,Z
        goto SHOWOVERFLOW

        btfsc PORTA,2       ; is S3 (RA2) pressed?
        call CALIBIND

        movf LARGE,F
        btfsc STATUS,Z
        call SUBTRACTINDREF

        movlw 4
        movwf POINT

        call LCD21          ; set address
        bsf RSLINE,4        ; set RS for data send

        call BIN2DEC        ; converts binary in REGA to decimal in DIGIT

        movf LARGE,F
        btfsc STATUS,Z
        call CHECKMILLI

        call SHOWITALL

        movf LARGE,F
        btfss STATUS,Z
        goto IND2

        movlw 'u'
        movf NANO,F
        btfss STATUS,Z
        movlw 'm'
        call LCDOUT
IND2:   movlw 'H'
        call LCDOUT
        movlw ' '
        call LCDOUT
        movlw ' '
        call LCDOUT
        movlw ' '
        call LCDOUT
        movlw ' '
        call LCDOUT

        goto MAIN

; ***************

CAPACITOR: movlw %00000010  ; set for correct osc
        movwf PORTA

        clrf TIMEMSB
        call INDTIMER

        call COPY_TIME_REGA

        clrf POINT
        clrf LARGE

        movf TMR1H,W
        andlw %11111110
        iorwf TIMEMSB,W     ; is timing value less than 512?
        btfsc STATUS,Z
        call LARGEVALUE     ; yes

        btfsc ZERO,0
        goto TIMEEND

        call LCD1           ; set address
        bsf RSLINE,4        ; set RS for data send
        call BIN2DEC
        call SHOWITALL
        movlw 'H'
        call LCDOUT
        movlw 'z'
        call LCDOUT
        movlw ' '
        call LCDOUT
        movlw ' '
        call LCDOUT

        call COPY_TIME_REGA

        movlw 22             ; multiply freq x PI (R = 1k) (ignoring 3 zeros)
        call MULTIPLYSMALL
        movlw 7
        call DIVIDESMALL

        call COPY_REGA_REGB ; copy answer into REGB
        call DIVIDEBILLION  ; REGA / REGB -> REGA

        movf CAPCORRECT,W   ; multiply by correction factor
        call MULTIPLYSMALL  ; REGA / REGB -> REGA
        movlw 100           ; divide by 100
        call DIVIDESMALL    ; REGA / 100 -> REGA

        btfsc PORTA,2       ; is S3 (RA2) pressed?
        call CALIBCAP

        movf LARGE,F
        btfsc STATUS,Z
        call SUBTRACTCAPREF

        call LCD21          ; set address

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产wwwccc36天堂| 日韩三级av在线播放| 国产精品三级在线观看| 国产精品资源在线| 亚洲精品一线二线三线无人区| 麻豆专区一区二区三区四区五区| 678五月天丁香亚洲综合网| 日韩 欧美一区二区三区| 欧美电影免费观看高清完整版| 久久精品国产精品青草| 久久精品一区二区| www.欧美精品一二区| 亚洲精品成a人| 91麻豆精品国产综合久久久久久 | 欧美成人精品二区三区99精品| 日本成人在线网站| 国产日韩影视精品| 色婷婷综合久久久中文字幕| 亚洲线精品一区二区三区八戒| 欧美成人一级视频| 成人午夜又粗又硬又大| 有坂深雪av一区二区精品| 欧美日韩高清影院| 国产高清亚洲一区| 亚洲人成小说网站色在线 | 亚洲一区二区影院| 日韩免费视频一区二区| 高清国产一区二区三区| 夜夜精品浪潮av一区二区三区| 欧美精品第1页| 成人国产电影网| 午夜久久电影网| 久久精品在这里| 欧美日韩国产高清一区二区| 国产精品亚洲人在线观看| 亚洲影院理伦片| 久久精品亚洲精品国产欧美| 欧美性猛交xxxx乱大交退制版| 国产真实乱子伦精品视频| 亚洲靠逼com| 国产亚洲污的网站| 欧美日韩精品一区二区三区蜜桃| 国产99一区视频免费 | 亚洲欧洲日韩一区二区三区| 欧美日韩电影在线播放| 高清不卡在线观看| 久久99精品久久久久久动态图| 亚洲视频一二三| 精品国产一区二区在线观看| 欧美午夜精品免费| www.亚洲在线| 国精产品一区一区三区mba视频 | 亚洲午夜激情网站| 国产精品丝袜久久久久久app| 欧美一区二区视频在线观看2022| 丰满放荡岳乱妇91ww| 免费成人av资源网| 亚洲大片在线观看| 中文字幕亚洲一区二区av在线| 欧美草草影院在线视频| 在线成人免费视频| 91福利区一区二区三区| 成人禁用看黄a在线| 国产又黄又大久久| 麻豆一区二区99久久久久| 亚洲国产精品久久久久婷婷884| 欧美国产日本视频| 日本一区二区电影| 国产欧美日韩不卡免费| 26uuu精品一区二区在线观看| 欧美日本一道本在线视频| 色综合天天综合色综合av | 成人av资源在线| 国产盗摄视频一区二区三区| 毛片av一区二区三区| 麻豆精品国产91久久久久久| 日韩在线一区二区三区| 香蕉影视欧美成人| 五月综合激情网| 亚洲高清三级视频| 天天av天天翘天天综合网色鬼国产| 一区二区视频在线| 亚洲一区在线观看视频| 亚洲成人你懂的| 日韩高清在线电影| 美女被吸乳得到大胸91| 久久99久久精品| 久久99国产乱子伦精品免费| 激情五月婷婷综合网| 黑人巨大精品欧美一区| 国产激情91久久精品导航| 成人午夜伦理影院| 99在线精品观看| 欧美性色aⅴ视频一区日韩精品| 在线观看一区二区视频| 欧美在线视频不卡| 91精品在线麻豆| 精品国产123| 国产精品高清亚洲| 亚洲成人一区在线| 日韩av电影免费观看高清完整版 | 久久久www成人免费毛片麻豆| 国产欧美日韩另类一区| 亚洲欧洲另类国产综合| 亚洲一区日韩精品中文字幕| 偷拍自拍另类欧美| 国产精品系列在线播放| 色哟哟精品一区| 91精品国产欧美一区二区| 国产亚洲精品资源在线26u| 1000精品久久久久久久久| 亚洲bt欧美bt精品777| 国内精品写真在线观看| 91丝袜美腿高跟国产极品老师 | 色婷婷综合久久久久中文 | 蜜桃视频一区二区三区在线观看 | 美女国产一区二区三区| 成人午夜电影网站| 欧美三级资源在线| 久久蜜桃av一区二区天堂| 最新欧美精品一区二区三区| 香蕉av福利精品导航| 国产精品69毛片高清亚洲| 在线观看91视频| 2021久久国产精品不只是精品| 日韩美女视频一区二区 | 精品国产免费人成在线观看| 欧美激情在线观看视频免费| 婷婷综合另类小说色区| 高清不卡一二三区| 欧美精品丝袜中出| 中文字幕亚洲一区二区va在线| 无码av免费一区二区三区试看 | 国产精品久久久久一区 | 极品少妇xxxx精品少妇| 日本韩国一区二区| 国产午夜精品久久久久久久 | 国产麻豆午夜三级精品| 欧美日韩国产一级片| 国产精品免费免费| 久久aⅴ国产欧美74aaa| 欧美午夜电影网| 国产精品久久久99| 国产一区视频在线看| 欧美精品xxxxbbbb| 艳妇臀荡乳欲伦亚洲一区| 懂色一区二区三区免费观看 | 色婷婷综合久久久久中文| 国产日韩一级二级三级| 五月婷婷另类国产| 99re这里只有精品视频首页| www激情久久| 三级精品在线观看| 日本丶国产丶欧美色综合| 日本一区二区三区免费乱视频 | 国产在线播精品第三| 日韩欧美精品在线| 日本美女一区二区三区| 欧美精品1区2区3区| 亚洲二区在线视频| 一本一本久久a久久精品综合麻豆| 国产清纯美女被跳蛋高潮一区二区久久w | 成人福利视频网站| 久久综合九色综合97婷婷| 韩国成人福利片在线播放| 欧美三级视频在线播放| 亚洲制服丝袜在线| 色婷婷综合久久| 亚洲男人电影天堂| 91麻豆福利精品推荐| 国产精品久久久久久久浪潮网站| 国产伦精一区二区三区| 2020日本不卡一区二区视频| 精品一区二区在线免费观看| 欧美成人精品二区三区99精品| 老鸭窝一区二区久久精品| 欧美成人一区二区三区片免费 | 一区二区三区毛片| 欧美性欧美巨大黑白大战| 亚洲成人先锋电影| 日韩午夜激情电影| 久久精品国产秦先生| 久久嫩草精品久久久精品一| 国产成人亚洲综合a∨婷婷图片| 欧美国产日韩精品免费观看| 成人久久18免费网站麻豆| 亚洲四区在线观看| 欧美性淫爽ww久久久久无| 三级在线观看一区二区 | 欧美激情在线观看视频免费| 成人美女视频在线看| 亚洲女与黑人做爰| 欧美日韩精品电影| 久久电影网站中文字幕| 国产午夜亚洲精品羞羞网站| 97久久人人超碰| 日韩黄色免费网站| 久久蜜桃香蕉精品一区二区三区| 97精品电影院| 免费成人你懂的|