소스 검색

更新readme、更新keil配置项名称、优化射频操作

dropLin 10 달 전
부모
커밋
f803f8eb16
9개의 변경된 파일1050개의 추가작업 그리고 315개의 파일을 삭제
  1. 69 174
      README.md
  2. 228 4
      keil_v5/project.uvoptx
  3. 649 3
      keil_v5/project.uvprojx
  4. 4 4
      peripheral/myInputCapture.c
  5. 2 58
      project/board.h
  6. 1 2
      project/main.c
  7. 25 18
      radio/myRadio.c
  8. 31 29
      radio/myRadio_gpio.c
  9. 41 23
      radio/myRadio_gpio.h

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 69 - 174
README.md


+ 228 - 4
keil_v5/adapterBoardDriver.uvoptx → keil_v5/project.uvoptx

@@ -22,7 +22,7 @@
   </DaveTm>
 
   <Target>
-    <TargetName>adapterBoardDriver</TargetName>
+    <TargetName>project_AT</TargetName>
     <ToolsetNumber>0x4</ToolsetNumber>
     <ToolsetName>ARM-ADS</ToolsetName>
     <TargetOption>
@@ -297,7 +297,7 @@
   </Target>
 
   <Target>
-    <TargetName>adapterBoardDriver_APP</TargetName>
+    <TargetName>project_ST</TargetName>
     <ToolsetNumber>0x4</ToolsetNumber>
     <ToolsetName>ARM-ADS</ToolsetName>
     <TargetOption>
@@ -352,6 +352,230 @@
         <tvExpOptDlg>0</tvExpOptDlg>
         <IsCurrentTarget>0</IsCurrentTarget>
       </OPTFL>
