PIC单片机

单片机

PIC单片机 PIC单片机自学 PIC单片机编程 PIC单片机教材下载 PIC单片机学习源程序 PIC单片机仿真器|PIC单片机编程器 PIC单片机编程器实验板定价 PIC单片机学习开发板购买方式 PIC单片机学习论坛
【EMC 单片机】主题文章: 回复文章:用单片机摩托车防盗器原理图
发信人:橄榄飞狐 发表时间:2003-05-26 20:29:55

具有语音提示和六音报警,并具有三键﹑四键选择功能。


※ 来源: 21IC社区  

 回复文章:大家讨论
发信人:橄榄飞狐 发表时间:2003-05-26 20:34:58

这是以前开发的产品。(已征得作者同意)
请发表评论。
若网友们感兴趣,我将在后面逐步帖出设计说明及程序源代码。


PIC单片机 www.pic16.com  

 回复文章:有兴趣看看讨论,请把全套资料贡献不就完了??
发信人:ic2001 发表时间:2003-05-28 13:16:45

有兴趣看看讨论,请把全套资料贡献不就完了??
不要为难大家


PIC单片机 www.pic16.com 

 回复文章:讨论
发信人:openopen 发表时间:2003-05-28 16:39:00

看不清楚!


PIC单片机 www.pic16.com 

 回复文章:这图怎样才能看清楚啊
发信人:82jun 发表时间:2003-05-29 22:53:38




PIC单片机 www.pic16.com 

 回复文章:比较感兴趣,但图片不清,而且好象没有RF接收部分。
发信人:电迷 发表时间:2003-05-29 23:20:52




PIC单片机 www.pic16.com  

 回复文章:重新帖过
发信人:橄榄飞狐 发表时间:2003-05-30 13:26:39




PIC单片机 www.pic16.com  

 回复文章:这几天比较忙
发信人:橄榄飞狐 发表时间:2003-05-30 13:32:50

接受模块用的YCJS102(见图),大概几块钱.
单片机具有解码﹑蜂鸣器驱动和实现摩托车防盗器的控制的功能用,以达到简化系统降低成本的目的,同时降低板内干扰提高性能。
因为这几天确定太忙,如有网友确定感兴趣,我再慢慢补完.


PIC单片机 www.pic16.com

 回复文章:因为要回避目前宗申产品的语音实用型专利,多有不便.
发信人:橄榄飞狐 发表时间:2003-06-01 14:21:15

我只能简要介绍它的功能.此款与其它摩托车防盗器的不同之处主要是在语音方面。
 一)。音频功放:
    该电路采用双运放组成的BTL电路,因此输出不接电容而直接与喇叭相接,这样就可以克服原电路在语音开始时出现的上电噪音"啪"。同时该电路有静音控制,在静音状态下电路的工作电流的典型值65uA,方便了语音电路的静音控制,单片机一输出脚就能实现语音的控制,而不需原电路通过两只三极管来实现语音功放电源的开关控制,这样将大大的降低功放电路的噪声。
二)。语音的回放:
    该电路仍然采用IS22C012语音回放芯片。由于该电路具有自动功率下降功能,在不播放时静态电流不大于5uA,因此不需要象原电路那样进行电源开关控制,可将该芯片直接挂在5V电源上,通过两只单片机的脚来实现音段选择。这样将极大的简化设计电路。
通过上面的一)和二)的设计,不仅回避了原来的专利,同时也使电路简单化,省去了三只三极管,而电路的静态电流增加不会大于0。1mA。与原来的电路相比,只是增加了三只单片机输出脚。同时,由于增加了三只单片机脚,虽然采用单片机解码空出来了四只脚,如此一来就只剩一只脚用于遥控器的键数选择,而无法实现编码外读的功能。这是一大遗憾,这就要求我们在编码记录时不能有半点马虎。
三)。六音报警:
  按厂家要求在开锁时问候:欢迎乘坐某某摩托。闭锁问候:欢迎下次乘坐某某摩托。并有防盗、寻车、防抢、解除等警报。



