历史上的今天
今天是: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 …………
史海拾趣
|
有研究tcpmp的么?想请教一下里面顶部的那个播放/暂停控件的位置在那修改? 有研究tcpmp的么?想请教一下里面顶部的那个播放/暂停控件的位置在那修改?我想把file,options,和播放,暂停,还有全屏等控件放在底部,就是那个时间进度条那....可是找不到具体代码的位置... 另外那个控件的大小只能是16和32两种相素选择,能不能改大一 ...… 查看全部问答> |
|
我今年大四就快出去找工作了,想问问各位有经验的大姐,大哥们,哪些公司在FPGA方面有比较好的前景啊?还有如果可以的话能否说说去应聘FPGA工作时的面试和笔试经历或者遇到的一些试题,让我汲取一些你们宝贵 ...… 查看全部问答> |
|
STM32异常/中断怎么写?比如说要写一个systick中断,怎么写?最好不要改动stm32f10x_it.c和stm32f10x_vector.c请问中断程序怎么写?… 查看全部问答> |
|
供应ALTERA和XILINX厂家CPLD和FPGA 赵伟伟 13621345708 北京成旭振业电子科技有限公司 北京市海淀区中关村大街28-1号中海园电子市场BD-120 QQ:282689635 Email:weiwei.sd@163.com… 查看全部问答> |
|
如图所示,左端经过电阻分压,然后经过电压跟随器和光耦后接PA0,但是采集的电压和计算的不同,而且采集的电压用于程序里也没有达到预想的效果,求用过的好心人给看看,谢谢。… 查看全部问答> |