+      <CpuCode>18</CpuCode>
+      <DebugOpt>
+        <uSim>0</uSim>
+        <uTrg>1</uTrg>
+        <sLdApp>1</sLdApp>
+        <sGomain>1</sGomain>
+        <sRbreak>1</sRbreak>
+        <sRwatch>1</sRwatch>
+        <sRmem>1</sRmem>
+        <sRfunc>1</sRfunc>
+        <sRbox>1</sRbox>
+        <tLdApp>1</tLdApp>
+        <tGomain>1</tGomain>
+        <tRbreak>1</tRbreak>
+        <tRwatch>1</tRwatch>
+        <tRmem>1</tRmem>
+        <tRfunc>0</tRfunc>
+        <tRbox>1</tRbox>
+        <tRtrace>1</tRtrace>
+        <sRSysVw>1</sRSysVw>
+        <tRSysVw>1</tRSysVw>
+        <sRunDeb>0</sRunDeb>
+        <sLrtime>0</sLrtime>
+        <bEvRecOn>1</bEvRecOn>
+        <bSchkAxf>0</bSchkAxf>
+        <bTchkAxf>0</bTchkAxf>
+        <nTsel>3</nTsel>
+        <sDll></sDll>
+        <sDllPa></sDllPa>
+        <sDlgDll></sDlgDll>
+        <sDlgPa></sDlgPa>
+        <sIfile></sIfile>
+        <tDll></tDll>
+        <tDllPa></tDllPa>
+        <tDlgDll></tDlgDll>
+        <tDlgPa></tDlgPa>
+        <tIfile></tIfile>
+        <pMon>BIN\CMSIS_AGDI.dll</pMon>
+      </DebugOpt>
+      <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>JL2CM3</Key>
+          <Name>-U59768895 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(1BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512.FLM -FS0800C800 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>UL2CM3</Key>
+          <Name>UL2CM3(-S0 -C0 -P0 )  -FN1 -FC1000 -FD20000000 -FF0STM32F10x_512 -FL080000 -FS08000000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>CMSIS_AGDI</Key>
+          <Name>-X"Any" -UAny -O2254 -S10 -C0 -P00000000 -N00("") -D00(00000000) -L00(0) -TO65554 -TC10000000 -TT10000000 -TP20 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO31 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512.FLM -FS0800000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGUARM</Key>
+          <Name></Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMRTXEVENTFLAGS</Key>
+          <Name>-L70 -Z18 -C0 -M0 -T1</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGTARM</Key>
+          <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMDBGFLAGS</Key>
+          <Name></Name>
+        </SetRegEntry>
+      </TargetDriverDllRegistry>
+      <Breakpoint/>
+      <WatchWindow1>
+        <Ww>
+          <count>0</count>
+          <WinNumber>1</WinNumber>
+          <ItemText>para_val,0x0A</ItemText>
+        </Ww>
+        <Ww>
+          <count>1</count>
+          <WinNumber>1</WinNumber>
+          <ItemText>tmp_var</ItemText>
+        </Ww>
+      </WatchWindow1>
+      <WatchWindow2>
+        <Ww>
+          <count>0</count>
+          <WinNumber>2</WinNumber>
+          <ItemText>Frame.RXBUF</ItemText>
+        </Ww>
+        <Ww>
+          <count>1</count>
+          <WinNumber>2</WinNumber>
+          <ItemText>Frame.SUM</ItemText>
+        </Ww>
+        <Ww>
+          <count>2</count>
+          <WinNumber>2</WinNumber>
+          <ItemText>Frame.BYTE</ItemText>
+        </Ww>
+        <Ww>
+          <count>3</count>
+          <WinNumber>2</WinNumber>
+          <ItemText>Frame.FLASHBUF</ItemText>
+        </Ww>
+        <Ww>
+          <count>4</count>
+          <WinNumber>2</WinNumber>
+          <ItemText>RF_RX_BUF</ItemText>
+        </Ww>
+      </WatchWindow2>
+      <Tracepoint>
+        <THDelay>0</THDelay>
+      </Tracepoint>
+      <DebugFlag>
+        <trace>0</trace>
+        <periodic>0</periodic>
+        <aLwin>1</aLwin>
+        <aCover>0</aCover>
+        <aSer1>0</aSer1>
+        <aSer2>0</aSer2>
+        <aPa>0</aPa>
+        <viewmode>1</viewmode>
+        <vrSel>0</vrSel>
+        <aSym>0</aSym>
+        <aTbox>0</aTbox>
+        <AscS1>0</AscS1>
+        <AscS2>0</AscS2>
+        <AscS3>0</AscS3>
+        <aSer3>0</aSer3>
+        <eProf>0</eProf>
+        <aLa>0</aLa>
+        <aPa1>0</aPa1>
+        <AscS4>0</AscS4>
+        <aSer4>0</aSer4>
+        <StkLoc>0</StkLoc>
+        <TrcWin>0</TrcWin>
+        <newCpu>0</newCpu>
+        <uProt>0</uProt>
+      </DebugFlag>
+      <LintExecutable></LintExecutable>
+      <LintConfigFile></LintConfigFile>
+      <bLintAuto>0</bLintAuto>
+      <bAutoGenD>0</bAutoGenD>
+      <LntExFlags>0</LntExFlags>
+      <pMisraName></pMisraName>
+      <pszMrule></pszMrule>
+      <pSingCmds></pSingCmds>
+      <pMultCmds></pMultCmds>
+      <pMisraNamep></pMisraNamep>
+      <pszMrulep></pszMrulep>
+      <pSingCmdsp></pSingCmdsp>
+      <pMultCmdsp></pMultCmdsp>
+      <DebugDescription>
+        <Enable>1</Enable>
+        <EnableFlashSeq>1</EnableFlashSeq>
+        <EnableLog>0</EnableLog>
+        <Protocol>2</Protocol>
+        <DbgClock>2000000</DbgClock>
+      </DebugDescription>
+    </TargetOption>
+  </Target>
+
+  <Target>
+    <TargetName>project_AT_APP</TargetName>
+    <ToolsetNumber>0x4</ToolsetNumber>
+    <ToolsetName>ARM-ADS</ToolsetName>
+    <TargetOption>
+      <CLKADS>12000000</CLKADS>
+      <OPTTT>
+        <gFlags>1</gFlags>
+        <BeepAtEnd>1</BeepAtEnd>
+        <RunSim>0</RunSim>
+        <RunTarget>1</RunTarget>
+        <RunAbUc>0</RunAbUc>
+      </OPTTT>
+      <OPTHX>
+        <HexSelection>1</HexSelection>
+        <FlashByte>65535</FlashByte>
+        <HexRangeLowAddress>0</HexRangeLowAddress>
+        <HexRangeHighAddress>0</HexRangeHighAddress>
+        <HexOffset>0</HexOffset>
+      </OPTHX>
+      <OPTLEX>
+        <PageWidth>79</PageWidth>
+        <PageLength>66</PageLength>
+        <TabStop>8</TabStop>
+        <ListingPath>.\Listings\</ListingPath>
+      </OPTLEX>
+      <ListingPage>
+        <CreateCListing>1</CreateCListing>
+        <CreateAListing>1</CreateAListing>
+        <CreateLListing>1</CreateLListing>
+        <CreateIListing>0</CreateIListing>
+        <AsmCond>1</AsmCond>
+        <AsmSymb>1</AsmSymb>
+        <AsmXref>0</AsmXref>
+        <CCond>1</CCond>
+        <CCode>0</CCode>
+        <CListInc>0</CListInc>
+        <CSymb>0</CSymb>
+        <LinkerCodeListing>0</LinkerCodeListing>
+      </ListingPage>
+      <OPTXL>
+        <LMap>1</LMap>
+        <LComments>1</LComments>
+        <LGenerateSymbols>1</LGenerateSymbols>
+        <LLibSym>1</LLibSym>
+        <LLines>1</LLines>
+        <LLocSym>1</LLocSym>
+        <LPubSym>1</LPubSym>
+        <LXref>0</LXref>
+        <LExpSel>0</LExpSel>
+      </OPTXL>
+      <OPTFL>
+        <tvExp>1</tvExp>
+        <tvExpOptDlg>0</tvExpOptDlg>
+        <IsCurrentTarget>1</IsCurrentTarget>
+      </OPTFL>
       <CpuCode>255</CpuCode>
       <DebugOpt>
         <uSim>0</uSim>
@@ -572,7 +796,7 @@
   </Target>
 
   <Target>
-    <TargetName>adapterBoardDriver_ST_APP</TargetName>
+    <TargetName>project_ST_APP</TargetName>
     <ToolsetNumber>0x4</ToolsetNumber>
     <ToolsetName>ARM-ADS</ToolsetName>
     <TargetOption>
@@ -625,7 +849,7 @@
       <OPTFL>
         <tvExp>1</tvExp>
         <tvExpOptDlg>0</tvExpOptDlg>
-        <IsCurrentTarget>1</IsCurrentTarget>
+        <IsCurrentTarget>0</IsCurrentTarget>
       </OPTFL>
       <CpuCode>18</CpuCode>
       <DebugOpt>

+ 649 - 3
keil_v5/adapterBoardDriver.uvprojx → keil_v5/project.uvprojx

@@ -7,7 +7,7 @@
 
   <Targets>
     <Target>
-      <TargetName>adapterBoardDriver</TargetName>
+      <TargetName>project_AT</TargetName>
       <ToolsetNumber>0x4</ToolsetNumber>
       <ToolsetName>ARM-ADS</ToolsetName>
       <pCCUsed>5060750::V5.06 update 6 (build 750)::.\ARMCC</pCCUsed>
@@ -652,7 +652,653 @@
       </Groups>
     </Target>
     <Target>
-      <TargetName>adapterBoardDriver_APP</TargetName>
+      <TargetName>project_ST</TargetName>
+      <ToolsetNumber>0x4</ToolsetNumber>
+      <ToolsetName>ARM-ADS</ToolsetName>
+      <pCCUsed>5060750::V5.06 update 6 (build 750)::.\ARMCC</pCCUsed>
+      <uAC6>0</uAC6>
+      <TargetOption>
+        <TargetCommonOption>
+          <Device>STM32F103RC</Device>
+          <Vendor>STMicroelectronics</Vendor>
+          <PackID>Keil.STM32F1xx_DFP.2.3.0</PackID>
+          <PackURL>http://www.keil.com/pack/</PackURL>
+          <Cpu>IRAM(0x20000000,0x0000C000) IROM(0x08000000,0x00040000) CPUTYPE("Cortex-M3") CLOCK(12000000) ELITTLE</Cpu>
+          <FlashUtilSpec></FlashUtilSpec>
+          <StartupFile></StartupFile>
+          <FlashDriverDll>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000 -FP0($$Device:STM32F103RC$Flash\STM32F10x_512.FLM))</FlashDriverDll>
+          <DeviceId>0</DeviceId>
+          <RegisterFile>$$Device:STM32F103RC$Device\Include\stm32f10x.h</RegisterFile>
+          <MemoryEnv></MemoryEnv>
+          <Cmp></Cmp>
+          <Asm></Asm>
+          <Linker></Linker>
+          <OHString></OHString>
+          <InfinionOptionDll></InfinionOptionDll>
+          <SLE66CMisc></SLE66CMisc>
+          <SLE66AMisc></SLE66AMisc>
+          <SLE66LinkerMisc></SLE66LinkerMisc>
+          <SFDFile>$$Device:STM32F103RC$SVD\STM32F103xx.svd</SFDFile>
+          <bCustSvd>0</bCustSvd>
+          <UseEnv>0</UseEnv>
+          <BinPath></BinPath>
+          <IncludePath></IncludePath>
+          <LibPath></LibPath>
+          <RegisterFilePath></RegisterFilePath>
+          <DBRegisterFilePath></DBRegisterFilePath>
+          <TargetStatus>
+            <Error>0</Error>
+            <ExitCodeStop>0</ExitCodeStop>
+            <ButtonStop>0</ButtonStop>
+            <NotGenerated>0</NotGenerated>
+            <InvalidFlash>1</InvalidFlash>
+          </TargetStatus>
+          <OutputDirectory>.\Objects\</OutputDirectory>
+          <OutputName>VGKitBoard_4130NS1_ST_V05</OutputName>
+          <CreateExecutable>1</CreateExecutable>
+          <CreateLib>0</CreateLib>
+          <CreateHexFile>1</CreateHexFile>
+          <DebugInformation>1</DebugInformation>
+          <BrowseInformation>1</BrowseInformation>
+          <ListingPath>.\Listings\</ListingPath>
+          <HexFormatSelection>1</HexFormatSelection>
+          <Merge32K>0</Merge32K>
+          <CreateBatchFile>0</CreateBatchFile>
+          <BeforeCompile>
+            <RunUserProg1>0</RunUserProg1>
+            <RunUserProg2>0</RunUserProg2>
+            <UserProg1Name></UserProg1Name>
+            <UserProg2Name></UserProg2Name>
+            <UserProg1Dos16Mode>0</UserProg1Dos16Mode>
+            <UserProg2Dos16Mode>0</UserProg2Dos16Mode>
+            <nStopU1X>0</nStopU1X>
+            <nStopU2X>0</nStopU2X>
+          </BeforeCompile>
+          <BeforeMake>
+            <RunUserProg1>0</RunUserProg1>
+            <RunUserProg2>0</RunUserProg2>
+            <UserProg1Name></UserProg1Name>
+            <UserProg2Name></UserProg2Name>
+            <UserProg1Dos16Mode>0</UserProg1Dos16Mode>
+            <UserProg2Dos16Mode>0</UserProg2Dos16Mode>
+            <nStopB1X>0</nStopB1X>
+            <nStopB2X>0</nStopB2X>
+          </BeforeMake>
+          <AfterMake>
+            <RunUserProg1>1</RunUserProg1>
+            <RunUserProg2>0</RunUserProg2>
+            <UserProg1Name>fromelf.exe --bin --output .\Listings\@L.bin !L</UserProg1Name>
+            <UserProg2Name></UserProg2Name>
+            <UserProg1Dos16Mode>0</UserProg1Dos16Mode>
+            <UserProg2Dos16Mode>0</UserProg2Dos16Mode>
+            <nStopA1X>0</nStopA1X>
+            <nStopA2X>0</nStopA2X>
+          </AfterMake>
+          <SelectedForBatchBuild>0</SelectedForBatchBuild>
+          <SVCSIdString></SVCSIdString>
+        </TargetCommonOption>
+        <CommonProperty>
+          <UseCPPCompiler>0</UseCPPCompiler>
+          <RVCTCodeConst>0</RVCTCodeConst>
+          <RVCTZI>0</RVCTZI>
+          <RVCTOtherData>0</RVCTOtherData>
+          <ModuleSelection>0</ModuleSelection>
+          <IncludeInBuild>1</IncludeInBuild>
+          <AlwaysBuild>0</AlwaysBuild>
+          <GenerateAssemblyFile>0</GenerateAssemblyFile>
+          <AssembleAssemblyFile>0</AssembleAssemblyFile>
+          <PublicsOnly>0</PublicsOnly>
+          <StopOnExitCode>3</StopOnExitCode>
+          <CustomArgument></CustomArgument>
+          <IncludeLibraryModules></IncludeLibraryModules>
+          <ComprImg>1</ComprImg>
+        </CommonProperty>
+        <DllOption>
+          <SimDllName>SARMCM3.DLL</SimDllName>
+          <SimDllArguments> -REMAP</SimDllArguments>
+          <SimDlgDll>DCM.DLL</SimDlgDll>
+          <SimDlgDllArguments>-pCM3</SimDlgDllArguments>
+          <TargetDllName>SARMCM3.DLL</TargetDllName>
+          <TargetDllArguments></TargetDllArguments>
+          <TargetDlgDll>TCM.DLL</TargetDlgDll>
+          <TargetDlgDllArguments>-pCM3</TargetDlgDllArguments>
+        </DllOption>
+        <DebugOption>
+          <OPTHX>
+            <HexSelection>1</HexSelection>
+            <HexRangeLowAddress>0</HexRangeLowAddress>
+            <HexRangeHighAddress>0</HexRangeHighAddress>
+            <HexOffset>0</HexOffset>
+            <Oh166RecLen>16</Oh166RecLen>
+          </OPTHX>
+        </DebugOption>
+        <Utilities>
+          <Flash1>
+            <UseTargetDll>1</UseTargetDll>
+            <UseExternalTool>0</UseExternalTool>
+            <RunIndependent>0</RunIndependent>
+            <UpdateFlashBeforeDebugging>1</UpdateFlashBeforeDebugging>
+            <Capability>1</Capability>
+            <DriverSelection>4096</DriverSelection>
+          </Flash1>
+          <bUseTDR>1</bUseTDR>
+          <Flash2>BIN\UL2CM3.DLL</Flash2>
+          <Flash3></Flash3>
+          <Flash4></Flash4>
+          <pFcarmOut></pFcarmOut>
+          <pFcarmGrp></pFcarmGrp>
+          <pFcArmRoot></pFcArmRoot>
+          <FcArmLst>0</FcArmLst>
+        </Utilities>
+        <TargetArmAds>
+          <ArmAdsMisc>
+            <GenerateListings>0</GenerateListings>
+            <asHll>1</asHll>
+            <asAsm>1</asAsm>
+            <asMacX>1</asMacX>
+            <asSyms>1</asSyms>
+            <asFals>1</asFals>
+            <asDbgD>1</asDbgD>
+            <asForm>1</asForm>
+            <ldLst>0</ldLst>
+            <ldmm>1</ldmm>
+            <ldXref>1</ldXref>
+            <BigEnd>0</BigEnd>
+            <AdsALst>1</AdsALst>
+            <AdsACrf>1</AdsACrf>
+            <AdsANop>0</AdsANop>
+            <AdsANot>0</AdsANot>
+            <AdsLLst>1</AdsLLst>
+            <AdsLmap>1</AdsLmap>
+            <AdsLcgr>1</AdsLcgr>
+            <AdsLsym>1</AdsLsym>
+            <AdsLszi>1</AdsLszi>
+            <AdsLtoi>1</AdsLtoi>
+            <AdsLsun>1</AdsLsun>
+            <AdsLven>1</AdsLven>
+            <AdsLsxf>1</AdsLsxf>
+            <RvctClst>0</RvctClst>
+            <GenPPlst>0</GenPPlst>
+            <AdsCpuType>"Cortex-M3"</AdsCpuType>
+            <RvctDeviceName></RvctDeviceName>
+            <mOS>0</mOS>
+            <uocRom>0</uocRom>
+            <uocRam>0</uocRam>
+            <hadIROM>1</hadIROM>
+            <hadIRAM>1</hadIRAM>
+            <hadXRAM>0</hadXRAM>
+            <uocXRam>0</uocXRam>
+            <RvdsVP>0</RvdsVP>
+            <RvdsMve>0</RvdsMve>
+            <RvdsCdeCp>0</RvdsCdeCp>
+            <hadIRAM2>0</hadIRAM2>
+            <hadIROM2>0</hadIROM2>
+            <StupSel>8</StupSel>
+            <useUlib>1</useUlib>
+            <EndSel>0</EndSel>
+            <uLtcg>0</uLtcg>
+            <nSecure>0</nSecure>
+            <RoSelD>3</RoSelD>
+            <RwSelD>3</RwSelD>
+            <CodeSel>0</CodeSel>
+            <OptFeed>0</OptFeed>
+            <NoZi1>0</NoZi1>
+            <NoZi2>0</NoZi2>
+            <NoZi3>0</NoZi3>
+            <NoZi4>0</NoZi4>
+            <NoZi5>0</NoZi5>
+            <Ro1Chk>0</Ro1Chk>
+            <Ro2Chk>0</Ro2Chk>
+            <Ro3Chk>0</Ro3Chk>
+            <Ir1Chk>1</Ir1Chk>
+            <Ir2Chk>0</Ir2Chk>
+            <Ra1Chk>0</Ra1Chk>
+            <Ra2Chk>0</Ra2Chk>
+            <Ra3Chk>0</Ra3Chk>
+            <Im1Chk>1</Im1Chk>
+            <Im2Chk>0</Im2Chk>
+            <OnChipMemories>
+              <Ocm1>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm1>
+              <Ocm2>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm2>
+              <Ocm3>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm3>
+              <Ocm4>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm4>
+              <Ocm5>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm5>
+              <Ocm6>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </Ocm6>
+              <IRAM>
+                <Type>0</Type>
+                <StartAddress>0x20000000</StartAddress>
+                <Size>0xc000</Size>
+              </IRAM>
+              <IROM>
+                <Type>1</Type>
+                <StartAddress>0x8000000</StartAddress>
+                <Size>0x40000</Size>
+              </IROM>
+              <XRAM>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </XRAM>
+              <OCR_RVCT1>
+                <Type>1</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT1>
+              <OCR_RVCT2>
+                <Type>1</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT2>
+              <OCR_RVCT3>
+                <Type>1</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT3>
+              <OCR_RVCT4>
+                <Type>1</Type>
+                <StartAddress>0x800c800</StartAddress>
+                <Size>0x40000</Size>
+              </OCR_RVCT4>
+              <OCR_RVCT5>
+                <Type>1</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT5>
+              <OCR_RVCT6>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT6>
+              <OCR_RVCT7>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT7>
+              <OCR_RVCT8>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT8>
+              <OCR_RVCT9>
+                <Type>0</Type>
+                <StartAddress>0x20000000</StartAddress>
+                <Size>0xc000</Size>
+              </OCR_RVCT9>
+              <OCR_RVCT10>
+                <Type>0</Type>
+                <StartAddress>0x0</StartAddress>
+                <Size>0x0</Size>
+              </OCR_RVCT10>
+            </OnChipMemories>
+            <RvctStartVector></RvctStartVector>
+          </ArmAdsMisc>
+          <Cads>
+            <interw>1</interw>
+            <Optim>1</Optim>
+            <oTime>0</oTime>
+            <SplitLS>0</SplitLS>
+            <OneElfS>1</OneElfS>
+            <Strict>0</Strict>
+            <EnumInt>0</EnumInt>
+            <PlainCh>0</PlainCh>
+            <Ropi>0</Ropi>
+            <Rwpi>0</Rwpi>
+            <wLevel>2</wLevel>
+            <uThumb>0</uThumb>
+            <uSurpInc>0</uSurpInc>
+            <uC99>1</uC99>
+            <uGnu>0</uGnu>
+            <useXO>0</useXO>
+            <v6Lang>1</v6Lang>
+            <v6LangP>1</v6LangP>
+            <vShortEn>1</vShortEn>
+            <vShortWch>1</vShortWch>
+            <v6Lto>0</v6Lto>
+            <v6WtE>0</v6WtE>
+            <v6Rtti>0</v6Rtti>
+            <VariousControls>
+              <MiscControls></MiscControls>
+              <Define>STM32F10X_HD,USE_STDPERIPH_DRIVER,__SPI_SOFT_3LINE</Define>
+              <Undefine></Undefine>
+              <IncludePath>..\project;..\core;..\STM32F10x_FWLib\inc;..\peripheral;..\app;..\radio</IncludePath>
+            </VariousControls>
+          </Cads>
+          <Aads>
+            <interw>1</interw>
+            <Ropi>0</Ropi>
+            <Rwpi>0</Rwpi>
+            <thumb>0</thumb>
+            <SplitLS>0</SplitLS>
+            <SwStkChk>0</SwStkChk>
+            <NoWarn>0</NoWarn>
+            <uSurpInc>0</uSurpInc>
+            <useXO>0</useXO>
+            <ClangAsOpt>1</ClangAsOpt>
+            <VariousControls>
+              <MiscControls></MiscControls>
+              <Define></Define>
+              <Undefine></Undefine>
+              <IncludePath></IncludePath>
+            </VariousControls>
+          </Aads>
+          <LDads>
+            <umfTarg>1</umfTarg>
+            <Ropi>0</Ropi>
+            <Rwpi>0</Rwpi>
+            <noStLib>0</noStLib>
+            <RepFail>1</RepFail>
+            <useFile>0</useFile>
+            <TextAddressRange>0x08000000</TextAddressRange>
+            <DataAddressRange>0x20000000</DataAddressRange>
+            <pXoBase></pXoBase>
+            <ScatterFile>..\OBJ\Template.sct</ScatterFile>
+            <IncludeLibs></IncludeLibs>
+            <IncludeLibsPath></IncludeLibsPath>
+            <Misc></Misc>
+            <LinkerInputFile></LinkerInputFile>
+            <DisabledWarnings></DisabledWarnings>
+          </LDads>
+        </TargetArmAds>
+      </TargetOption>
+      <Groups>
+        <Group>
+          <GroupName>project</GroupName>
+          <Files>
+            <File>
+              <FileName>main.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\project\main.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_it.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\project\stm32f10x_it.c</FilePath>
+            </File>
+            <File>
+              <FileName>system_stm32f10x.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\project\system_stm32f10x.c</FilePath>
+            </File>
+          </Files>
+        </Group>
+        <Group>
+          <GroupName>peripheral</GroupName>
+          <Files>
+            <File>
+              <FileName>myUart.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\peripheral\myUart.c</FilePath>
+            </File>
+            <File>
+              <FileName>sys.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\peripheral\sys.c</FilePath>
+            </File>
+            <File>
+              <FileName>myADC.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\peripheral\myADC.c</FilePath>
+            </File>
+            <File>
+              <FileName>myInputCapture.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\peripheral\myInputCapture.c</FilePath>
+            </File>
+            <File>
+              <FileName>myUart3.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\peripheral\myUart3.c</FilePath>
+            </File>
+          </Files>
+        </Group>
+        <Group>
+          <GroupName>core</GroupName>
+          <Files>
+            <File>
+              <FileName>core_cm3.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\CORE\core_cm3.c</FilePath>
+            </File>
+            <File>
+              <FileName>startup_stm32f10x_hd.s</FileName>
+              <FileType>2</FileType>
+              <FilePath>..\CORE\startup_stm32f10x_hd.s</FilePath>
+            </File>
+          </Files>
+        </Group>
+        <Group>
+          <GroupName>FWLIB</GroupName>
+          <Files>
+            <File>
+              <FileName>misc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\misc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_adc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_adc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_bkp.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_bkp.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_can.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_can.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_cec.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_cec.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_crc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_crc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_dac.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_dac.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_dbgmcu.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_dbgmcu.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_dma.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_dma.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_exti.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_exti.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_flash.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_flash.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_fsmc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_fsmc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_gpio.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_gpio.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_i2c.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_i2c.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_iwdg.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_iwdg.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_pwr.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_pwr.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_rcc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_rcc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_rtc.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_rtc.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_sdio.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_sdio.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_spi.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_spi.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_tim.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_tim.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_usart.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_usart.c</FilePath>
+            </File>
+            <File>
+              <FileName>stm32f10x_wwdg.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\STM32F10x_FWLib\src\stm32f10x_wwdg.c</FilePath>
+            </File>
+          </Files>
+        </Group>
+        <Group>
+          <GroupName>app</GroupName>
+          <Files>
+            <File>
+              <FileName>led.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\led.c</FilePath>
+            </File>
+            <File>
+              <FileName>key.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\key.c</FilePath>
+            </File>
+            <File>
+              <FileName>stmflash.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\stmflash.c</FilePath>
+            </File>
+            <File>
+              <FileName>ReadKey.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\ReadKey.c</FilePath>
+            </File>
+            <File>
+              <FileName>myLcd.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\myLcd.c</FilePath>
+            </File>
+            <File>
+              <FileName>myTim.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\APP\myTim.c</FilePath>
+            </File>
+            <File>
+              <FileName>crc8.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\app\crc8.c</FilePath>
+            </File>
+            <File>
+              <FileName>eventUnit.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\app\eventUnit.c</FilePath>
+            </File>
+            <File>
+              <FileName>myDisplayUnit.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\app\myDisplayUnit.c</FilePath>
+            </File>
+            <File>
+              <FileName>myFlashData.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\app\myFlashData.c</FilePath>
+            </File>
+          </Files>
+        </Group>
+        <Group>
+          <GroupName>radio</GroupName>
+          <Files>
+            <File>
+              <FileName>myRadio.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\radio\myRadio.c</FilePath>
+            </File>
+            <File>
+              <FileName>myRadio_gpio.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\radio\myRadio_gpio.c</FilePath>
+            </File>
+            <File>
+              <FileName>pan3029.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\radio\pan3029.c</FilePath>
+            </File>
+            <File>
+              <FileName>pan3029_port.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\radio\pan3029_port.c</FilePath>
+            </File>
+            <File>
+              <FileName>radio.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>..\radio\radio.c</FilePath>
+            </File>
+          </Files>
+        </Group>
+      </Groups>
+    </Target>
+    <Target>
+      <TargetName>project_AT_APP</TargetName>
       <ToolsetNumber>0x4</ToolsetNumber>
       <ToolsetName>ARM-ADS</ToolsetName>
       <pCCUsed>5060750::V5.06 update 6 (build 750)::.\ARMCC</pCCUsed>
@@ -1297,7 +1943,7 @@
       </Groups>
     </Target>
     <Target>
-      <TargetName>adapterBoardDriver_ST_APP</TargetName>
+      <TargetName>project_ST_APP</TargetName>
       <ToolsetNumber>0x4</ToolsetNumber>
       <ToolsetName>ARM-ADS</ToolsetName>
       <pCCUsed>5060750::V5.06 update 6 (build 750)::.\ARMCC</pCCUsed>

+ 4 - 4
peripheral/myInputCapture.c

@@ -134,10 +134,10 @@ void myInputCaptureTIM2_CH3_init(CaptureCallback cb)
     irqCallback_tim2ch3.thisCb = tim2ch3_callback;
     TIM2CC3_callbackRegiste(&irqCallback_tim2ch3);
 
-    GPIO_InitStructure.GPIO_Pin  = BOARD_PIN_SPI_GPIOD;
+    GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_2;
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入
-    GPIO_Init(BOARD_PORT_SPI_GPIOD, &GPIO_InitStructure);//初始化
+    GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化
 
 	/* TIM2 clock enable */
 	RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
@@ -218,10 +218,10 @@ void myInputCaptureTIM3_CH4_init(CaptureCallback cb)
     irqCallback_tim3ch4.thisCb = tim3ch4_callback;
     TIM3CC4_callbackRegiste(&irqCallback_tim3ch4);
 
