PIC摩托车防盗器原理图及程序

发布者:Haifeeng最新更新时间:2017-12-07 来源: eefocus关键字:PIC  摩托车防盗器 手机看文章 扫描二维码
随时随地手机看文章

 

            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  摩托车防盗器 引用地址:PIC摩托车防盗器原理图及程序

上一篇:PIC单片机产生伪随机数程序
下一篇:PIC单片机控制DS18B20 源程序

推荐阅读最新更新时间:2024-03-16 15:48

基于PIC16F877单片机数码管显示矩阵键值
PIC16F877单片机数码管显示矩阵键值,4X4矩阵键盘一共有16个按键,对应的是0~F,十六进制数,本程序是利用行扫描法,进行循环扫描矩阵键盘,当每一行有一个按键被按下,它都会检测得到键值,然后数码管就会显示对应的数值啦。 #include pic.h typedef unsigned char uchar; typedef unsigned int uint; uchar table ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0XD8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //数码管共阳段码 uchar table_we ={0xfe,
[单片机]
PIC单片机中断程序实例
PIC单片机中断程序实例 什么是中断程序呢? 形象的生活比喻就比如你现在这在看我的文章,突然你的朋友喊你一起去烤地瓜,这时候你就中断了看文章和朋友烤地瓜去了,烤完地瓜之后你又回来看文章。烤地瓜这件事就好比中断程序,他中断了你看文章这件事。在程序方面来说 当CPU在执行一个程序的时候,突然产生了中断事件CPU就去执行中断程序了,当执行完成后CPU又回来执行原先的程序。 中断事件 什么是中断事件,就是引起中断的事件。对于单片机来说这些事件是多种多样的。比如 说一个按键按下,一定的时间到了,一串数据发送完毕,或接收完一个数据。 讲到中断不得不讲讲和中断相对的 查询。其实不管是按键按下 还是 时间到,还是数据发送完毕,这些
[单片机]
实力讲解PIC单片机的时钟设置操作
  单片机的时钟信号好比是单片机的心脏。单片机的时钟频率决定了单片机运行一个指令周期的时间。原理的话应该是晶振与外部电容构成电容三点式振荡电路,此时时钟输入为正弦波,经过内部施密特触发器整形变为方波。   内部时钟方式:   利用单片机内部的振荡器,然后在引脚XTAL1(18脚)和XTAL2(19脚)两端接晶振,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟电路,外接晶振时,晶振两端的电容一般选择为30PF左右;这两个电容对频率有微调的作用,晶振的频率范围可在1.2MHz-12MHz之间选择。为了减少寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器和电容应尽可能安装得与单片机芯片靠近。   外部时钟方式:   此
[单片机]
实力讲解<font color='red'>PIC</font>单片机的时钟设置操作
Microchip推出PIC32CM JH微控制器 基于Arm® Cortex®-M0+架构打造
据外媒报道,为向制造商提供配备符合ISO 26262功能安全和ISO/SAE 21434网络安全工程标准组件的MCU解决方案,Microchip Technology Inc.(美国微芯科技公司)宣布推出PIC32CM JH微控制器(MCU)。这是业界首款基于Arm® Cortex®-M0+架构的MCU,支持AUTOSAR、内存内置自检(MBIST)和安全启动。 图片来源:Microchip
[汽车电子]
Microchip推出<font color='red'>PIC</font>32CM JH微控制器 基于Arm® Cortex®-M0+架构打造
PIC12F675实现直流电机控制
引言 当前小型要求不太高的调速装置,如晒图机,用可控硅相位控制,供给直流电机。还使用双基极管,以产生脉冲。用一片单片机取代上述控制现在成为可能。生产中不用调试,增加许多功能,如零位起动(去掉了外部硬件连锁)、可选速度上升时间等功能。使系统操作维修方便,运行可靠。 直接电机控制电路示于图1。PIC12F675有6个I/O,现用4个。设定GP1为A/D输入,作为速度给定口,现用电位器0—5V输入。设零中断输入口,接到产生过零脉冲A定GP2为电压过处。设定GP3和GP5为一般I/O,GP3为开停机输入口,接到开关上。GP5为脉冲输出口,经电阻接到触发三极管基极上。 触发的控制方法: 在全波整流器输出端,电容滤波前,用三极管取出过零
[工业控制]
基于单片机PIC16F74的电动按摩椅的研制
本文介绍了一款采用PIC16F74单片机作为微处理芯片的电动按摩椅控制系统,具体包括有系统的组成和功能介绍、硬件电路的设计、软件功能实现以及抗干扰措施。   1:引言   随着我国经济的迅速发展和人们生活水平的不断提高,按摩椅等保健产品越来越受到欢迎。目前,在电动按摩椅市场上,进口、合资以及国产产品并存。相对而言,进口产品功能强大、按摩方式丰富、外观优美,但同时其价格也非常昂贵。而国内产品功能较简单,产品知名度也相对较低,但是其价格比较低廉。本文主要介绍了一款自主研发的中档电动按摩椅。该产品既有功能比较强大、按摩方式比较丰富、结构简单、外观优美、控制方式简单灵活,产品容易升级的特点,同时其价格却只有国外同等产品的一半。
[单片机]
基于单片机<font color='red'>PIC</font>16F74的电动按摩椅的研制
自己用C语言写单片机PIC18 serial bootloader
  HyperBootloader_PIC18_J 和 HyperBootloader_PIC18_None_J   完成PIC16 bootloader (详细情况请阅读我的上一篇随笔《自己用C语言写单片机PIC16 serial bootloader》) 后,接着就开始写PIC18的UART bootloader。事实上我写了HyperBootloader_PIC18_J 和 HyperBootloader_PIC18_None_J 两种bootloader。 一种给PIC18F, 另一种给PIC18FJ。两种bootloader除了在实现上有一点不同,大小也不同外,其他都差不多。都是模仿HI-TECH PICC bootlo
[单片机]
自己用C语言写单片机<font color='red'>PIC</font>18 serial bootloader
基于PIC16C57单片机的智能低电阻测量仪
摘 要 介绍一种以PIC16C57单片机为核心的低电阻测量仪,与普通的低电阻测量仪不同的是:该测 量仪的测试电流仅为05 mA并加有多种保护电路,具有很高的安全性能。主要应用于军工 、国防、民用爆破等行业的电火工品的直流低电阻的测量。  关键词 PIC单片机低电阻火工品 低电阻测量仪按其测试电流的大小可分为两类:一类测试电流较大,主要用于接插件、开关、导体等产品的直流低电阻的测量;另一类测试电流很小(一般为1 mA左右),用于电雷管、点火具或其他危险易爆场合的接插件、开关等元器件的直流低电阻的测量。低电阻测量仪对安全性能要求很高,必须增加多种保护电路;在PCB板设计布线时也要考虑安全性和可靠性。1989年至今
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved