; 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
;'''''''''''''''''''''''''''''''''
上一篇:ICD2線序問題
下一篇:pic單片機(jī)驅(qū)動(dòng)SM311電源開關(guān)匯編程序
推薦閱讀
史海拾趣
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- Microchip 升級數(shù)字信號控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導(dǎo)體STM32MP23x:突破成本限制的工業(yè)AI應(yīng)用核心
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- 480Wh/kg!湖南久森半固態(tài)金屬鋰負(fù)極電池即將量產(chǎn)
- 中國首條硫化物固體電解質(zhì)量產(chǎn)線正式落地
- QUT開發(fā)出新的LENS系統(tǒng) 可以讓機(jī)器人進(jìn)行類似大腦的導(dǎo)航
- 毫米波雷達(dá)裝機(jī)量分析:毫米波雷達(dá)裝車量持續(xù)攀升,大陸和博世占據(jù)60%以上市場份額
- TDK推出適用于車載濾波器的同軸電纜供電電感器
- 大摩給“人形機(jī)器人100”清單注入新思路
- 行家預(yù)判:2025年車載Mini LED反超OLED
- 2025數(shù)智未來峰會(huì):深度解讀AI賦能工業(yè)的趨勢與實(shí)踐
- 工業(yè)自動(dòng)化中的Raspberry Pi:簡化經(jīng)濟(jì)實(shí)惠的邊緣計(jì)算
- 意法半導(dǎo)體宣布擴(kuò)大在新加坡的“Lab-in-Fab”廠內(nèi)實(shí)驗(yàn)室合作項(xiàng)目
- 有獎(jiǎng)直播 | 瑞薩新一代視覺 AI MPU 處理器 RZ/V2H:高算力、低功耗、實(shí)時(shí)控制
- 泰克 MSO6B 探索營:技術(shù)指標(biāo)大挑戰(zhàn),闖關(guān)贏好禮
- TI有獎(jiǎng)直播|精密 ADC 在變送器中的應(yīng)用
- 有獎(jiǎng)直播|5G多場景終端應(yīng)用對連接器的新要求及Molex的5G連接方案
- 下載贏禮 | 雅特生 PMBus 接口非隔離數(shù)字 DC-DC 轉(zhuǎn)換器
- 答題贏禮! | 如何利用PI Expert 電源設(shè)計(jì)工具快速搭建PD充電器
- 【1月14日 技術(shù)直播】工程師請就位,Keysight計(jì)量專家開講啦 ~電子儀器計(jì)量校準(zhǔn)基礎(chǔ)知識與校準(zhǔn)周期探討
- 安世半導(dǎo)體&世平集團(tuán) 高效能&小型化, Nexperia MOSFET的5G解決方案 觀看、下載 闖關(guān)贏好禮!
- 吉時(shí)利DMM6500 6½ 位數(shù)字觸摸屏萬用表六大功能,滿足工程師的切身需求,獻(xiàn)給有夢想的你!
- STM32CubeMX FreeRTOS軟件定時(shí)器實(shí)驗(yàn)
- AI 技術(shù)越來越牛,也許不久的你就要失業(yè)了?
- SK海力士或?qū)⒓訌?qiáng)其系統(tǒng)半導(dǎo)體業(yè)務(wù),到底是何原因?
- 一文看懂紫光展銳背后的發(fā)展歷程
- 建設(shè)智慧城市有哪些個(gè)問題?該如何解決?
- 智能音箱保持快速增長態(tài)勢,疫情后品牌集中度進(jìn)一步加深
- 格力和美的市值差距拉大,高瓴入主格力成了韭菜?
- 海康威視AI網(wǎng)絡(luò)云臺攝像機(jī)拆解:賣599憑的是什么?
- 到2035年中國新能源車保有量或?qū)⒊^1.6億輛
- 汽車車載充電機(jī)中的SiC器件目前存在哪些問題?
- 低速接口和電源電路的保護(hù)方法 (數(shù)字音頻、模擬視頻和鍵盤等)
- 英飛凌XMC4800 Relax EtherCAT Kit測評匯總
- wince下音頻頻譜顯示技術(shù)
- [分享]開關(guān)電源測試規(guī)范
- EVC4中有類似于stl中的map或hash_map的東東可以用嗎?
- 用51開發(fā)板實(shí)現(xiàn)ADC,接口怎么連
- 送給研發(fā)弟兄們幾個(gè)總結(jié)性觀點(diǎn)(ZT稍長但是很中肯)
- 誰用過DAC10GP這款數(shù)模轉(zhuǎn)換芯片?
- 芯片是怎樣被搞壞的?
- Analog Discovery 2 測評(5) 采集系統(tǒng)硬件分析