-    GPIO_InitStructure.GPIO_Pin  = BOARD_PIN_SPI_GPIOC;
+    GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_1;
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //
-    GPIO_Init(BOARD_PORT_SPI_GPIOC, &GPIO_InitStructure);//初始化
+    GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化
 
 	/* TIM2 clock enable */
 	RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);

+ 2 - 58
project/board.h

@@ -4,61 +4,6 @@
 #include "stm32f10x_gpio.h"
 
 //--------------------------------------------
-#define BOARD_PIN_SPI_CLK    GPIO_Pin_5     //SPI1_SCK(8)
-#define BOARD_PORT_SPI_CLK   GPIOA          //DAC_OUT2 ADC12_IN5
-#define BOARD_GPIO_SPI_CLK   BOARD_PORT_SPI_CLK, BOARD_PIN_SPI_CLK          //
-
-#define BOARD_PIN_SPI_MISO    GPIO_Pin_6    //SPI1_MISO(8)
-#define BOARD_PORT_SPI_MISO   GPIOA         // TIM8_BKIN/ADC12_IN6
-                                            // TIM3_CH1(8)
-#define BOARD_GPIO_SPI_MISO   BOARD_PORT_SPI_MISO, BOARD_PIN_SPI_MISO         //
-
-#define BOARD_PIN_SPI_MOSI    GPIO_Pin_7    //SPI1_MOSI(8)/
-#define BOARD_PORT_SPI_MOSI   GPIOA         // TIM8_CH1N/ADC12_IN7
-                                            // TIM3_CH2(8)
-#define BOARD_GPIO_SPI_MOSI   BOARD_PORT_SPI_MOSI, BOARD_PIN_SPI_MOSI         //
-
-#define BOARD_PIN_SPI_CSN    GPIO_Pin_4     //SPI1_NSS(8)/
-#define BOARD_PORT_SPI_CSN   GPIOA          // USART2_CK(8)
-                                            // DAC_OUT1/ADC12_IN4
-#define BOARD_GPIO_SPI_CSN   BOARD_PORT_SPI_CSN, BOARD_PIN_SPI_CSN          //
-
-#define BOARD_PIN_SPI_GPIOA    GPIO_Pin_5   //ADC12_IN15
-#define BOARD_PORT_SPI_GPIOA   GPIOC
-#define BOARD_GPIO_SPI_GPIOA   BOARD_PORT_SPI_GPIOA, BOARD_PIN_SPI_GPIOA          //
-
-#define BOARD_PIN_SPI_GPIOB    GPIO_Pin_0   //ADC12_IN8/TIM3_CH3        TIM1_CH2N
-#define BOARD_PORT_SPI_GPIOB   GPIOB        // TIM8_CH2N,N表示互补输出功能
-#define BOARD_GPIO_SPI_GPIOB   BOARD_PORT_SPI_GPIOB, BOARD_PIN_SPI_GPIOB          //
-
-#define BOARD_PIN_SPI_GPIOC    GPIO_Pin_1   //ADC12_IN9/TIM3_CH4(8)
-#define BOARD_PORT_SPI_GPIOC   GPIOB        // TIM8_CH3N,N表示互补输出功能
-#define BOARD_GPIO_SPI_GPIOC   BOARD_PORT_SPI_GPIOC, BOARD_PIN_SPI_GPIOC          //
-
-#define BOARD_PIN_SPI_GPIOD    GPIO_Pin_2   //USART2_TX(8)/TIM5_CH3
-#define BOARD_PORT_SPI_GPIOD   GPIOA        // ADC123_IN2/
-#define BOARD_GPIO_SPI_GPIOD   BOARD_PORT_SPI_GPIOD, BOARD_PIN_SPI_GPIOD          //
-                                            // TIM2_CH3 (8)
-
-#define BOARD_PIN_SPI_GPIOE    GPIO_Pin_10  //I2C2_SCL/USART3_TX(8)         TIM2_CH3
-#define BOARD_PORT_SPI_GPIOE   GPIOB
-#define BOARD_GPIO_SPI_GPIOE   BOARD_PORT_SPI_GPIOE, BOARD_PIN_SPI_GPIOE          //
-
-#define BOARD_PIN_SPI_GPIOF    GPIO_Pin_11  //I2C2_SDA/USART3_RX(8)         TIM2_CH4
-#define BOARD_PORT_SPI_GPIOF   GPIOB
-#define BOARD_GPIO_SPI_GPIOF   BOARD_PORT_SPI_GPIOF, BOARD_PIN_SPI_GPIOF          //
-
-#define BOARD_PIN_SPI_GPIOG    GPIO_Pin_12  //SPI2_NSS/I2S2_WS/
-#define BOARD_PORT_SPI_GPIOG   GPIOB        // I2C2_SMBA/
-                                            // USART3_CK(8)/
-                                            // TIM1_BKIN(8)
-#define BOARD_GPIO_SPI_GPIOG   BOARD_PORT_SPI_GPIOG, BOARD_PIN_SPI_GPIOG          //
-
-#define BOARD_PIN_SPI_GPIOH    GPIO_Pin_13  //SPI2_SCK/I2S2_CK
-#define BOARD_PORT_SPI_GPIOH   GPIOB        // USART3_CTS(8)/
-                                            // TIM1_CH1N
-#define BOARD_GPIO_SPI_GPIOH   BOARD_PORT_SPI_GPIOH, BOARD_PIN_SPI_GPIOH          //
-
 
 #define BOARD_PIN_H Bit_SET
 #define BOARD_PIN_L Bit_RESET
