欢迎来到天天文库
浏览记录
ID:12876994
大小:35.11 KB
页数:14页
时间:2018-07-19
《pic16f876滚动码收码解码c程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、PIC16F876滚动码收码解码C程序PIC16F876滚动码收码解码C程序2011-01-0517:02//文件名:receivebar.c//功能:接收滚动码//使用MCU:PIC16F876//---//数据格式//---//
2、固定码部分8bit*4=32bit
3、滚动码部分8bit*4=32bit//B[0]B[1]B[2]B[3]Re[0]Re[1]Re[2]Re[3]//FunctionSNLSNMSNHKeyHopCountLCountHID//RVOOKKKK.IIIIIIII.IIIIIIII.IIIIIIII.KKKKDDDD.SSSSSSS
4、S.SSSSSSSS.DDDDDDDD//
5、功
6、序列号24位
7、功暂时
8、同步记数值16位
9、识别码8位,SNL//能能只用//键键8位//I=S/N-序列号(24BIT)//K=KEY-按键(4BIT)//S=Sync-同步计数器(16BIT)//D=Disc-识别码(8BIT)//暂时使用8位//R=Rept-重复/首次(1BIT)//暂时不使用//V=Vlow-低电(1BIT)//暂时不使用//O=-保留位//---//---#includepic.h//---常量定义--#defineRFinRC5//数据输入端口#defineKeyRC4//学习,按键输入
10、#defineData0RA0//数据定义#defineData1RA1#defineData2RA2#defineData3RA3#defineLearnTRA5//学习指示灯#definePERIOD133//timer0133us中断一次#defineSynch_shot6//同步头高电平计数范围#defineSynch_head12#defineSyncl_shot25//同步头低电平计数范围#defineSyncl_head35#defineHigh10#defineLow-10#defineLWaitTime65000//学习模式无响应超限退出时间
11、#defineCountcar1024//指针丢失极限#defineSetbit64//总共64位#defineReset0//复位检测#defineSync11//同步头检测,检测高电平#defineSync22//同步头检测2,#defineRFg3//数据高电平#defineRFl4//数据低电平#defineWork_Main00xa1//厂商ID定义#defineWork_Main10xb2#defineWork_Main20xc3#defineWork_Main30xd4#defineM_SNOld0L0x00//定义EEPROM中的位置,控制器可
12、存储两个序列号的手柄!#defineM_SNOld0M0x01//#defineM_SNOld0H0x02//#defineM_CounOld0L0x03//#defineM_CounOld0H0x04//#defineM_UpdataFlag0x10//#defineM_SNOld1L0x05//#defineM_SNOld1M0x06//#defineM_SNOld1H0x07//#defineM_CounOld1L0x08//#defineM_CounOld1H0x09//#defineSTATUSIT(avr,s)((unsigned)(&avr)*8
13、+(s))//绝对寻址定义staticbitC@STATUSIT(STATUS,0);//对进位位进行定义//---内存定义--volatilebitLearn;//学习标志volatilebitRFfull;//接收数据满标志volatilebitRFbit;//数据状态接收volatilebitSyncflage;//同步头标志volatilebitSflage;//标志volatilebitTest;//新学习的序列号等待测试标志volatilebitVId;//ID校验标志volatilebitVKey;//键值检验标志volatilebitVSn;/
14、/序列号校验标志volatilebitVCount;//指针校验标志unsignedintLearncount;//学习等待时间staticsignedcharRFcount;//定义数据采样计数器,可为正负unsignedcharRFstate;//状态选择寄存器unsignedcharSynch;//同步头高电平计数器unsignedcharSyncl;//同步头低电平计数器unsignedcharBitcount;//比特计数器unsignedcharBytecount;//字节计数器unsignedcharZsnl;//新序列号暂存unsignedch
15、arZsnm;unsignedchar
此文档下载收益归作者所有