PIC单片机 www.pic16.com 

 回复文章:摩托车防盗器接收控制器
发信人:橄榄飞狐 发表时间:2003-06-01 14:24:03




PIC单片机 www.pic16.com

 回复文章:我想请问一下,有关你用EMC单片机来解码是怎样实现?
发信人:23110 发表时间:2003-06-02 16:54:53

你好!
   非常的感谢你给我们大家带来的原理图!现在有个疑问,想请问你用软件解码是怎么实现的。
我的油箱是WILL88888888@163.NET


PIC单片机 www.pic16.com 

 回复文章:单片机解码模块原代码
发信人:橄榄飞狐 发表时间:2003-06-04 00:09:09

            R3        EQU    0X03
            PORT5        EQU    0X05
            PORT6        EQU    0X06
            R3        EQU    0X03

            KEY_STATUS    EQU    0X10    ;低半字节为按键标志,高半字节为控制标志
            SIGNAL_LOW    EQU    0X11    ;信号电平低计数器
            SIGNAL_HIGH    EQU    0X12    ;信号电平高计数器
            DATA_RECORDER    EQU    0X13    ;接收码数据字节
            CODE_RECORDER2    EQU    0X14    ;接收码地址高字节
            CODE_RECORDER1    EQU    0X15    ;接收码地址低字节
            CODE_TOTAL    EQU    0X16    ;接收数据位计数器
            KEY_COUNTER    EQU    0X17    ;两次按键检测计数器
/**********************KEY_STATUS标志位定义***********************************/
            AUTORUN_KEY    EQU    0    ;遥控键标志
            LOCK_KEY    EQU    1    ;防盗键标志
            SEARCH_KEY    EQU    2    ;寻车键标志
            OPEN_KEY    EQU    3    ;解除键标志
            PRESS_FLAG    EQU    4    ;有键按下标志
            CHECK_FLAG    EQU    5    ;校验标志
/***********************CONSTANT DEFINE*************************************/
            CODE_ADDRESS1    EQU    0B10001100    ;遥控器地址码,更改常数即可实现其他遥控器收码
            CODE_ADDRESS2    EQU    0B00101100        
            AUTORUN_VALUE    EQU    0B00000011    ;遥控器相应键值,改变相应数值即可更改其功能
            LOCK_VALUE    EQU    0B00001100
            SEARCH_VALUE    EQU    0B00110000
            OPEN_VALUE    EQU    0B11000000
/**********************当PORT6.2口电平为高时调用该程序收码******************/
;PORT6.2为信号输入口

collect_2262:
            mov    a,@0xf0
            And     KEY_STATUS,a
            clr    code_total
            clr    signal_high
collect1:
            inc    signal_high
            MOV    A,SIGNAL_HIGH
            SUB    A,@30
            JBS    R3,0
            RET
            clr    signal_low
            call    delay20us
            jbs    port6,2
            jmp    collect_low
            jmp    collect1
collect_low:    
            mov    a,signal_high    ;信号高电平宽度<80US时滤除
            sub    a,@4
            jbc    r3,0
            ret
            mov    a,@20        ;信号高电平宽度在80—400US时为采集为0
            sub    a,signal_high    ;信号高电平宽度在400US以上时为采集为1
            rrc    data_recorder
            rrc    code_recorder2
            rrc    code_recorder1
            inc    code_total
            clr    signal_high
            mov    a,@24
            xor    a,code_total
            jbc    r3,2
            jmp    collect_end
input_low:
            inc    signal_low
            mov    a,signal_low    ;信号低电平宽度大于800US时滤除
            sub    a,@40
            jbs    r3,0
            ret
            call    delay20us
            jbs    port6,2;3
            jmp    input_low    
            jmp    collect1