@@ -72,7 +17,6 @@
 #define BOARD_PORT_LED2   GPIOC
 #define BOARD_GPIO_LED2   BOARD_PORT_LED2, BOARD_PIN_LED2          //
 
-
 #define LED_ON   Bit_RESET
 #define LED_OFF   Bit_SET
 
@@ -84,8 +28,8 @@
 #define BEEP_OFF   Bit_RESET
 //-----------------------------------------LED指示灯,END
 //-----------------------LCD显示器驱动IO口
-#define BG_LED_ON   Bit_RESET
-#define BG_LED_OFF   Bit_SET
+#define BG_LED_ON       Bit_RESET
+#define BG_LED_OFF      Bit_SET
 #define BOARD_PIN_LCD_BG_LED    GPIO_Pin_4   //
 #define BOARD_PORT_LCD_BG_LED   GPIOB
 #define BOARD_GPIO_LCD_BG_LED   BOARD_PORT_LCD_BG_LED, BOARD_PIN_LCD_BG_LED          //

+ 1 - 2
project/main.c

@@ -15,7 +15,7 @@
 #include "myUart3.h"
 #include "myRadio.h"
 
-#define SOFT_VERSION 0x05
+#define SOFT_VERSION 0x06
 #define SET_RF_FREQ_HZ(base, ch,step) base+ch*step*10*1000
 //---------------key
 KeyParamExt_ts *getKeyReturn;
