历史上的今天
返回首页

历史上的今天

今天是:2024年10月29日(星期二)

正在发生

2019年10月29日 | 警报声原理图+pic单片机源程序

2019-10-29 来源:51hei

1脚为电源端接5V电源,8脚接地, 4脚为控制端,暂不用.2,6,7脚为警音

控制端,按下S1、S2、S3可发出不同的警音

5脚为音频输出端,当停止音频输出时,该脚置低;

电路原理图如下:

 


pic单片机源程序如下:

#include       ;

#include

    __config 0x3F4C ;_CPC_ON & _CPU_ON & _CPP_ON & _PWRTE_OFF & _WDT_ON & _FOSC_HS ; 0x3F4C


; RAM-Variable


CSR1         equ 0x20

CSR2        equ 0x21

STATUS_TEMP equ 0x2C

PCL_TEMP equ 0x2D

DE_TIME1 equ 0x22

DE_TIME0 equ 0x23

DE_TIME2 equ 0x24

DE_TIME3 equ 0x25

TIME_TMP0 equ 0x26

TIME_TMP1 equ 0x27

SOUND_D_TIME0 equ 0x28

SOUND_D_TIME1 equ 0x29

DE_TMEP0 equ 0x2A

DE_TMEP1 equ 0x2B

CON_SOUND equ 0x55

SOUND_B_TIME0 equ 0x56

SOUND_B_TIME1 equ 0x57

SOUND_D_TIME2 equ 0x58

CON_A_STAY equ 0x59

TR0_TIME equ 0x5A

SOUND_C_TIME1 equ 0x5B

SOUND_D_TIME3 equ 0x5C

SOUND_C_TIME0 equ 0x5D

W_TEMP equ 0x5E


; Program


    Org 0x0000


;   Reset-Vector

    GOTO MAIN


    Org 0x0004


;   Interrupt-Vector

    MOVWF W_TEMP

    SWAPF STATUS,W

    BCF STATUS,RP0       

    MOVWF STATUS_TEMP

    MOVF PCLATH,W       

    MOVWF PCL_TEMP

    GOTO Interrupt_0

Interrupt_0

    BTFSC INTCON,T0IF

    BTFSS INTCON,T0IE

    GOTO Interrupt_exit

    MOVF TR0_TIME,W

    ADDWF TMR0,F         

    MOVLW 0x04

    BCF INTCON,T0IF

    BSF CON_SOUND,2

        XORWF GPIO,F 

    CLRWDT 

Interrupt_exit

    MOVF PCL_TEMP,W

    MOVWF PCLATH         

    SWAPF STATUS_TEMP,W

    MOVWF STATUS

    SWAPF W_TEMP,F

    SWAPF W_TEMP,W

    RETFIE

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

RAM_00

    MOVLW 0x49

    MOVWF CSR1

    MOVLW 0x21

    MOVWF CSR2

MAIN_RAM

    INCF CSR2,F

    MOVF CSR2,W

    MOVWF FSR

    CLRF INDF

    DECFSZ CSR1,F

    GOTO MAIN_RAM     

    CLRF CSR2

    RETURN


MAIN

    CALL RAM_00


    BSF STATUS,RP0       

    ;CALL LADR_0x03FF

    ;MOVWF SFR_0x10       

    CLRF STATUS

    MOVLW 0xA7

    CLRF SOUND_B_TIME0

    CLRF SOUND_B_TIME1

    CLRF SOUND_D_TIME2

    CLRF CON_A_STAY

    CLRF TR0_TIME

    CLRF SOUND_C_TIME1

    MOVWF SOUND_D_TIME3

    MOVLW 0xFE

    MOVWF SOUND_C_TIME0

    CLRF STATUS


    MOVLW 0x58

    MOVWF TIME_TMP0

    MOVLW 0x02

    MOVWF TIME_TMP1

    ;CALL DELAY_0

    MOVLW 0x07

    MOVWF CMCON ;SFR_0x19       ; !!Warning: SFR_0x19 is Unimplemented

    MOVLW 0x81

    BSF STATUS,RP0      

    MOVWF TMR0         

    MOVLW 0x3B  ;0x3B

    MOVWF GPIO  ;PORTA         

    BCF STATUS,RP0      

    CLRF GPIO  ;PORTA          

    BSF INTCON,GIE

    CLRF GPIO   ;PORTA          

    GOTO SEARCH_KEY


WHILE_0

    BTFSS CON_SOUND,5

    GOTO WHILE_1

    BCF CON_SOUND,0

    CALL LADR_0x0154


SEARCH_KEY

    CLRWDT

    BCF STATUS,RP0       

    BTFSC GPIO  ,4        ;BTFSC GPIO  ,4   ;PORTA,4          

    GOTO SOUND_A_0

    BTFSC   GPIO,5       

    GOTO SOUND_B_0

    BTFSC GPIO,0   ;PORTA,0       

    GOTO SOUND_C_0

    BTFSC GPIO,1  ;  PORTA,1       

    GOTO SOUND_D_0

    BTFSS GPIO   ,1   ;PORTA,1       

    GOTO WHILE_0


    



