📄 power.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 + -