@@ -604,7 +604,6 @@ int main(void)
     myRadio_setFrequency(SET_RF_FREQ_HZ(rfBaseFreqList[deviceInfor.chipType], deviceInfor.rfChannel, deviceInfor.channelStep));
     myRadio_setTxPower(deviceInfor.txPower);
     myRadio_setRfParams(deviceInfor.rf_sf, deviceInfor.rf_bw, deviceInfor.rf_cr);
-    myRadio_abort();
     myRadio_receiver();
     // LCD显示屏初始化界面显示
     myDisplay_init(uiEnterCallback);

+ 25 - 18
radio/myRadio.c

@@ -10,6 +10,9 @@
 static int8_t rfTxPower;
 static uint32_t rfFrequence;
 static uint32_t rfBaudrate;
+static uint8_t rf_sf;
+static uint8_t rf_bw;
+static uint8_t rf_cr;
 static rfRxCallBack rxCb;
 static uint8_t rfRxBuffer[255];
 static uint32_t rf_handle;
@@ -114,14 +117,8 @@ void myRadio_init(int agr0, void *agr1_ptr)
 	rf_set_default_para();
 
     rf_set_dcdc_mode(regulatorMode);
-    PAN3029_set_mode(PAN3029_MODE_DEEP_SLEEP);
-    myRadio_delay(1);
-    PAN3029_set_mode(PAN3029_MODE_SLEEP);
-    myRadio_delay(1);
-    PAN3029_set_mode(PAN3029_MODE_STB2);
-    myRadio_delay(1);
-    PAN3029_set_mode(PAN3029_MODE_STB3);
 /**-------------------------radio init end----------------------------------**/
+    myRadio_delay(10);
     RF_EXT_PA_TO_IDLE();
     if ((rfRxCallBack )agr1_ptr)
     {
@@ -223,7 +220,8 @@ void myRadio_abort(void)
         return;
     }
     RF_EXT_PA_TO_IDLE();