WHILE_1


    CLRF GPIO   ;PORTA         

    MOVLW 0xA7

    BCF INTCON,T0IE

    BCF CON_SOUND,5

    BCF CON_SOUND,0

    MOVWF SOUND_D_TIME3

    BCF GPIO,2   ;   PORTA,2          

    GOTO SEARCH_KEY



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

SOUND_A_0

    BTFSC CON_SOUND,0

    GOTO SOUND_A_1

    BSF INTCON,T0IE

    BSF CON_SOUND,0

    BCF CON_SOUND,5

SOUND_A_1

    CALL SOUND_A_2

    GOTO SEARCH_KEY


SOUND_A_2

    BSF STATUS,RP0       

    MOVF TMR0,W         

    XORLW 0x81

    BTFSC STATUS,Z

    GOTO SOUND_A_3

    MOVLW 0x81

    MOVWF TMR0           

SOUND_A_3

    BCF STATUS,RP0       

    BTFSS CON_SOUND,2

    RETURN

    BCF CON_SOUND,2

    INCFSZ CON_A_STAY,F

    GOTO SOUND_A_5

SOUND_A_EXIT

    MOVLW 0x3B

    MOVWF TR0_TIME

    RETURN


SOUND_A_5

    MOVLW 0x02

    SUBWF CON_A_STAY,W

    BTFSC STATUS,C

    GOTO SOUND_A_6

SOUND_A_51

    MOVLW 0x76

    MOVWF TR0_TIME

    RETURN

SOUND_A_6

    MOVLW 0x03

    SUBWF CON_A_STAY,W

    BTFSC STATUS,C

    GOTO SOUND_A_7

SOUND_A_61

    MOVLW 0x8F

    MOVWF TR0_TIME

    RETURN

SOUND_A_7

    MOVLW 0x04

    SUBWF CON_A_STAY,W

    BTFSC STATUS,C

    GOTO SOUND_A_8

SOUND_A_71

    MOVLW 0x94

    MOVWF TR0_TIME

    RETURN

SOUND_A_8

    MOVLW 0x05

    SUBWF CON_A_STAY,W

    BTFSC STATUS,C

    GOTO SOUND_A_9

SOUND_A_81

    MOVLW 0xA3

    MOVWF TR0_TIME

    RETURN

SOUND_A_9

    MOVLW 0x06

    SUBWF CON_A_STAY,W

    BTFSS STATUS,C

    GOTO SOUND_A_81

    MOVLW 0x07

    SUBWF CON_A_STAY,W

    BTFSS STATUS,C

    GOTO SOUND_A_71

    MOVLW 0x08

    SUBWF CON_A_STAY,W

    BTFSS STATUS,C

    GOTO SOUND_A_61

    MOVLW 0x09

    SUBWF CON_A_STAY,W

    BTFSS STATUS,C

    GOTO SOUND_A_51

    CLRF CON_A_STAY

    GOTO SOUND_A_EXIT




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

SOUND_B_0

    BTFSC CON_SOUND,0

    GOTO SOUND_B_1

    BSF INTCON,T0IE

    BSF CON_SOUND,0

    BCF CON_SOUND,5

    CLRF SOUND_B_TIME0

    CLRF SOUND_B_TIME1

SOUND_B_1

    CALL SOUND_B_2

    GOTO SEARCH_KEY



SOUND_B_2

    BSF STATUS,RP0      

    MOVF TMR0,W          

    XORLW 0x81

    BTFSC STATUS,Z

    GOTO SOUND_B_3

    MOVLW 0x81

    MOVWF TMR0           

SOUND_B_3

    BCF STATUS,RP0       

    BTFSS CON_SOUND,1

    GOTO SOUND_B_5

    MOVLW 0x66

    MOVWF TR0_TIME

    BTFSS CON_SOUND,2

    RETURN

    BCF CON_SOUND,2

    INCF SOUND_B_TIME0,F

    BTFSC STATUS,Z

    INCF SOUND_B_TIME1,F

    DECF SOUND_B_TIME1,W

    MOVLW 0x90

SOUND_B_4

    BTFSC STATUS,Z

    XORWF SOUND_B_TIME0,W

    BTFSS STATUS,Z

    RETURN

    MOVLW 0x02

    CLRF SOUND_B_TIME0

    CLRF SOUND_B_TIME1

        XORWF CON_SOUND,F

    RETURN

SOUND_B_5

    MOVLW 0x85

    …………


推荐阅读

史海拾趣

Chips And Technologies Inc公司的发展小趣事