collect_end:    
            mov    a,code_recorder1    ;校验低字节地址
            xor    a,@code_address1
            jbs    r3,2
            ret
            mov    a,code_recorder2    ;校验高字节地址
            xor    a,@code_address2
            jbs    r3,2
            ret
            jbs    KEY_STATUS,check_flag    ;是否是第一串收码?
            jmp    storage_data
            bc    KEY_STATUS,check_flag  
            mov    a,com_data_rec
            xor    a,data_recorder
            jbs    r3,2
            jmp    storage_data
            mov    a,data_recorder
            xor    a,@autorun_value        ;是启动键?
            jbs    r3,2
            jmp    key1
            bs    KEY_STATUS,autorun_key    ;置启动键标志
            bs    KEY_STATUS,press_flag    ;置有键按下标志
            clr    key_counter        ;清除按键间隔计数器
            ret            
key1:
            mov    a,data_recorder
            xor    a,@open_value        ;是解除键?
            jbs    r3,2
            jmp    key2
            bs    KEY_STATUS,open_key    
            bs    KEY_STATUS,press_flag
            clr    key_counter    
            ret
key2:
            mov    a,data_recorder
            and    a,@0x0c            ;同时有两个键按下时不为0X30
            xor    a,@lock_value        ;是防盗键?
            jbs    r3,2            
            jmp    key3
            bs    KEY_STATUS,lock_key
            bs    KEY_STATUS,press_flag
            clr    key_counter
key3:
            mov    a,data_recorder
            and    a,@0x30
            xor    a,@search_value    ;是寻车键?
            jbs    r3,2
            ret    
            bs    KEY_STATUS,search_key    
            bs    KEY_STATUS,press_flag
            clr    key_counter            
            ret
storage_data:                        ;第一次收码存储数据字节
            bs    KEY_STATUS,check_flag
            mov    a,data_recorder
            mov    com_data_rec,a
            ret

delay20us:
            wdtc
            mov    a,@3;9
            mov    delay1,a
delay20us_1:        
            nop
            djz    delay1
            jmp    delay20us_1
            ret


PIC单片机 www.pic16.com

 回复文章:遥控器地址码..
发信人:cail 发表时间:2003-06-04 07:20:49

CODE_ADDRESS1    EQU    0B10001100    ;遥控器地址码,更改常数即可实现其他遥控器收码
            CODE_ADDRESS2    EQU    0B00101100        

请问: 是不是 遥控器地址码  在每一个 烧好的芯片内,都不相同??

用什么烧写器实现这个功能?
如何实现?


PIC单片机 www.pic16.com

 回复文章:是不是 设置 rolling code?
发信人:cail 发表时间:2003-06-04 07:44:00




PIC单片机 www.pic16.com

 回复文章:谢谢,请问你遥控板用的是hs2260吗?
发信人:23110 发表时间:2003-06-04 16:52:35




PIC单片机 www.pic16.com 

 回复文章:此块解码是调试好了的
发信人:橄榄飞狐 发表时间:2003-06-05 23:57:10

遥控板用的是PT2262,hs2260原理应是一样了,但你应看一下它是如何编码的,再相应修改。
地址码当然可修改,但请注意,为了方便生产或遥控器的更换,该地址必须要能读出。因此,还需设计一专门的地址读出器,以方便生产时对遥控器进行编码。


PIC单片机 www.pic16.com 

 回复文章:我要原理图
发信人:shengm 发表时间:2003-06-07 16:35:15

  能否把原理图发给我,我看不清,我的邮箱是:shengm@21cn.com
谢谢!


PIC单片机 www.pic16.com  

 回复文章:不错,十分感谢!
发信人:电迷 发表时间:2003-06-10 02:09:03




PIC单片机 www.pic16.com  

 回复文章:我也要资料
发信人:别长安 发表时间:2003-06-10 11:33:15

希望楼主可以发原理图给我。
如果有说明资料请一并发来,我想学习学习。谢谢楼主
snubber@163.com


PIC单片机 www.pic16.com  

 回复文章:我也要一份!
发信人:吴罡 发表时间:2003-06-10 16:31:15

  我对电子电路的设计应用十分感兴趣,希望也能得到一份可供我学习。谢谢!
  我的E-mail:flyboy520025@sina.com.cn


PIC单片机 www.pic16.com  

 回复文章:hi
发信人:xc_yan 发表时间:2003-06-11 00:31:59