-    rf_deepsleep();
+    // rf_deepsleep();
+    rf_sleep();
 }
 /**
  * @brief 获取射频工作中心频率
@@ -304,7 +302,6 @@ void myRadio_setBaudrate(uint32_t br)
         return;
     }
     rfBaudrate = br;
-    PAN3029_set_mode(PAN3029_MODE_STB3);
     rf_set_para(RF_PARA_TYPE_CR, loraBaudrateFrame[br].ErrorCoding);
     rf_set_para(RF_PARA_TYPE_BW, loraBaudrateFrame[br].SignalBw);
     rf_set_para(RF_PARA_TYPE_SF, loraBaudrateFrame[br].SpreadingFactor);
@@ -316,7 +313,9 @@ void myRadio_setRfParams(uint8_t sf, uint8_t bw, uint8_t cr)
     {
         return;
     }
-    PAN3029_set_mode(PAN3029_MODE_STB3);
+    rf_sf = sf;
+    rf_bw = bw;
+    rf_cr = cr;
     rf_set_para(RF_PARA_TYPE_CR, cr);
     rf_set_para(RF_PARA_TYPE_BW, bw);
     rf_set_para(RF_PARA_TYPE_SF, sf);
@@ -360,6 +359,14 @@ void myRadio_transmit(rfTxPacket_ts *packet)
     if (rf_get_mode() == PAN3029_MODE_DEEP_SLEEP)
     {
         rf_deepsleep_wakeup();
+        myRadio_setFrequency(rfFrequence);
+        myRadio_setTxPower(rfTxPower);
+        myRadio_setRfParams(rf_sf, rf_bw, rf_cr);
+        myRadio_delay(10);
+    }
+    if (rf_get_mode() == PAN3029_MODE_SLEEP)
+    {
+        rf_sleep_wakeup();
         myRadio_delay(10);
     }
     
@@ -370,14 +377,6 @@ void myRadio_transmit(rfTxPacket_ts *packet)
     {
     }
     rf_workProcess = RF_PRC_TX;
-    // printf("rf_get_mode()= 0x%x\r\n", rf_get_mode());
-
-    // if(rf_continous_tx_send_data(packet->payload, packet->len) != OK)
-    // {
-    // }
-    // else
-    // {
-    // }
 }
 /**
  * @brief 进入无线接收
@@ -393,6 +392,14 @@ void myRadio_receiver(void)
     if (rf_get_mode() == PAN3029_MODE_DEEP_SLEEP)
     {
         rf_deepsleep_wakeup();
+        myRadio_setFrequency(rfFrequence);
+        myRadio_setTxPower(rfTxPower);
+        myRadio_setRfParams(rf_sf, rf_bw, rf_cr);
+        myRadio_delay(10);
+    }
+    if (rf_get_mode() == PAN3029_MODE_SLEEP)
+    {
+        rf_sleep_wakeup();
         myRadio_delay(10);
     }
     rf_enter_continous_rx();

+ 31 - 29
radio/myRadio_gpio.c

@@ -90,21 +90,21 @@ void RF_PAN3031_IRQ_L(void)
 {
     GPIO_WriteBit(RF_PAN3031_IRQ, BOARD_PIN_L);
 }
-void RF_PAN3031_IO5_H(void)
+void RF_PAN3031_NRST_H(void)
 {
-    GPIO_WriteBit(RF_PAN3031_IO5, BOARD_PIN_H);
+    GPIO_WriteBit(RF_PAN3031_NRST, BOARD_PIN_H);
 }
-void RF_PAN3031_IO5_L(void)
+void RF_PAN3031_NRST_L(void)
 {
-    GPIO_WriteBit(RF_PAN3031_IO5, BOARD_PIN_L);
+    GPIO_WriteBit(RF_PAN3031_NRST, BOARD_PIN_L);
 }
-void RF_PAN3031_IO8_H(void)
+void RF_PAN3031_IO3_H(void)
 {
-    GPIO_WriteBit(RF_PAN3031_IO8, BOARD_PIN_H);
+    GPIO_WriteBit(RF_PAN3031_IO3, BOARD_PIN_H);
 }
-void RF_PAN3031_IO8_L(void)
+void RF_PAN3031_IO3_L(void)
 {
-    GPIO_WriteBit(RF_PAN3031_IO8, BOARD_PIN_L);
+    GPIO_WriteBit(RF_PAN3031_IO3, BOARD_PIN_L);
 }
 void RF_EXT_PA_RE_H(void)
 {
@@ -179,7 +179,7 @@ void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb)
 	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
 	GPIO_Init(BOARD_PORT_SPI_CLK, &GPIO_InitStructure);
 
- 	GPIO_SetBits(BOARD_GPIO_SPI_CLK | BOARD_PIN_SPI_MISO | BOARD_PIN_SPI_MOSI);
+    GPIO_SetBits(BOARD_GPIO_SPI_CLK | BOARD_PIN_SPI_MISO | BOARD_PIN_SPI_MOSI);
     /*!< SPI configuration */
     SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
     SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
@@ -223,14 +223,14 @@ void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb)
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;      
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;      
     GPIO_Init(RF_PAN3031_IRQ_PORT, &GPIO_InitStructure);
-    GPIO_InitStructure.GPIO_Pin = RF_PAN3031_IO5_PIN;            
-    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;      
+    GPIO_InitStructure.GPIO_Pin = RF_PAN3031_NRST_PIN;            
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;      
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;      
-    GPIO_Init(RF_PAN3031_IO5_PORT, &GPIO_InitStructure);
-    GPIO_InitStructure.GPIO_Pin = RF_PAN3031_IO8_PIN;            
+    GPIO_Init(RF_PAN3031_NRST_PORT, &GPIO_InitStructure);
+    GPIO_InitStructure.GPIO_Pin = RF_PAN3031_IO3_PIN;            
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;      
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;      
-    GPIO_Init(RF_PAN3031_IO8_PORT, &GPIO_InitStructure);
+    GPIO_Init(RF_PAN3031_IO3_PORT, &GPIO_InitStructure);
     GPIO_InitStructure.GPIO_Pin = RF_PAN3031_IO11_PIN;            
     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;      
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;      
@@ -246,12 +246,14 @@ void myRadio_gpio_init(RADIO_GPIO_CALLBACK cb)
     GPIO_Init(RF_EXTPA_TE_PORT, &GPIO_InitStructure);
 
     BOARD_SPI_NSS_H();
+    RF_PAN3031_NRST_H();
     myRadio_gpio_irq_init();
     gpioCallback = cb;
 }
 uint8_t myRadioSpi_rwByte(uint8_t byteToWrite)
 {
-    uint8_t i, temp;
+    uint16_t i;
+    uint8_t temp;
     temp = 0;   
 #if defined(SPI_HARD)
 	while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET) //检查指定的SPI标志位设置与否:发送缓存空标志位
@@ -298,23 +300,23 @@ uint8_t myRadioSpi_rwByte(uint8_t byteToWrite)
 
 void myRadioSpi_wBuffer(uint8_t* pData, uint8_t len)
 {
-  uint8_t i;
-  
-  for(i = 0; i < len; i++)
-  {
-    myRadioSpi_rwByte(*pData);
-    pData ++;
-  }
+    uint8_t i;
+    
+    for(i = 0; i < len; i++)
+    {
+        myRadioSpi_rwByte(*pData);
+        pData ++;
+    }
 }
 
 void myRadioSpi_rBuffer(uint8_t* pData, uint8_t len)
 {
-  uint8_t i;
-  
-  for(i = 0; i < len; i++)
-  {
-    *pData = myRadioSpi_rwByte(0xFF);
-    pData ++;
-  }
+    uint8_t i;
+    
+    for(i = 0; i < len; i++)
+    {
+        *pData = myRadioSpi_rwByte(0xFF);
+        pData ++;
+    }
 }
 