随着公司规模的扩大和市场份额的提升,C&T开始积极拓展海外市场。通过设立分支机构、参加国际展会等方式,C&T的产品逐渐打入国际市场,赢得了全球客户的认可。同时,C&T还积极与海外企业开展合作,共同推动半导体技术的发展和应用。

迈翔科技(COILMX)公司的发展小趣事

进入21世纪后,迈翔科技面临了来自国内外同行的激烈竞争。为了保持竞争力,公司投入大量资源进行技术研发和创新。通过不懈努力,公司成功开发出了一系列高性能的贴片功率电感和大电流电感,这些产品凭借卓越的性能和稳定的品质,迅速获得了市场的认可。

DRI Relays Inc公司的发展小趣事

DRI Relays Inc公司成立于XX年代,当时电子继电器市场正处于快速发展阶段。公司创始人XXX凭借对市场趋势的敏锐洞察,决定投身于这一领域。然而,创业之初,公司面临资金短缺、技术瓶颈和市场竞争激烈等多重挑战。为了突破困境,XXX带领团队日夜兼程地研发新产品,不断改进技术,同时积极寻找投资者。在一次行业展会上,公司的新产品因其独特的设计和高性能吸引了众多客户的关注,为公司赢得了宝贵的订单和资金支持。

CTS [CTS Corporation]公司的发展小趣事

CTS Corporation的创始人在1896年创立了这家公司,当时的主要业务是设计并生产高品质的电话产品。随着电话技术的普及和通信行业的快速发展,CTS凭借其出色的产品质量和创新的设计理念,逐渐在电话市场中占据了一席之地。公司的创始人凭借其敏锐的商业洞察力和不懈的努力,为CTS奠定了坚实的基础。

远东福斯特公司的发展小趣事

随着电子技术的不断进步和广泛应用,CTS敏锐地捕捉到了电子元器件和传感器市场的巨大潜力。于是,公司开始逐步转型,将业务重心转向这些领域。通过不断的研发和创新,CTS成功设计并生产出一系列高性能的电子元器件和传感器产品,赢得了市场的广泛认可。

Carlo Gavazzi公司的发展小趣事

为了进一步拓展市场,Carlo Gavazzi公司开始实施国际化战略。公司先后在多个国家和地区设立销售和服务团队,将产品和服务推向全球市场。这一过程中,公司不仅面临着文化差异和市场环境的挑战,也积极寻求与当地企业的合作与共赢。通过不断努力,公司逐渐在全球范围内建立起自己的品牌形象和市场地位。

问答坊 | AI 解惑

寻QFP-40封装的单片机

请问一下,哪家有40PINQFP封装的单片机,型号是什么? 谢谢!…

查看全部问答>

网络优化方案

利用中兴通讯软交换大容量综合接入媒体网关ZXSS10 M100/ZXMSG9000对汇接局进行改造,端局用户的数据管理和业务提供统一由SoftSwitch支持,降低了改造成本和工作量。   端局用户由汇接局和软交换提供各类业务,逐步完成替换老机型端局的 ...…

查看全部问答>

有研究tcpmp的么?想请教一下里面顶部的那个播放/暂停控件的位置在那修改?

有研究tcpmp的么?想请教一下里面顶部的那个播放/暂停控件的位置在那修改?我想把file,options,和播放,暂停,还有全屏等控件放在底部,就是那个时间进度条那....可是找不到具体代码的位置... 另外那个控件的大小只能是16和32两种相素选择,能不能改大一 ...…

查看全部问答>

有关FPGA求职方面的咨询

       我今年大四就快出去找工作了,想问问各位有经验的大姐,大哥们,哪些公司在FPGA方面有比较好的前景啊?还有如果可以的话能否说说去应聘FPGA工作时的面试和笔试经历或者遇到的一些试题,让我汲取一些你们宝贵 ...…

查看全部问答>

STM32异常/中断怎么写?

STM32异常/中断怎么写?比如说要写一个systick中断,怎么写?最好不要改动stm32f10x_it.c和stm32f10x_vector.c请问中断程序怎么写?…

查看全部问答>

求stm32107vct6a 的资料

主要有芯片内部结构的介绍和各个管脚功能介绍的那种资料,谢谢啦……742941600@qq.com…

查看全部问答>

TI StellarisWare 图形库使用指南(中)

刚找的一个,9B96应该可以用。转过来大家学习。…

查看全部问答>

供应CPLD,FPGA

供应ALTERA和XILINX厂家CPLD和FPGA     赵伟伟 13621345708 北京成旭振业电子科技有限公司 北京市海淀区中关村大街28-1号中海园电子市场BD-120 QQ:282689635 Email:weiwei.sd@163.com…

查看全部问答>

单片机AD采集不准确

如图所示,左端经过电阻分压,然后经过电压跟随器和光耦后接PA0,但是采集的电压和计算的不同,而且采集的电压用于程序里也没有达到预想的效果,求用过的好心人给看看,谢谢。…

查看全部问答>