完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
; NB358 software v1.0
LIST P=16F676 INCLUDE "16F676.INC" __CONFIG _CP_OFF & _WDT_ON & _BODEN & _PWRTE_ON & _XT_OSC & _MCLRE_ON & _CPD_OFF ; ********************************* ; Variable Define ; ********************************* ;------------------------------------ CBLOCK 20H ;W_TEMP ;STATUS_TEMP ;TEMP ;SYS_STATUS ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ;| Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 | ;|Smoke | heat | Totle| | | heat | smoke| Heat | ;|Retest|retest| Alarm| | | alarm| alarm| Rise | ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ CC ;------------------ TMR0_TEMP SMOKE_DAT ;------------------ ;LED_COUNT ;------------------ COUNT COMMAND SYS_ADDR ADDRESS ENDC ;======================================= #DEFINE SERIAL_IN RC,0 #DEFINE POWER RC,1 #DEFINE RED_LED RC,2 #DEFINE SMOKE_AD_IN RC,3 3 #DEFINE SIGNAL_OUT RC,4 #DEFINE REMOTE_LED RC,5 #DEFINE INFRARED_SEND RA,0 #DEFINE HEAT__AD_IN RA,1 #DEFINE SIGNAL_IN RA,2 ;####################################### ;####################################### ORG 00H GOTO MAIN ORG 04H GOTO INT_SERVICE ;************************************** ; Interrupt Sub ;************************************** INT_SERVICE CLRWDT MOVLW 0AH MOVWF COUNT MOVLW 027H MOVWF FSR READ_INIT_PULSE BCF RED_LED CLRWDT BTFSC RA,2 GOTO $-2 CLRF TMR0 CLRWDT BTFSS RA,2 GOTO $-2 MOVF TMR0,0 MOVWF TMR0_TEMP CLRF TMR0 MOVLW 050H ;04CH SUBWF TMR0_TEMP,0 BTFSS STATUS,C GOTO EXIT_READ MOVLW 060H ;;;;;0EBH SUBWF TMR0_TEMP,0 BTFSC STATUS,C GOTO EXIT_READ MOVF TMR0_TEMP,0 MOVWF INDF INCF FSR ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;PPPPPPPPPPP READ_SIGNAL_DATA CLRWDT BTFSC RA,2 GOTO $-2 MOVF TMR0,0 MOVWF TMR0_TEMP MOVWF INDF CLRF TMR0 INCF FSR,1 MOVLW 0F0H ANDWF TMR0_TEMP,0 BSF STATUS,C BTFSC STATUS,Z BCF STATUS,C RLF ADDRESS,1 RLF COMMAND,1 CLRWDT BTFSS RA,2 GOTO $-2 CLRF TMR0 DECFSZ COUNT,1 GOTO READ_SIGNAL_DATA BCF STATUS,C RLF ADDRESS,1 RLF COMMAND,1 MOVF SYS_ADDR,0 SUBWF ADDRESS,0 BSF RED_LED ;;;;;;;;;;;;;;;;;;;;;;;; BTFSS STATUS,Z GOTO EXIT_READ RLF COMMAND,1 RLF COMMAND,1 RLF COMMAND,1 MOVLW 038H ANDWF COMMAND,1 MOVLW 03H IORWF COMMAND,1 BCF STATUS,C RLF ADDRESS,1 RLF COMMAND,1 RLF ADDRESS,1 RLF COMMAND,1 MOVLW 014H MOVWF COUNT ;;LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL LINE_TO_PANEL CLRWDT BTFSC RA,2 GOTO $-2 CALL DE360 RLF ADDRESS,1 RLF COMMAND,1 RLF SMOKE_DAT,1 BTFSS STATUS,C GOTO $+3 BSF SIGNAL_OUT CALL DE250 BCF SIGNAL_OUT CLRWDT BTFSS RA,2 GOTO $-2 CLRF TMR0 DECFSZ COUNT,1 GOTO LINE_TO_PANEL SAVE MOVLW 024H MOVWF FSR MOVLW 033H MOVWF COUNT BSF RED_LED ;;;;;;;;;;;; SAVE_DATA CLRWDT BSF STATUS,RP0 MOVF FSR,0 MOVWF EEADR MOVF INDF,0 MOVWF EEDATA BSF EECON1,WREN MOVLW 055H MOVWF EECON2 MOVLW 0AAH MOVWF EECON2 BSF EECON1,WR CLRWDT BTFSC EECON1,WR GOTO $-2 INCF FSR,1 DECFSZ COUNT,1 GOTO SAVE_DATA BCF EECON1,WREN BCF STATUS,RP0 NOP CLRWDT NOP NOP GOTO $-4 EXIT_READ BCF RED_LED RETFIE ;************************************ ; Main ;************************************ MAIN: CALL SYS_INIT NOP SLEEP SLEEP SLEEP NOP NOP ;*********************************** ; System Setup ;*********************************** ;-------------------- NORMAL_MODE ;---------read system address------------------------ BCF RA,1 BSF STATUS,RP0 BCF ANSEL,1 BCF TRISA,1 BCF STATUS,RP0 NOP BSF POWER GOTO $+1 BSF RA,0 MOVLW 08H MOVWF COUNT BCF RA,0 NOP READ_ADDRESS BSF RA,1 GOTO $+1 BCF RA,1 BSF STATUS,C BTFSS RC,0 BCF STATUS,C RRF SYS_ADDR,1 DECFSZ COUNT,1 GOTO READ_ADDRESS BSF STATUS,RP0 BSF TRISA,1 BSF ANSEL,1 BCF STATUS,RP0 BCF POWER BCF STATUS,C RLF SYS_ADDR,1 ;''''''''''''''''''''''''''''''''' BSF STATUS,RP0 MOVLW 02H MOVWF EEADR MOVF SYS_ADDR,0 MOVWF EEDATA BSF EECON1,WREN MOVLW 055H MOVWF EECON2 MOVLW 0AAH MOVWF EECON2 BSF EECON1,WR BTFSC EECON1,WR GOTO $-1 BCF EECON1,WREN BCF STATUS,RP0 ;-------------------------------------------- ;************************************** ; Main Sub ;************************************** MAIN1 ; CLRWDT CLRF COMMAND CLRF ADDRESS MOVLW 070H MOVWF SMOKE_DAT MOVLW 090H MOVWF INTCON NOP MAIN9 CLRWDT NOP ; SLEEP NOP NOP ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; GOTO MAIN9 ;****************************************************** ; System Initialization ;****************************************************** SYS_INIT: BSF STATUS,RP0 CALL 03FFH ;Get the cal value MOVWF OSCCAL ;Calibrate BCF STATUS,RP0 MOVLW 00H MOVWF RA MOVLW 00H MOVWF RC MOVLW 07H MOVWF CMCON ;comp off ; MOVLW 030H ; MOVWF T1CON MOVLW 080H MOVWF ADCON0 CLRF INTCON BSF STATUS,RP0 MOVLW 03EH MOVWF TRISA MOVLW 09H MOVWF TRISC CLRF PIE1 MOVLW 080H ;08EH MOVWF OPTION_REG MOVLW 082H MOVWF ANSEL MOVWF 00H MOVWF WPUA MOVLW 00H ;;;; MOVWF IOCA MOVLW 060H MOVWF ADCON1 ; MOVLW 00H ; MOVWF VRCON BCF STATUS,RP0 ; CLRF SYS_STATUS RETURN ;************************************** ; delay sub ;************************************** DELAY CLRWDT DECFSZ CC,1 GOTO DELAY RETURN DE360 MOVLW 08H ;370uS MOVWF CC CALL DELAY RETURN DE250 MOVLW 04H ;250uS MOVWF CC CALL DELAY RETURN ;******************************************** END |
|
|
|
|
646 浏览 0 评论
RT-Thread与英飞凌(infineon)合作得板子PSOC 6 板子学习
637 浏览 0 评论
有人有STM8H1K08T连接TM1650的源码吗,可以直接使用的那种,我的代码在烧录之后数码管一直处于熄灭状态
926 浏览 0 评论
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
745 浏览 0 评论
824 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16951 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-8 10:36 , Processed in 0.771879 second(s), Total 63, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