飞狐兄弟,看得有些费精,能不能发到邮箱来。谢谢。。
xc_yan@163.net



PIC单片机 www.pic16.com  

 回复文章:对不起,各位
发信人:橄榄飞狐 发表时间:2003-06-11 01:39:01

这是我写的第一个单片机程序,由于当初没及时整理,并且其可读性差。可能会使大家失望。上面的解码子程序是以前公司从其它公司买的,可读性要好一些。
应大家要求,我再把振动模块、警报发音模块、读码模块整理一下帖出来,大家凑合看吧。流程图及程序说明没及时整理,太零碎了,也记不起了。不过程序是调调试通过了的产品,大家可放心。
要提醒一下初学者,编程一定要按步就班,千万不可只图快;做完一个项目要及时整理、总结。


PIC单片机 www.pic16.com  

 回复文章:原理图已发出
发信人:橄榄飞狐 发表时间:2003-06-11 01:46:18




PIC单片机 www.pic16.com  

 回复文章:检测振动模块
发信人:橄榄飞狐 发表时间:2003-06-11 01:50:38

         ;数据寄存器定义
        NUMBER0        EQU    0X1D    ;振动宽度计数器
        GRADEDATA    EQU    EQU0X1E;当前灵敏度
        COM_DATA_REC    EQU    0X1F;上一次数据寄存器
        
        ;PSW位定义
        TCINTBIT    EQU    0;中断计数标志位,约为750ms(TCC Rate=1:256)
        VibraBIT    EQU    1;是否达到当前灵敏度宽度,即是否有振动
        
CHECK_Vibra:
CELLECTION_VIB:
        CLR    NUMBER            ;检测振动前先把计数器清0
        CLR    TCC
        CLR    NUMBER0
        BC    PSW,TCINTBIT
CELLECTION_L:        ;采集数据子程序
        MOV    A,@89            ;730ms
        SUB    A,NUMBER
        JBC    R3,0
        BS    PSW,TCINTBIT
        JBC    PSW,TCINTBIT            
        JMP    CELLECTION_CN4            ;是否超时                
        JBS    PORT5,SEN
        JMP    CELLECTION_L
CELLECTION:
        JBS    PORT5,SEN
        JMP    CELLECTION_END
        MOV    A,@53            ;DELAY 60us
        CALL    DELAY0
        INC    NUMBER0
        JMP    CELLECTION
CELLECTION_END:
        MOV    A,GRADEDATA            ;比较振动灵敏度
        SUB    A,NUMBER0
        JBS    R3,0
        JMP    CLRNUMBER0
        CLR    NUMBER0
        BS    PSW,VibraBIT        ;置检测到振动标志
        ret
        
CELLECTION_CN4:        
        CLR    NUMBER0        
        BC    PSW,TCINTBIT
        BC    PSW,VibraBIT
        RET
CLRNUMBER0:
        CLR    NUMBER0
        JMP    CELLECTION_L


PIC单片机 www.pic16.com  

 回复文章:警报发声模块
发信人:橄榄飞狐 发表时间:2003-06-11 01:54:19

注:警报音频率为1.8K到3.5K之间,具体请查资料


OSCILLATION:R/C =晶振    CLOCK    =    2
Frequency     =4MHZ
;=================================================================*/
            Fre_COUNT    EQU    0X37    ;'声音频率变化计数器,从1.8~3.55KHZ
            Fre_Repeat    EQU    0x38    ;'同一频率的重复次数
            SOUND_TEMP    EQU    0X39    
            ;'Replace program variable value and debug is more than easy.
            S_Loop        EQU    67    ;'MAX-MIN
            S_MAX        EQU    138
            S_MIN        EQU    71
            S_Repeat    EQU    4
            
;开始0.2秒发音
SOUND200ms:
SOUND_LH:        ;1.8~3.55        
            MOV    A,@S_Loop        ;66=134-68
            MOV    Fre_COUNT,A
SOUND_LH_LP:
            MOV    A,@S_Repeat        ;
            MOV    Fre_Repeat,A
            MOV    A,Fre_COUNT
            ADD    A,@S_MIN        ;
