Browse Source

feature: 添加称重数据存储功能app_screen_save();

weight-flt
zhangwen 10 months ago
parent
commit
5f12bc74ce
  1. 4
      .vscode/settings.json
  2. 818
      keilp/stcTTSS2_W5.uvguix.Administrator
  3. 104
      keilp/stcTTSS2_W5.uvoptx
  4. 64
      keilp/stcTTSS2_W5.uvprojx
  5. 3
      source/app/app_config.h
  6. 24
      source/app/app_screen_save.c
  7. 26
      source/app/app_screen_save.h
  8. 28
      source/app/task_bedalarm.c
  9. 16
      source/app/task_screen.c
  10. 30
      source/app/task_screen_save.h

4
.vscode/settings.json

@ -13,6 +13,8 @@
"task_bedalarm.h": "c", "task_bedalarm.h": "c",
"asp_lowpower.h": "c", "asp_lowpower.h": "c",
"debug_drv.h": "c", "debug_drv.h": "c",
"task_screen_save.h": "c" "task_screen_save.h": "c",
"app_screen_save.h": "c",
"msp_eeprom.h": "c"
} }
} }

818
keilp/stcTTSS2_W5.uvguix.Administrator

File diff suppressed because one or more lines are too long

104
keilp/stcTTSS2_W5.uvoptx

@ -100,6 +100,9 @@
<tRSysVw>1</tRSysVw> <tRSysVw>1</tRSysVw>
<sRunDeb>0</sRunDeb> <sRunDeb>0</sRunDeb>
<sLrtime>0</sLrtime> <sLrtime>0</sLrtime>
<bEvRecOn>1</bEvRecOn>
<bSchkAxf>0</bSchkAxf>
<bTchkAxf>0</bTchkAxf>
<nTsel>-1</nTsel> <nTsel>-1</nTsel>
<sDll></sDll> <sDll></sDll>
<sDllPa></sDllPa> <sDllPa></sDllPa>
@ -146,6 +149,16 @@
<LintExecutable></LintExecutable> <LintExecutable></LintExecutable>
<LintConfigFile></LintConfigFile> <LintConfigFile></LintConfigFile>
<bLintAuto>0</bLintAuto> <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>
</TargetOption> </TargetOption>
</Target> </Target>
@ -160,7 +173,6 @@
<FileNumber>1</FileNumber> <FileNumber>1</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\app\app_weight.c</PathWithFileName> <PathWithFileName>..\source\app\app_weight.c</PathWithFileName>
@ -173,7 +185,6 @@
<FileNumber>2</FileNumber> <FileNumber>2</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\app\main.c</PathWithFileName> <PathWithFileName>..\source\app\main.c</PathWithFileName>
@ -186,7 +197,6 @@
<FileNumber>3</FileNumber> <FileNumber>3</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\app\app_config.c</PathWithFileName> <PathWithFileName>..\source\app\app_config.c</PathWithFileName>
@ -199,7 +209,6 @@
<FileNumber>4</FileNumber> <FileNumber>4</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\app\task_screen.c</PathWithFileName> <PathWithFileName>..\source\app\task_screen.c</PathWithFileName>
@ -207,6 +216,30 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<bShared>0</bShared> <bShared>0</bShared>
</File> </File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>5</FileNumber>
<FileType>1</FileType>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\source\app\app_screen_save.c</PathWithFileName>
<FilenameWithoutPath>app_screen_save.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>1</GroupNumber>
<FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>..\source\app\task_bedalarm.c</PathWithFileName>
<FilenameWithoutPath>task_bedalarm.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group> </Group>
<Group> <Group>
@ -217,10 +250,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>2</GroupNumber> <GroupNumber>2</GroupNumber>
<FileNumber>5</FileNumber> <FileNumber>7</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\asp\asp_schain.c</PathWithFileName> <PathWithFileName>..\source\asp\asp_schain.c</PathWithFileName>
@ -230,10 +262,9 @@
</File> </File>
<File> <File>
<GroupNumber>2</GroupNumber> <GroupNumber>2</GroupNumber>
<FileNumber>6</FileNumber> <FileNumber>8</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\asp\asp_lowpower.c</PathWithFileName> <PathWithFileName>..\source\asp\asp_lowpower.c</PathWithFileName>
@ -251,10 +282,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>3</GroupNumber> <GroupNumber>3</GroupNumber>
<FileNumber>7</FileNumber> <FileNumber>9</FileNumber>
<FileType>2</FileType> <FileType>2</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\cpu\STARTUP.A51</PathWithFileName> <PathWithFileName>..\source\cpu\STARTUP.A51</PathWithFileName>
@ -264,10 +294,9 @@
</File> </File>
<File> <File>
<GroupNumber>3</GroupNumber> <GroupNumber>3</GroupNumber>
<FileNumber>8</FileNumber> <FileNumber>10</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\cpu\stc_8_delay.c</PathWithFileName> <PathWithFileName>..\source\cpu\stc_8_delay.c</PathWithFileName>
@ -285,10 +314,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>9</FileNumber> <FileNumber>11</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\uart\msp_uartN.c</PathWithFileName> <PathWithFileName>..\source\msp\uart\msp_uartN.c</PathWithFileName>
@ -298,10 +326,9 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>10</FileNumber> <FileNumber>12</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\msp_time2.c</PathWithFileName> <PathWithFileName>..\source\msp\msp_time2.c</PathWithFileName>
@ -311,10 +338,9 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>11</FileNumber> <FileNumber>13</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\uart\msp_uart1.c</PathWithFileName> <PathWithFileName>..\source\msp\uart\msp_uart1.c</PathWithFileName>
@ -324,10 +350,9 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>12</FileNumber> <FileNumber>14</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\msp_iicMx.c</PathWithFileName> <PathWithFileName>..\source\msp\msp_iicMx.c</PathWithFileName>
@ -337,10 +362,9 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>13</FileNumber> <FileNumber>15</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\msp_eeprom.c</PathWithFileName> <PathWithFileName>..\source\msp\msp_eeprom.c</PathWithFileName>
@ -350,10 +374,9 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>14</FileNumber> <FileNumber>16</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\msp\msp_adc.c</PathWithFileName> <PathWithFileName>..\source\msp\msp_adc.c</PathWithFileName>
@ -371,10 +394,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>15</FileNumber> <FileNumber>17</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\bsp\TTSSbsp\bsp_config.c</PathWithFileName> <PathWithFileName>..\source\bsp\TTSSbsp\bsp_config.c</PathWithFileName>
@ -384,10 +406,9 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>16</FileNumber> <FileNumber>18</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\bsp\bsp_led.c</PathWithFileName> <PathWithFileName>..\source\bsp\bsp_led.c</PathWithFileName>
@ -397,10 +418,9 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>17</FileNumber> <FileNumber>19</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\bsp\bsp_cs1232.c</PathWithFileName> <PathWithFileName>..\source\bsp\bsp_cs1232.c</PathWithFileName>
@ -418,10 +438,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>18</FileNumber> <FileNumber>20</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>1</tvExp> <tvExp>1</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\ctask\TTSS_task.c</PathWithFileName> <PathWithFileName>..\source\ctask\TTSS_task.c</PathWithFileName>
@ -431,10 +450,9 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>19</FileNumber> <FileNumber>21</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\ctask\TTSS_tick.c</PathWithFileName> <PathWithFileName>..\source\ctask\TTSS_tick.c</PathWithFileName>
@ -444,10 +462,9 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>20</FileNumber> <FileNumber>22</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\ctask\TTSS_time_stc.c</PathWithFileName> <PathWithFileName>..\source\ctask\TTSS_time_stc.c</PathWithFileName>
@ -465,10 +482,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>7</GroupNumber> <GroupNumber>7</GroupNumber>
<FileNumber>21</FileNumber> <FileNumber>23</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\tpc\tpc_road.c</PathWithFileName> <PathWithFileName>..\source\tpc\tpc_road.c</PathWithFileName>
@ -486,10 +502,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>8</GroupNumber> <GroupNumber>8</GroupNumber>
<FileNumber>22</FileNumber> <FileNumber>24</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>1</tvExp> <tvExp>1</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\clib\c_lib.c</PathWithFileName> <PathWithFileName>..\source\clib\c_lib.c</PathWithFileName>
@ -499,10 +514,9 @@
</File> </File>
<File> <File>
<GroupNumber>8</GroupNumber> <GroupNumber>8</GroupNumber>
<FileNumber>23</FileNumber> <FileNumber>25</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\clib\c_delay.c</PathWithFileName> <PathWithFileName>..\source\clib\c_delay.c</PathWithFileName>
@ -520,10 +534,9 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>9</GroupNumber> <GroupNumber>9</GroupNumber>
<FileNumber>24</FileNumber> <FileNumber>26</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\debug\cc_as_stc01_main.ini</PathWithFileName> <PathWithFileName>..\source\debug\cc_as_stc01_main.ini</PathWithFileName>
@ -533,10 +546,9 @@
</File> </File>
<File> <File>
<GroupNumber>9</GroupNumber> <GroupNumber>9</GroupNumber>
<FileNumber>25</FileNumber> <FileNumber>27</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<Focus>1</Focus>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2> <bDave2>0</bDave2>
<PathWithFileName>..\source\debug\debug_drv.c</PathWithFileName> <PathWithFileName>..\source\debug\debug_drv.c</PathWithFileName>

64
keilp/stcTTSS2_W5.uvprojx

@ -10,6 +10,7 @@
<TargetName>STC8H3K64S2</TargetName> <TargetName>STC8H3K64S2</TargetName>
<ToolsetNumber>0x0</ToolsetNumber> <ToolsetNumber>0x0</ToolsetNumber>
<ToolsetName>MCS-51</ToolsetName> <ToolsetName>MCS-51</ToolsetName>
<uAC6>0</uAC6>
<TargetOption> <TargetOption>
<TargetCommonOption> <TargetCommonOption>
<Device>STC8H3K64S4 Series</Device> <Device>STC8H3K64S4 Series</Device>
@ -123,47 +124,6 @@
<HexOffset>0</HexOffset> <HexOffset>0</HexOffset>
<Oh166RecLen>16</Oh166RecLen> <Oh166RecLen>16</Oh166RecLen>
</OPTHX> </OPTHX>
<Simulator>
<UseSimulator>1</UseSimulator>
<LoadApplicationAtStartup>1</LoadApplicationAtStartup>
<RunToMain>1</RunToMain>
<RestoreBreakpoints>1</RestoreBreakpoints>
<RestoreWatchpoints>1</RestoreWatchpoints>
<RestoreMemoryDisplay>1</RestoreMemoryDisplay>
<RestoreFunctions>1</RestoreFunctions>
<RestoreToolbox>1</RestoreToolbox>
<LimitSpeedToRealTime>0</LimitSpeedToRealTime>
<RestoreSysVw>1</RestoreSysVw>
</Simulator>
<Target>
<UseTarget>0</UseTarget>
<LoadApplicationAtStartup>1</LoadApplicationAtStartup>
<RunToMain>0</RunToMain>
<RestoreBreakpoints>1</RestoreBreakpoints>
<RestoreWatchpoints>1</RestoreWatchpoints>
<RestoreMemoryDisplay>1</RestoreMemoryDisplay>
<RestoreFunctions>0</RestoreFunctions>
<RestoreToolbox>1</RestoreToolbox>
<RestoreTracepoints>1</RestoreTracepoints>
<RestoreSysVw>1</RestoreSysVw>
</Target>
<RunDebugAfterBuild>0</RunDebugAfterBuild>
<TargetSelection>-1</TargetSelection>
<SimDlls>
<CpuDll></CpuDll>
<CpuDllArguments></CpuDllArguments>
<PeripheralDll></PeripheralDll>
<PeripheralDllArguments></PeripheralDllArguments>
<InitializationFile></InitializationFile>
</SimDlls>
<TargetDlls>
<CpuDll></CpuDll>
<CpuDllArguments></CpuDllArguments>
<PeripheralDll></PeripheralDll>
<PeripheralDllArguments></PeripheralDllArguments>
<InitializationFile></InitializationFile>
<Driver></Driver>
</TargetDlls>
</DebugOption> </DebugOption>
<Utilities> <Utilities>
<Flash1> <Flash1>
@ -217,12 +177,14 @@
<Mx51P>0</Mx51P> <Mx51P>0</Mx51P>
<hadXRAM2>0</hadXRAM2> <hadXRAM2>0</hadXRAM2>
<uocXram2>0</uocXram2> <uocXram2>0</uocXram2>
<hadXRAM3>0</hadXRAM3>
<ModC2>0</ModC2> <ModC2>0</ModC2>
<ModH2>0</ModH2> <ModH2>0</ModH2>
<Mdu_R515>0</Mdu_R515> <Mdu_R515>0</Mdu_R515>
<Mdu_F120>0</Mdu_F120> <Mdu_F120>0</Mdu_F120>
<Psoc>0</Psoc> <Psoc>0</Psoc>
<hadIROM2>0</hadIROM2> <hadIROM2>0</hadIROM2>
<hadIROM3>0</hadIROM3>
<ModSmx2>0</ModSmx2> <ModSmx2>0</ModSmx2>
<cBanks>0</cBanks> <cBanks>0</cBanks>
<xBanks>0</xBanks> <xBanks>0</xBanks>
@ -292,6 +254,16 @@
<StartAddress>0x0</StartAddress> <StartAddress>0x0</StartAddress>
<Size>0x0</Size> <Size>0x0</Size>
</IROM512> </IROM512>
<XRA513>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</XRA513>
<IROM513>
<Type>0</Type>
<StartAddress>0x0</StartAddress>
<Size>0x0</Size>
</IROM513>
</OnChipMemories> </OnChipMemories>
</Target51Misc> </Target51Misc>
<C51> <C51>
@ -383,6 +355,16 @@
<FileType>1</FileType> <FileType>1</FileType>
<FilePath>..\source\app\task_screen.c</FilePath> <FilePath>..\source\app\task_screen.c</FilePath>
</File> </File>
<File>
<FileName>app_screen_save.c</FileName>
<FileType>1</FileType>
<FilePath>..\source\app\app_screen_save.c</FilePath>
</File>
<File>
<FileName>task_bedalarm.c</FileName>
<FileType>1</FileType>
<FilePath>..\source\app\task_bedalarm.c</FilePath>
</File>
</Files> </Files>
</Group> </Group>
<Group> <Group>

3
source/app/app_config.h

@ -225,6 +225,9 @@ typedef struct global_register
//离床报警手动解除标志 //离床报警手动解除标志
U8 ForbidDelate_flag; U8 ForbidDelate_flag;
//离床报警参考重量
U16 Weight_Ref;
//功耗模式 //功耗模式
U8 power_mode; U8 power_mode;

24
source/app/task_screen_save.c → source/app/app_screen_save.c

@ -1,31 +1,29 @@
#include "task_screen_save.h" #include "app_screen_save.h"
#include "../msp/msp_eeprom.h"
#define SCREEN_SAVE_LEN 10
#define EEPROM_WEIGHT_ADDR 0x100
//定义所使用内存的起始和结尾标志
#define HEAD0 0xa3 #define HEAD0 0xa3
#define HEAD1 0xa4 #define HEAD1 0xa4
#define TAIL0 0xa5 #define TAIL0 0xa5
#define TAIL1 0xa6 #define TAIL1 0xa6
SCREEN_SAVE screen_save_arr[SCREEN_SAVE_LEN] = {0};
SCREEN_SAVE screen_save_arr[SCREEN_SAVE_LEN]; //初始化存放重量数据的结构体数组screen_save_arr
void screen_save_init() void screen_save_init()
{ {
int i = 0;
for(i = 0;i < SCREEN_SAVE_LEN; i++) for(i = 0;i < SCREEN_SAVE_LEN; i++)
{ {
screen_save_arr[i].head[0] = HEAD0; screen_save_arr[i].head[0] = HEAD0;
screen_save_arr[i].head[1] = HEAD1; screen_save_arr[i].head[1] = HEAD1;
screen_save_arr[i].kgx10_out = 0;
screen_save_arr[i].available = 0; screen_save_arr[i].available = 0;
screen_save_arr[i].kgx10_out = 0;
screen_save_arr[i].tail[0] = TAIL0; screen_save_arr[i].tail[0] = TAIL0;
screen_save_arr[i].tail[1] = TAIL1; screen_save_arr[i].tail[1] = TAIL1;
} }
} }
//存放重量数据到eeprom中
void screen_save_push(U16 weight) void screen_save_push(U16 weight)
{ {
int i = 0; int i = 0;
@ -40,7 +38,7 @@ void screen_save_push(U16 weight)
// 遍历寻找空位 // 遍历寻找空位
for(i = 0;i < SCREEN_SAVE_LEN; i++) for(i = 0;i < SCREEN_SAVE_LEN; i++)
{ {
if(screen_save_arr[i].available =! 1) if(screen_save_arr[i].available != 0)
{ {
free = i; free = i;
break; break;
@ -49,14 +47,14 @@ void screen_save_push(U16 weight)
// 当都有数据时 // 当都有数据时
if(i == SCREEN_SAVE_LEN) if(i == SCREEN_SAVE_LEN)
{ {
for(i = 0; i < SCREEN_SAVE_LEN-1; i++ ) for(i = 0; i < SCREEN_SAVE_LEN - 1; i++)
{ {
screen_save_arr[i] = screen_save_arr[i+1]; screen_save_arr[i] = screen_save_arr[i+1];
} }
free = SCREEN_SAVE_LEN-1; free = SCREEN_SAVE_LEN-1;
} }
// 放到free位置 // 放到free位置
screen_save_arr[free].available = 1; screen_save_arr[free].available = 0;
screen_save_arr[free].kgx10_out = weight; screen_save_arr[free].kgx10_out = weight;
// 把数组放回eeprom中 // 把数组放回eeprom中
L0_Iap_Program_array(EEPROM_WEIGHT_ADDR, screen_save_arr,sizeof(screen_save_arr)); L0_Iap_Program_array(EEPROM_WEIGHT_ADDR, screen_save_arr,sizeof(screen_save_arr));

26
source/app/app_screen_save.h

@ -0,0 +1,26 @@
#ifndef _APP_SCREEN_SAVE_H
#define _APP_SCREEN_SAVE_H
#include "../bsp/TTSSbsp/bsp_config.h"
#define SCREEN_SAVE_LEN 10 //寄存器需要存放的最大数量为10组
#define EEPROM_WEIGHT_ADDR 0x100 //定义一个起始地址为0x100的寄存器
//用来存储重量数据的结构体(数组)
typedef struct
{
U8 head[2];
U8 available;
U16 kgx10_out;
U8 tail[2];
}SCREEN_SAVE;
extern SCREEN_SAVE screen_save_arr[SCREEN_SAVE_LEN];
extern void screen_save_init(void);
extern void screen_save_push(U16 weight);
#endif

28
source/app/task_bedalarm.c

@ -23,25 +23,22 @@ void L3_task_bed_alarm_init(void)
L3_task_s_go(_s_task_bed_alarm,D_task_init); L3_task_s_go(_s_task_bed_alarm,D_task_init);
} }
#define D_task_STATUS_READ 0x50 #define D_task_ALARM_JUDGE 0x50
#define D_task_WEIGHT_READ_AGAIN 0x51 #define D_task_ALARM_DELETE 0x51
#define D_task_ALARM_DELETE 0x52
void L3_task_bed_alarm_handler(S_TASK_Bed_ALARM *s) void L3_task_bed_alarm_handler(S_TASK_Bed_ALARM *s)
{ {
TTSS_Task_init(): TTSS_Task_init():
L2_task_go(D_task_STATUS_READ); L2_task_go(D_task_ALARM_JUDGE);
//判定是否开启离床报警 //判定是否开启离床报警
TTSS_Task_step(D_task_STATUS_READ):
// if(R.LeaveForbid_flag == LeaveForbid_OPEN) // if(R.LeaveForbid_flag == LeaveForbid_OPEN)
// { // {
// R.weight.last = R.weight.kgx10_out * 10; 应该在 按键按下时,就置标志位R.LeaveForbid_flag == LeaveForbid_OPEN和获取参考点位的重量。 // R.weight.last = R.weight.kgx10_out * 10; //////应该在 按键按下时,就置标志位R.LeaveForbid_flag == LeaveForbid_OPEN和获取参考点位的重量。
// L2_task_go_Tdelay(D_task_WEIGHT_READ_AGAIN, D_Tdelay_100ms); // L2_task_go_Tdelay(D_task_WEIGHT_READ_AGAIN, D_Tdelay_100ms);
// } // }
//判定是否触发报警 //判定是否触发报警
TTSS_Task_step(D_task_WEIGHT_READ_AGAIN): TTSS_Task_step(D_task_ALARM_JUDGE):
R.weight.differ = R.weight.last - R.weight.kgx10_out * 10; R.weight.differ = R.Weight_Ref - R.weight.kgx10_out * 10;
//触发报警 //放在该task的第二步 //触发报警 //放在该task的第二步
if(R.weight.differ >= 100) if(R.weight.differ >= 100)
{ {
@ -50,11 +47,8 @@ void L3_task_bed_alarm_handler(S_TASK_Bed_ALARM *s)
L2_task_go_Tdelay(D_task_ALARM_DELETE, 0); L2_task_go_Tdelay(D_task_ALARM_DELETE, 0);
} }
//未触发报警 //未触发报警
else L2_task_go_Tdelay(D_task_ALARM_JUDGE, 0);
{
R.weight.last = R.weight.kgx10_out * 10;
L2_task_go_Tdelay(D_task_WEIGHT_READ_AGAIN, 0);
}
//判定是否解除报警 //判定是否解除报警
TTSS_Task_step(D_task_ALARM_DELETE): TTSS_Task_step(D_task_ALARM_DELETE):
//手动解除 //手动解除
@ -65,13 +59,13 @@ void L3_task_bed_alarm_handler(S_TASK_Bed_ALARM *s)
// R.LeaveForbid_flag = LeaveForbid_OFF; 应在按键按下时,操作beep还和置位R.LeaveForbid_flag = LeaveForbid_OFF // R.LeaveForbid_flag = LeaveForbid_OFF; 应在按键按下时,操作beep还和置位R.LeaveForbid_flag = LeaveForbid_OFF
// } // }
//超时解除 //放在该task的第一步 //超时解除 //放在该task的第一步
else if(D_sys_now - R.beep_startime > D_COUNT_JIFFIES(30000)) if(D_sys_now - R.beep_startime > D_COUNT_JIFFIES(30000))
{ {
R.beep = beep_on; R.beep = beep_off;
R.beep_startime = 0; R.beep_startime = 0;
R.LeaveForbid_flag = LeaveForbid_OFF; R.LeaveForbid_flag = LeaveForbid_OFF;
} }
L2_task_go_Tdelay(D_task_STATUS_READ, 0); L2_task_go_Tdelay(D_task_ALARM_JUDGE, 0);
TTSS_Task_end(); TTSS_Task_end();
} }

16
source/app/task_screen.c

@ -1,9 +1,11 @@
#include "../app/task_screen.h" #include "task_screen.h"
#include "../app/app_config.h" #include "../app/app_config.h"
#include "../msp/uart/msp_uart1.h" #include "../msp/uart/msp_uart1.h"
#include "msp_uart1.h" #include "msp_uart1.h"
#include "debug_drv.h" #include "debug_drv.h"
#include "../msp/msp_eeprom.h" #include "../msp/msp_eeprom.h"
#include "app_screen_save.h"
S_TASK_SCREEN _s_task_screen; S_TASK_SCREEN _s_task_screen;
@ -137,9 +139,6 @@ void constructor_scr_pkg()
scrSetValPkg.buf.LeaveForbid_flag[0] = R.LeaveForbid_flag >> 8 & 0xFF; scrSetValPkg.buf.LeaveForbid_flag[0] = R.LeaveForbid_flag >> 8 & 0xFF;
scrSetValPkg.buf.LeaveForbid_flag[1] = R.LeaveForbid_flag >> 0 & 0xFF; scrSetValPkg.buf.LeaveForbid_flag[1] = R.LeaveForbid_flag >> 0 & 0xFF;
scrSetValPkg.buf.WeightKeep_flag[0] = R.WeightKeep_flag >> 8 & 0xFF;
scrSetValPkg.buf.WeightKeep_flag[1] = R.WeightKeep_flag >> 0 & 0xFF;
CRC = CRC_16(((U8 *)&scrSetValPkg) + 3, 21); CRC = CRC_16(((U8 *)&scrSetValPkg) + 3, 21);
scrSetValPkg.crc[1] = CRC; scrSetValPkg.crc[1] = CRC;
scrSetValPkg.crc[0] = CRC >> 8; scrSetValPkg.crc[0] = CRC >> 8;
@ -169,12 +168,11 @@ void parse_screen_pkg()
tst_weight.kgx10_zero = tst_weight.kgx10; tst_weight.kgx10_zero = tst_weight.kgx10;
break; break;
case 0xD3://离床报警 case 0xD3://离床报警
R.LeaveForbid_flag = LeaveForbid_OPEN; R.LeaveForbid_flag = LeaveForbid_OPEN;//按键按下时,就置标志位R.LeaveForbid_flag == LeaveForbid_OPEN和获取参考点位的重量。
// 并获取到参考重量 weight_ref = 当前重量 R.Weight_Ref = tst_weight.kgx10; // 参考重量 weight_ref = 当前重量
break; break;
case 0xD4://保存 case 0xD4://保存
// register1 = tst_weight.kgx10; screen_save_push(tst_weight.kgx10);// register1 = tst_weight.kgx10;
break; break;
case 0xD5://校准菜单按钮 case 0xD5://校准菜单按钮
scrSetValPkg.buf.ui[1] = p->Data[1]; scrSetValPkg.buf.ui[1] = p->Data[1];
@ -186,6 +184,8 @@ void parse_screen_pkg()
R.danwei = p->Data[1]; R.danwei = p->Data[1];
break; break;
case 0xD8://查看历史数据 case 0xD8://查看历史数据
L0_Iap_Read_array(EEPROM_WEIGHT_ADDR, screen_save_arr,sizeof(screen_save_arr));//1先从eeprom中读出数组
// 2推送到屏幕
break; break;
case 0xD9://校准确认 case 0xD9://校准确认
ts_weight_SPara.ts_WPoint[pd485->buf[0]].kg = D_2uc_u16(pd485->buf[1],pd485->buf[2]); ts_weight_SPara.ts_WPoint[pd485->buf[0]].kg = D_2uc_u16(pd485->buf[1],pd485->buf[2]);

30
source/app/task_screen_save.h

@ -1,30 +0,0 @@
#ifndef _APP_TASK_SCREEN_SAVE_H
#define _APP_TASK_SCREEN_SAVE_H
#include "../bsp/TTSSbsp/bsp_config.h"
typedef struct
{
U8 head[2];
U8 available;
U16 kgx10_out;
U8 tail[2];
}SCREEN_SAVE;
typedef struct _s_task_screen_save
{
TS_task task;
}S_TASK_SCREEN_SAVE;
extern S_TASK_SCREEN_SAVE _s_task_screen_save;
extern void L3_task_screen_save_init(void);
extern void L3_task_screen_save_handler(S_TASK_Bed_ALARM *s);
void screen_save_push(U16 weight);
#endif
Loading…
Cancel
Save