+ 41 - 23
radio/myRadio_gpio.h

@@ -17,29 +17,47 @@
 typedef void (*RADIO_GPIO_CALLBACK)(uint8_t index);
 
 //-------------射频模块引脚映射到转接板排针---------------
-//IO1用于射频中断响应
-#define RF_PAN3031_IRQ_PIN           BOARD_PIN_SPI_GPIOB  //
-#define RF_PAN3031_IRQ_PORT          BOARD_PORT_SPI_GPIOB
-#define RF_PAN3031_IRQ               RF_PAN3031_IRQ_PORT, RF_PAN3031_IRQ_PIN          //
+#define BOARD_PIN_SPI_CLK       GPIO_Pin_5     //SPI1_SCK(8)
+#define BOARD_PORT_SPI_CLK      GPIOA          //DAC_OUT2 ADC12_IN5
+#define BOARD_GPIO_SPI_CLK      BOARD_PORT_SPI_CLK, BOARD_PIN_SPI_CLK          //
+
+#define BOARD_PIN_SPI_MISO      GPIO_Pin_6    //SPI1_MISO(8)
+#define BOARD_PORT_SPI_MISO     GPIOA         // TIM8_BKIN/ADC12_IN6
+                                              // TIM3_CH1(8)
+#define BOARD_GPIO_SPI_MISO     BOARD_PORT_SPI_MISO, BOARD_PIN_SPI_MISO         //
+
+#define BOARD_PIN_SPI_MOSI      GPIO_Pin_7    //SPI1_MOSI(8)/
+#define BOARD_PORT_SPI_MOSI     GPIOA         // TIM8_CH1N/ADC12_IN7
+                                            // TIM3_CH2(8)
+#define BOARD_GPIO_SPI_MOSI     BOARD_PORT_SPI_MOSI, BOARD_PIN_SPI_MOSI         //
+
+#define BOARD_PIN_SPI_CSN       GPIO_Pin_4     //SPI1_NSS(8)/
+#define BOARD_PORT_SPI_CSN      GPIOA          // USART2_CK(8)
+                                               // DAC_OUT1/ADC12_IN4
+#define BOARD_GPIO_SPI_CSN      BOARD_PORT_SPI_CSN, BOARD_PIN_SPI_CSN          //
+//用于射频中断响应
+#define RF_PAN3031_IRQ_PIN      GPIO_Pin_0  //
+#define RF_PAN3031_IRQ_PORT     GPIOB
+#define RF_PAN3031_IRQ          RF_PAN3031_IRQ_PORT, RF_PAN3031_IRQ_PIN          //
 //
-#define RF_PAN3031_IO5_PIN           BOARD_PIN_SPI_GPIOC  //
-#define RF_PAN3031_IO5_PORT          BOARD_PORT_SPI_GPIOC
-#define RF_PAN3031_IO5               RF_PAN3031_IO5_PORT, RF_PAN3031_IO5_PIN          //
+#define RF_PAN3031_NRST_PIN     GPIO_Pin_1  //
+#define RF_PAN3031_NRST_PORT    GPIOB
+#define RF_PAN3031_NRST         RF_PAN3031_NRST_PORT, RF_PAN3031_NRST_PIN          //
 //
-#define RF_PAN3031_IO8_PIN           BOARD_PIN_SPI_GPIOA  //
-#define RF_PAN3031_IO8_PORT          BOARD_PORT_SPI_GPIOA
-#define RF_PAN3031_IO8               RF_PAN3031_IO8_PORT, RF_PAN3031_IO8_PIN          //
+#define RF_PAN3031_IO3_PIN      GPIO_Pin_5  //
+#define RF_PAN3031_IO3_PORT     GPIOC
+#define RF_PAN3031_IO3          RF_PAN3031_IO3_PORT, RF_PAN3031_IO3_PIN          //
 //
-#define RF_PAN3031_IO11_PIN          BOARD_PIN_SPI_GPIOD  //
-#define RF_PAN3031_IO11_PORT         BOARD_PORT_SPI_GPIOD
-#define RF_PAN3031_IO11              RF_PAN3031_IO11_PORT, RF_PAN3031_IO11_PIN          //
-//外部PA和LNA控制脚
-#define RF_EXTPA_RE_PIN      BOARD_PIN_SPI_GPIOE  //
-#define RF_EXTPA_RE_PORT     BOARD_PORT_SPI_GPIOE
-#define RF_EXTPA_RE          RF_EXTPA_RE_PORT, RF_EXTPA_RE_PIN          //
-#define RF_EXTPA_TE_PIN      BOARD_PIN_SPI_GPIOF  //
-#define RF_EXTPA_TE_PORT     BOARD_PORT_SPI_GPIOF
-#define RF_EXTPA_TE          RF_EXTPA_TE_PORT, RF_EXTPA_TE_PIN          //
+#define RF_PAN3031_IO11_PIN     GPIO_Pin_2  //
+#define RF_PAN3031_IO11_PORT    GPIOA
+#define RF_PAN3031_IO11         RF_PAN3031_IO11_PORT, RF_PAN3031_IO11_PIN          //
+//用于大功率模块的PA和LNA控制脚
+#define RF_EXTPA_RE_PIN         GPIO_Pin_10  //
+#define RF_EXTPA_RE_PORT        GPIOB
+#define RF_EXTPA_RE             RF_EXTPA_RE_PORT, RF_EXTPA_RE_PIN          //
+#define RF_EXTPA_TE_PIN         GPIO_Pin_11  //
+#define RF_EXTPA_TE_PORT        GPIOB
+#define RF_EXTPA_TE             RF_EXTPA_TE_PORT, RF_EXTPA_TE_PIN          //
 //-------------射频模块引脚映射到转接板排针---------------END
 
 uint8_t READ_RF_PAN3031_IRQ(void);
@@ -64,8 +82,8 @@ uint8_t myRadioSpi_rwByte(uint8_t byteToWrite);
 void myRadioSpi_wBuffer(uint8_t* pData, uint8_t len);
 void myRadioSpi_rBuffer(uint8_t* pData, uint8_t len);
 
-#define SpiReadWrite(p) myRadioSpi_rwByte(p)
-#define SpiWriteData(p1, p2) myRadioSpi_wBuffer(p2, p1)
-#define SpiReadData(p1, p2) myRadioSpi_rBuffer(p2, p1)
+#define SpiReadWrite(p)         myRadioSpi_rwByte(p)
+#define SpiWriteData(p1, p2)    myRadioSpi_wBuffer(p2, p1)
+#define SpiReadData(p1, p2)     myRadioSpi_rBuffer(p2, p1)
 //-------------将封装的API映射到射频模块硬件层---------------END
 #endif

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.