repeat0_lp        BS    PORT6,BUZ
            CALL    SOUNDDELAY0
            BC    PORT6,BUZ
            CALL    SOUNDDELAY0
            DJZ    Fre_Repeat
            JMP    repeat0_lp
            DJZ    Fre_COUNT
            JMP    SOUND_LH_LP
SOUND_HL:        ;3.55~1.8    
            MOV    A,@S_Loop        ;66=134-68
            MOV    Fre_COUNT,A
SOUND_HL_LP:
            MOV    A,@S_Repeat        ;
            MOV    Fre_Repeat,A
            MOV    A,Fre_COUNT
            SUB    A,@S_MAX        ;
repeat1_lp        BS    PORT6,BUZ
            CALL    SOUNDDELAY0
            BC    PORT6,BUZ
            CALL    SOUNDDELAY0
            DJZ    Fre_Repeat
            JMP    repeat1_lp
            DJZ    Fre_COUNT
            JMP    SOUND_HL_LP
SOUND_END:                        ;
            RET
            
;**********************************************************
Sound2s:        ;2S内短鸣两声
WARNING1:
            CALL    Sound200ms
            CALL    Delay800ms
            CALL    Sound200ms
            CALL    Delay800ms
            RET
Delay800ms:
            CLR    TIME1            ;'get ready for 0.8 second delay.
Sound_delay        MOV    A,@196            ;'delay 0.8 second
            SUB    A,TIME1
            JBS    R3,0
            JMP    Sound_delay
            RET
;************************************************
Sound15s:        ;连续报警15S
WARNING2:
            MOV    A,@73
            MOV    SOUND_TEMP,A
Sound1s_lp        CALL    Sound200ms
            JBC    PORT6,SDT        ;'SDT上电立即中断报警
            RET
            DJZ    SOUND_TEMP
            JMP    Sound1s_lp
            RET
;============================
        SOUNDDELAY1    EQU    0X3A
        
sounddelay:
            mov    a,@18        ;
sounddelay0        mov    sounddelay1,a    ;=(A*9)+3
            wdtc
sounddelayus_1:        
            nop
            nop
            nop
            nop
            nop
            nop
            djz    sounddelay1
            jmp    sounddelayus_1
            ret


PIC单片机 www.pic16.com  

 回复文章:也给我一份好吗
发信人:lxlun 发表时间:2003-06-11 08:51:20

lxl791020@163.com


PIC单片机 www.pic16.com  

 回复文章:好东西,能否给哥们一个全面的资料
发信人:WXG6544 发表时间:2003-06-11 17:59:49

很想仔细研究一番,可惜防盗器以前了解甚少,不知仁兄能否发电路图和所有源码给我看看,给一个学习机会哟 WXG6544@163.NET,QQ:122301373


PIC单片机 www.pic16.com  

 回复文章:SONNY,这段时间实在太忙
发信人:橄榄飞狐 发表时间:2003-06-12 15:19:55

因为8月份要到上海参加迟到的展览,要尽快把几个产品开发出来
以后,我一定应网友要求,多整理一些已投产(当然对公司来说是换代的产品)的产品的资料出来
我想对初学者是有用的


PIC单片机 www.pic16.com  

 回复文章:我也要一份资料!
发信人:wrd537 发表时间:2003-06-13 16:00:24

  我以前用过em78p156和447,希望能得到一份资料学习学习!谢谢了先
  wrd0537@163.com


PIC单片机 www.pic16.com  

 回复文章:请发这样的一份资料给我吧!
发信人:banis 发表时间:2003-06-13 21:41:09




PIC单片机 www.pic16.com  

 回复文章:能否给我发一份?
发信人:yuanzhi 发表时间:2003-06-14 15:12:48

很好!能否发我一份呀?
我的E-mail:zhyuanzhi@sina.com.cn



PIC单片机 www.pic16.com  

 回复文章:能给我一份全套资料吗?我的E-MAILmers@163.com
发信人:mers 发表时间:2003-06-15 14:05:29




PIC单片机 www.pic16.com