liuhao 3 år sedan
förälder
incheckning
44e769b9d7

+ 21 - 2
ZStack-2.5.1a/Projects/zstack/Public/public.c

@@ -1,9 +1,9 @@
 #include "public.h"
 
-void InitTimer3(void);
+
 __near_func __interrupt void t3_irq(void);
-void InitTimer4(void);
 __near_func __interrupt void t4_irq(void);
+__near_func  __interrupt void P1INT_Exti_ISR(void);
 
 //32MHZ us延时函数;
 #pragma optimize=none
@@ -94,3 +94,22 @@ __near_func __interrupt void t4_irq(void)
    //T3STAT &= ~0x01; 
    IRCON &= ~0x08; //T4IF clear     //清除定时器4通道0中断标志
 }
+
+
+ /*===============P1端口外部中断初始化函数==================*/
+ void Init_P1Prot_Exti(void)
+{
+   IEN2 |= 0x10;         //端口1中断使能
+   P1IEN |= 0x04;        //端口P1_2外部中断使能  端口P1.7到P1.0中断使能 
+   PICTL |= 0x02;        //端口P1_0到P1_3下降沿触发 3到0输入模式下的中断配置。该位为所有端口1的输入选择中断请求条件0: 输入的上升沿引起中断1: 输入的下降沿引起中断
+   EA = 1;               //使能总中断
+ }
+/*================外部中断1服务函数====================*/
+#pragma vector = P1INT_VECTOR     //外部中断1的向量入口
+__near_func  __interrupt void P1INT_Exti_ISR(void)
+ {
+    /*先清除引脚标志位,再清除端口标志位,否则会不断进入中断*/
+   P1IFG &= ~ 0x04;        //软件清除P1_2引脚的标志位
+   P1IF = 0;               //软件清除P1端口组的标志位
+ }
+

+ 4 - 0
ZStack-2.5.1a/Projects/zstack/Public/public.h

@@ -5,5 +5,9 @@
 
 void system_delay_us(unsigned int n);
 
+void InitTimer4(void);
+void Init_P1Prot_Exti(void);
+void InitTimer3(void);
+
 #endif
 

+ 0 - 0
ZStack-2.5.1a/Projects/zstack/Public/rc522.c


+ 34 - 0
ZStack-2.5.1a/Projects/zstack/Public/rc522.h

@@ -0,0 +1,34 @@
+#ifndef __RC522_H
+#define __RC522_H
+
+#include "iocc2530.h"
+#include "public.h"
+
+char PcdRead(unsigned char addr,unsigned char *pData);
+void SPIWriteByte(unsigned char infor);
+unsigned char SPIReadByte();
+unsigned char ReadRawRC(unsigned char Address);
+void WriteRawRC(unsigned char Address, unsigned char value);
+void SetBitMask(unsigned char reg,unsigned char mask)  ;
+void ClearBitMask(unsigned char reg,unsigned char mask)  ;
+void PcdAntennaOn(void);
+void PcdAntennaOff(void);
+void PcdReset(void);
+void M500PcdConfigISOType(unsigned char type);
+char PcdComMF522(unsigned char Command, 		//RC522命令字
+                 unsigned char *pInData, 		//通过RC522发送到卡片的数据
+                 unsigned char InLenByte,		//发送数据的字节长度
+                 unsigned char *pOutData, 		//接收到的卡片返回数据
+                 unsigned int  *pOutLenBit)	;
+char PcdRequest(unsigned char req_code,unsigned char *pTagType);
+char PcdAnticoll(unsigned char *pSnr);
+void CalulateCRC(unsigned char *pIndata,unsigned char len,unsigned char *pOutData);
+char PcdSelect(unsigned char *pSnr);
+char PcdAuthState(unsigned char auth_mode,unsigned char addr,unsigned char *pKey,unsigned char *pSnr);
+char PcdWrite(unsigned char addr,unsigned char *pData);
+char PcdRead(unsigned char addr,unsigned char *pData);
+char PcdHalt(void);
+
+#endif
+
+

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 634 - 638
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/SampleApp.dep


+ 3 - 0
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/SampleApp.ewp

@@ -3428,6 +3428,9 @@
         <file>
             <name>$PROJ_DIR$\..\Source\OSAL_SampleApp.c</name>
         </file>
+        <file>
+            <name>$PROJ_DIR$\..\..\..\Public\rc522.c</name>
+        </file>
         <file>
             <name>$PROJ_DIR$\..\Source\SampleApp.c</name>
         </file>

+ 3 - 0
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/SampleApp.ewt

@@ -3156,6 +3156,9 @@
         <file>
             <name>$PROJ_DIR$\..\Source\OSAL_SampleApp.c</name>
         </file>
+        <file>
+            <name>$PROJ_DIR$\..\..\..\Public\rc522.c</name>
+        </file>
         <file>
             <name>$PROJ_DIR$\..\Source\SampleApp.c</name>
         </file>

+ 2 - 2
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/settings/SampleApp.EndDeviceEB.cspy.bat

@@ -25,7 +25,7 @@ if not "%~1" == "" goto debugFile
 
 @echo on 
 
-"D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --backend -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
+"D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --backend -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
 
 @echo off 
 goto end 
@@ -34,7 +34,7 @@ goto end
 
 @echo on 
 
-"D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" "--debug_file=%~1" --backend -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
+"D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" "--debug_file=%~1" --backend -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
 
 @echo off 
 :end

+ 2 - 2
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/settings/SampleApp.EndDeviceEB.cspy.ps1

@@ -23,9 +23,9 @@ param([String]$debugfile = "");
 
 if ($debugfile -eq "")
 {
-& "D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --backend -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
+& "D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --backend -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
 }
 else
 {
-& "D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --debug_file=$debugfile --backend -f "E:\BY_Demo\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
+& "D:\Program Files (x86)\IAR Systems\Embedded Workbench 8.0\common\bin\cspybat" -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.general.xcl" --debug_file=$debugfile --backend -f "E:\Git\TEST\ZStack-2.5.1a\Projects\zstack\Samples\EndDeviceEB\CC2530DB\settings\SampleApp.EndDeviceEB.driver.xcl" 
 }

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 9 - 15
ZStack-2.5.1a/Projects/zstack/Samples/EndDeviceEB/CC2530DB/settings/SampleApp.wsdt


Vissa filer visades inte eftersom för många filer har ändrats