⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 power.sdi

📁 代码保护功能处于持续发展中。Microchip 承诺将不断改进产品的代码保护功能。任何试图破坏Microchip 代码保护功能的行为均可视 为违反了《数字器件千年版权法案(Digital Mille
💻 SDI
字号:
,,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
,,,;
,,,;       Project:        Interfacing PICs
,,,;       Source File:    POWER.ASM
,,,;       Author:         M. Bates
,,,;       Date:           20-8-05
,,,;       .....................................................
,,,;
,,,;       Step through power outputs using button
,,,;       1. DC switch using relay
,,,;       2. Mains AC switch using triac
,,,;       3. Speaker output from relay
,,,;       .....................................................
,,,;
,,,;       Processor:      PIC 16F877
,,,;
,,,;       Hardware:       Proteus VSM POW1.DSN
,,,;       Clock:          RC = 100kHz
,,,;       Inputs:         none
,,,;       Outputs:        PortD
,,,;
,,,;       WDTimer:        Disabled
,,,;       PUTimer:        Enabled
,,,;       Interrupts:     Disabled
,,,;       Code Protect:   Disabled
,,,;
,,,; ***********************************************************
,,,
,,,        PROCESSOR 16F877        ; Define MCU type
00002007,3733,,        __CONFIG 0x3733         ; Set config fuses (RC clock)
,,,
,,,; Register Label Equates.....................................
,,,
,,,PORTC   EQU     07              ; Port C Data Register
,,,PORTD   EQU     08              ; Port D Data Register
,,,TRISD   EQU     88              ; Port D Direction Register
,,,STATUS  EQU     03              ; Carry flag register
,,,
,,,; ***********************************************************
,,,
,,,; Initialise Port D (Port A defaults to inputs)..............
,,,
00000000,1683 1303,,        BANKSEL TRISD           ; Bank 1
00000002,0188,,        CLRF    TRISD           ; Outputs
00000003,1283 1303,,        BANKSEL PORTD           ; Bank 0
,,,
,,,; Start main loop ...........................................
,,,
00000005,0188,start,start   CLRF    PORTD           ; Clear Port D Data
00000006,1588,,        BSF     PORTD,3         ; Select no output
00000007,1003,,        BCF     STATUS,0        ; Clear carry bit
,,,
00000008,1807,next,next    BTFSC   PORTC,0         ; Button on?
00000009,2808,,        GOTO    next            ; no
0000000A,1C07,wait,wait    BTFSS   PORTC,0         ; yes - off?
0000000B,280A,,        GOTO    wait            ; no
,,,
0000000C,0C88,,        RRF     PORTD           ; yes - move bit right
0000000D,1C03,,        BTFSS   STATUS,0        ; last output?
0000000E,2808,,        GOTO    next            ; no - next output
0000000F,2805,,        GOTO    start           ; yes - restart
,,,
,,,        END                     ; terminate source code

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -