diff --git a/.gitignore b/.gitignore index bbc4d5f..a44e831 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,11 @@ -/plan_manage_main/out -/plan_manage_main/Debug - - -*.swp -.* - - - -!.gitignore - - +/plan_manage_main/out + + +*.swp +.* + + + +!.gitignore + + diff --git a/plan_manage_main/ewp/plan_manage_main.dep b/plan_manage_main/ewp/plan_manage_main.dep index 1b11e30..9300b65 100644 --- a/plan_manage_main/ewp/plan_manage_main.dep +++ b/plan_manage_main/ewp/plan_manage_main.dep @@ -1,2247 +1,4284 @@ - - - - 2 - 2489258447 - - Debug - - $PROJ_DIR$\..\src\app\include\config.h - $PROJ_DIR$\..\src\app\include\debug.h - $PROJ_DIR$\..\src\app\include\display.h - $PROJ_DIR$\..\src\app\include\flash.h - $PROJ_DIR$\..\src\app\include\input.h - $PROJ_DIR$\..\src\app\include\isr.h - $PROJ_DIR$\..\src\app\include\key.h - $PROJ_DIR$\..\src\app\include\knob.h - $PROJ_DIR$\..\src\app\include\output.h - $PROJ_DIR$\..\src\app\include\plan_handle.h - $PROJ_DIR$\..\src\app\include\pm_time.h - $PROJ_DIR$\..\src\app\include\setup.h - $PROJ_DIR$\..\src\app\include\simulat_timer.h - $PROJ_DIR$\..\src\app\include\tft.h - $PROJ_DIR$\..\src\app\debug.c - $PROJ_DIR$\..\src\app\display.c - $PROJ_DIR$\..\src\app\flash.c - $PROJ_DIR$\..\src\app\input.c - $PROJ_DIR$\..\src\app\isr.c - $PROJ_DIR$\..\src\app\key.c - $PROJ_DIR$\..\src\app\knob.c - $PROJ_DIR$\..\src\app\main.c - $PROJ_DIR$\..\src\app\NormalDemo_Flash.c - $PROJ_DIR$\..\src\app\output.c - $PROJ_DIR$\..\src\app\plan_handle.c - $PROJ_DIR$\..\src\app\pm_init.c - $PROJ_DIR$\..\src\app\pm_time.c - $PROJ_DIR$\..\src\app\simulat_timer.c - $PROJ_DIR$\..\src\app\tft.c - $PROJ_DIR$\..\src\common\alloc.c - $PROJ_DIR$\..\src\common\assert.c - $PROJ_DIR$\..\src\common\common.c - $PROJ_DIR$\..\src\common\io.c - $PROJ_DIR$\..\src\common\memtest.c - $PROJ_DIR$\..\src\common\printf.c - $PROJ_DIR$\..\src\common\queue.c - $PROJ_DIR$\..\src\common\startup.c - $PROJ_DIR$\..\src\common\uif.c - $PROJ_DIR$\..\src\cpu\arm_cm0.c - $PROJ_DIR$\..\src\cpu\crt0.s - $PROJ_DIR$\..\src\cpu\start.c - $PROJ_DIR$\..\src\cpu\sysinit.c - $PROJ_DIR$\..\src\cpu\vectors.c - $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c - $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c - $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c - $PROJ_DIR$\..\src\drivers\adc.c - $PROJ_DIR$\..\src\drivers\cmp.c - $PROJ_DIR$\..\Debug\Obj\FlashProgram.pbi - $PROJ_DIR$\..\Debug\Obj\FlashProgramCheck.pbi - $PROJ_DIR$\..\Debug\Obj\FlashProgramOnce.pbi - $PROJ_DIR$\..\Debug\Obj\FlashProgramSection.pbi - $PROJ_DIR$\..\Debug\Obj\FlashReadOnce.pbi - $PROJ_DIR$\..\Debug\Obj\FlashReadResource.pbi - $PROJ_DIR$\..\Debug\Obj\FlashSecurityBypass.pbi - $PROJ_DIR$\..\Debug\Obj\FlashVerifyAllBlock.pbi - $PROJ_DIR$\..\Debug\Obj\FlashGetSecurityState.o - $PROJ_DIR$\..\Debug\Obj\FlashInit.o - $PROJ_DIR$\..\Debug\Obj\FlashProgram.o - $PROJ_DIR$\..\Debug\Obj\FlashProgramCheck.o - $PROJ_DIR$\..\Debug\Obj\FlashProgramOnce.o - $PROJ_DIR$\..\Debug\Obj\FlashProgramSection.o - $PROJ_DIR$\..\Debug\Obj\FlashReadOnce.o - $PROJ_DIR$\..\Debug\Obj\FlashReadResource.o - $PROJ_DIR$\..\Debug\Obj\FlashSecurityBypass.o - $PROJ_DIR$\..\Debug\Obj\FlashVerifyAllBlock.o - $PROJ_DIR$\..\Debug\Obj\FlashVerifyBlock.o - $PROJ_DIR$\..\Debug\Obj\FlashVerifySection.o - $PROJ_DIR$\..\Debug\Obj\PFlashGetProtection.o - $PROJ_DIR$\..\Debug\Obj\PFlashSetProtection.o - $PROJ_DIR$\..\Debug\Obj\FlashVerifySection.pbi - $PROJ_DIR$\..\Debug\Obj\PFlashGetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\PFlashSetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\PFlashSwap.pbi - $PROJ_DIR$\..\Debug\Obj\PFlashSwapCtl.pbi - $PROJ_DIR$\..\Debug\Obj\SetEEEEnable.pbi - $PROJ_DIR$\..\Debug\Obj\plan_handle.o - $PROJ_DIR$\..\Debug\Obj\tft.o - $PROJ_DIR$\..\Debug\Obj\time.o - $PROJ_DIR$\..\Debug\Obj\printf.pbi - $TOOLKIT_DIR$\inc\c\ycheck.h - $PROJ_DIR$\..\Debug\Obj\startup.o - $PROJ_DIR$\..\Debug\Obj\tft.pbi - $PROJ_DIR$\..\src\app\time.c - $PROJ_DIR$\..\Debug\Obj\output.pbi - $PROJ_DIR$\..\Debug\Obj\queue.o - $TOOLKIT_DIR$\inc\c\stdlib.h - $PROJ_DIR$\..\Debug\Obj\io.o - $PROJ_DIR$\..\Debug\Obj\stdlib.o - $PROJ_DIR$\..\Debug\Obj\alloc.pbi - $PROJ_DIR$\..\Debug\Obj\plan_manage_main.pbd - $PROJ_DIR$\..\Debug\Obj\printf.o - $PROJ_DIR$\..\Debug\Obj\knob.pbi - $PROJ_DIR$\..\Debug\Obj\memtest.o - $PROJ_DIR$\..\Debug\Obj\assert.pbi - $TOOLKIT_DIR$\inc\c\stdint.h - $TOOLKIT_DIR$\inc\c\DLib_Config_Normal.h - $PROJ_DIR$\..\Debug\Obj\common.o - $PROJ_DIR$\..\Debug\Obj\assert.o - $PROJ_DIR$\..\Debug\Exe\plan_manage_main.out - $PROJ_DIR$\..\Debug\Obj\time.pbi - $PROJ_DIR$\..\Debug\Obj\queue.pbi - $PROJ_DIR$\..\Debug\Obj\i2c.pbi - $PROJ_DIR$\..\Debug\Obj\mcg.pbi - $PROJ_DIR$\..\Debug\Obj\uif.pbi - $PROJ_DIR$\..\Debug\Obj\tpm.o - $PROJ_DIR$\..\Debug\Obj\tsi.o - $PROJ_DIR$\..\Debug\Obj\tick_timer.o - $PROJ_DIR$\..\Debug\Obj\dma.pbi - $PROJ_DIR$\..\Debug\Obj\start.o - $PROJ_DIR$\..\Debug\Obj\dac.pbi - $PROJ_DIR$\..\Debug\Obj\cmp.pbi - $PROJ_DIR$\..\Debug\Obj\arm_cm0.o - $PROJ_DIR$\..\Debug\Obj\adc.pbi - $PROJ_DIR$\..\Debug\Obj\uart.o - $PROJ_DIR$\..\Debug\Obj\vectors.o - $PROJ_DIR$\..\Debug\Obj\io.pbi - $PROJ_DIR$\..\Debug\Obj\uif.o - $PROJ_DIR$\..\Debug\Obj\memtest.pbi - $PROJ_DIR$\..\Debug\Obj\common.pbi - $TOOLKIT_DIR$\inc\c\string.h - $TOOLKIT_DIR$\inc\c\DLib_Product_string.h - $PROJ_DIR$\..\Debug\Obj\SPI.o - $PROJ_DIR$\..\Debug\Obj\systick.o - $PROJ_DIR$\..\Debug\Obj\time64.o - $PROJ_DIR$\..\Debug\Obj\getzone.pbi - $PROJ_DIR$\..\src\app\getzone.c - $PROJ_DIR$\..\src\app\time64.c - $PROJ_DIR$\..\Debug\List\plan_manage_main.map - $TOOLKIT_DIR$\inc\c\yfuns.h - $PROJ_DIR$\..\src\app\clock.c - $TOOLKIT_DIR$\inc\c\time.h - $PROJ_DIR$\..\Debug\Obj\dma.o - $PROJ_DIR$\..\Debug\Obj\flash.o - $PROJ_DIR$\..\Debug\Obj\uart.pbi - $PROJ_DIR$\..\Debug\Obj\dac.o - $PROJ_DIR$\..\Debug\Obj\cmp.o - $PROJ_DIR$\..\Debug\Obj\adc.o - $PROJ_DIR$\..\Debug\Obj\tsi.pbi - $PROJ_DIR$\..\Debug\Obj\knob.o - $PROJ_DIR$\..\Debug\Obj\key.o - $PROJ_DIR$\..\Debug\Obj\isr.o - $PROJ_DIR$\..\Debug\Obj\plan_handle.pbi - $PROJ_DIR$\..\Debug\Obj\simulat_timer.pbi - $TOOLKIT_DIR$\inc\c\xencoding_limits.h - $TOOLKIT_DIR$\inc\c\DLib_Threads.h - $TOOLKIT_DIR$\inc\c\ysizet.h - $TOOLKIT_DIR$\inc\c\ystdio.h - $PROJ_DIR$\..\Debug\Obj\debug.pbi - $PROJ_DIR$\..\Debug\Obj\display.pbi - $PROJ_DIR$\..\Debug\Obj\startup.pbi - $PROJ_DIR$\..\Debug\Obj\stdlib.pbi - $TOOLKIT_DIR$\lib\rt6M_tl.a - $PROJ_DIR$\..\Debug\Obj\pm_init.o - $PROJ_DIR$\..\Debug\Obj\pm_init.pbi - $PROJ_DIR$\..\src\app\include\pm_init.h - $PROJ_DIR$\..\Debug\Obj\pit.pbi - $PROJ_DIR$\..\Debug\Obj\gpio.pbi - $TOOLKIT_DIR$\inc\c\stdarg.h - $PROJ_DIR$\..\Debug\Obj\lptmr.pbi - $PROJ_DIR$\..\Debug\Obj\port.pbi - $PROJ_DIR$\..\Debug\Obj\rtc.pbi - $PROJ_DIR$\..\Debug\Obj\SPI.pbi - $PROJ_DIR$\..\Debug\Obj\systick.pbi - $PROJ_DIR$\..\Debug\Obj\tick_timer.pbi - $PROJ_DIR$\..\Debug\Obj\tpm.pbi - $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_Types.h - $PROJ_DIR$\..\Debug\Obj\NormalDemo_Flash.pbi - $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Internal.h - $PROJ_DIR$\..\src\include\drivers\FTFx\user_cfg.h - $PROJ_DIR$\..\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h - $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx.h - $TOOLKIT_DIR$\inc\c\DLib_Defaults.h - $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Common.h - $PROJ_DIR$\..\Debug\Obj\NormalDemo_Flash.o - $TOOLKIT_DIR$\inc\c\stdio.h - $TOOLKIT_DIR$\inc\c\yvals.h - $PROJ_DIR$\..\Debug\Obj\arm_cm0.pbi - $PROJ_DIR$\..\Debug\Obj\sysinit.pbi - $PROJ_DIR$\..\Debug\Obj\start.pbi - $PROJ_DIR$\..\Debug\Obj\crt0.o - $PROJ_DIR$\..\Debug\Obj\vectors.pbi - $PROJ_DIR$\..\Debug\Obj\sysinit.o - $TOOLKIT_DIR$\inc\c\DLib_Product.h - $TOOLKIT_DIR$\lib\m6M_tl.a - $PROJ_DIR$\..\config_files\128KB_Pflash.icf - $TOOLKIT_DIR$\lib\dl6M_tln.a - $TOOLKIT_DIR$\lib\shb_l.a - $PROJ_DIR$\..\Debug\Obj\LandzoOLED.pbi - $PROJ_DIR$\..\Debug\Obj\alloc.o - $PROJ_DIR$\..\Debug\Obj\lptmr.o - $PROJ_DIR$\..\Debug\Obj\pm_time.pbi - $PROJ_DIR$\..\Debug\Obj\LandzoOLED.o - $PROJ_DIR$\..\Debug\Obj\rtc.o - $PROJ_DIR$\..\Debug\Obj\pit.o - $PROJ_DIR$\..\Debug\Obj\main.pbi - $PROJ_DIR$\..\Debug\Obj\clock.pbi - $PROJ_DIR$\..\Debug\Obj\i2c.o - $PROJ_DIR$\..\Debug\Obj\port.o - $PROJ_DIR$\..\Debug\Obj\main.o - $PROJ_DIR$\..\Debug\Obj\getzone.o - $PROJ_DIR$\..\Debug\Obj\flash.pbi - $PROJ_DIR$\..\Debug\Obj\pm_time.o - $PROJ_DIR$\..\Debug\Obj\input.pbi - $PROJ_DIR$\..\src\common\stdlib.c - $PROJ_DIR$\..\Debug\Obj\key.pbi - $PROJ_DIR$\..\Debug\Obj\isr.pbi - $PROJ_DIR$\..\Debug\Obj\time64.pbi - $PROJ_DIR$\..\Debug\Obj\gpio.o - $PROJ_DIR$\..\Debug\Obj\mcg.o - $PROJ_DIR$\..\Debug\Obj\output.o - $PROJ_DIR$\..\Debug\Obj\clock.o - $PROJ_DIR$\..\src\include\drivers\FTFx\demo_cfg.h - $PROJ_DIR$\..\Debug\Obj\PFlashSwap.o - $PROJ_DIR$\..\Debug\Obj\PFlashSwapCtl.o - $PROJ_DIR$\..\Debug\Obj\SetEEEEnable.o - $PROJ_DIR$\..\Debug\Obj\CopyToRam.pbi - $PROJ_DIR$\..\Debug\Obj\DEFlashPartition.pbi - $PROJ_DIR$\..\Debug\Obj\FlashEraseBlock.pbi - $PROJ_DIR$\..\Debug\Obj\DFlashGetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\DFlashSetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\EEEWrite.pbi - $PROJ_DIR$\..\Debug\Obj\EERAMGetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\EERAMSetProtection.pbi - $PROJ_DIR$\..\Debug\Obj\FlashCheckSum.pbi - $PROJ_DIR$\..\Debug\Obj\FlashCommandSequence.pbi - $PROJ_DIR$\..\Debug\Obj\FlashEraseAllBlock.pbi - $PROJ_DIR$\..\Debug\Obj\CopyToRam.o - $PROJ_DIR$\..\Debug\Obj\DFlashGetProtection.o - $PROJ_DIR$\..\Debug\Obj\DEFlashPartition.o - $PROJ_DIR$\..\Debug\Obj\DFlashSetProtection.o - $PROJ_DIR$\..\Debug\Obj\EEEWrite.o - $PROJ_DIR$\..\Debug\Obj\EERAMGetProtection.o - $PROJ_DIR$\..\Debug\Obj\EERAMSetProtection.o - $PROJ_DIR$\..\Debug\Obj\FlashCheckSum.o - $PROJ_DIR$\..\Debug\Obj\FlashCommandSequence.o - $PROJ_DIR$\..\Debug\Obj\FlashEraseAllBlock.o - $PROJ_DIR$\..\Debug\Obj\FlashEraseBlock.o - $PROJ_DIR$\..\Debug\Obj\FlashEraseResume.o - $PROJ_DIR$\..\Debug\Obj\FlashEraseSector.o - $PROJ_DIR$\..\Debug\Obj\FlashEraseSuspend.o - $PROJ_DIR$\..\Debug\Obj\FlashVerifyBlock.pbi - $PROJ_DIR$\..\Debug\Obj\FlashEraseSector.pbi - $PROJ_DIR$\..\Debug\Obj\FlashEraseResume.pbi - $PROJ_DIR$\..\Debug\Obj\FlashEraseSuspend.pbi - $PROJ_DIR$\..\Debug\Obj\FlashGetSecurityState.pbi - $PROJ_DIR$\..\Debug\Obj\FlashInit.pbi - $PROJ_DIR$\..\src\drivers\dac.c - $PROJ_DIR$\..\src\drivers\dma.c - $PROJ_DIR$\..\src\drivers\gpio.c - $PROJ_DIR$\..\src\drivers\i2c.c - $PROJ_DIR$\..\src\drivers\lptmr.c - $PROJ_DIR$\..\src\drivers\mcg.c - $PROJ_DIR$\..\src\drivers\pit.c - $PROJ_DIR$\..\src\drivers\port.c - $PROJ_DIR$\..\src\drivers\rtc.c - $PROJ_DIR$\..\src\drivers\SPI.c - $PROJ_DIR$\..\src\drivers\systick.c - $PROJ_DIR$\..\src\drivers\tick_timer.c - $PROJ_DIR$\..\src\drivers\tpm.c - $PROJ_DIR$\..\src\drivers\tsi.c - $PROJ_DIR$\..\src\drivers\uart.c - $PROJ_DIR$\..\src\include\common\assert.h - $PROJ_DIR$\..\src\include\common\common.h - $PROJ_DIR$\..\src\include\common\io.h - $PROJ_DIR$\..\src\include\common\memtest.h - $PROJ_DIR$\..\src\include\common\queue.h - $PROJ_DIR$\..\src\include\common\startup.h - $PROJ_DIR$\..\src\include\common\stdlib.h - $PROJ_DIR$\..\src\include\common\typedef.h - $PROJ_DIR$\..\src\include\common\uif.h - $PROJ_DIR$\..\src\include\cpu\arm_cm0.h - $PROJ_DIR$\..\src\include\cpu\dma_channels.h - $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h - $PROJ_DIR$\..\src\include\cpu\sysinit.h - $PROJ_DIR$\..\src\include\cpu\vectors.h - $PROJ_DIR$\..\src\include\drivers\adc.h - $PROJ_DIR$\..\src\include\drivers\cmp.h - $PROJ_DIR$\..\src\include\drivers\dac.h - $PROJ_DIR$\..\src\include\drivers\dma.h - $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h - $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h - $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h - $PROJ_DIR$\..\src\include\drivers\gpio.h - $PROJ_DIR$\..\src\include\drivers\i2c.h - $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h - $PROJ_DIR$\..\src\include\drivers\include.h - $PROJ_DIR$\..\src\include\drivers\lptmr.h - $PROJ_DIR$\..\src\include\drivers\mcg.h - $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h - $PROJ_DIR$\..\src\include\drivers\pit.h - $PROJ_DIR$\..\src\include\drivers\port.h - $PROJ_DIR$\..\src\include\drivers\rtc.h - $PROJ_DIR$\..\src\include\drivers\SPI.h - $PROJ_DIR$\..\src\include\drivers\systick.h - $PROJ_DIR$\..\src\include\drivers\tick_timer.h - $PROJ_DIR$\..\src\include\drivers\tpm.h - $PROJ_DIR$\..\src\include\drivers\tsi.h - $PROJ_DIR$\..\src\include\drivers\uart.h - $PROJ_DIR$\..\src\include\platforms\freedom.h - $PROJ_DIR$\..\src\include\platforms\tower.h - $PROJ_DIR$\..\src\other\LandzoOLED.c - $PROJ_DIR$\..\src\other\LandzoOLED.h - $PROJ_DIR$\..\Debug\Obj\input.o - $PROJ_DIR$\..\Debug\Obj\debug.o - $PROJ_DIR$\..\Debug\Obj\simulat_timer.o - $PROJ_DIR$\..\Debug\Obj\display.o - $PROJ_DIR$\..\src\app\include\pm_flash_cfg.h - $PROJ_DIR$\..\src\app\include\pm_flash.h - - - [ROOT_NODE] - - - ILINK - 127 156 - - - - - $PROJ_DIR$\..\src\app\debug.c - - - BICOMP - 176 - - - ICCARM - 332 - - - - - BICOMP - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 1 0 - - - ICCARM - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 1 0 - - - - - $PROJ_DIR$\..\src\app\display.c - - - BICOMP - 177 - - - ICCARM - 334 - - - - - $PROJ_DIR$\..\src\app\flash.c - - - BICOMP - 229 - - - ICCARM - 161 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 335 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 335 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\app\input.c - - - BICOMP - 231 - - - ICCARM - 331 - - - - - $PROJ_DIR$\..\src\app\isr.c - - - BICOMP - 234 - - - ICCARM - 169 - - - - - BICOMP - 203 108 204 200 124 211 172 173 174 175 314 291 301 123 290 292 293 294 114 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 5 12 1 0 7 - - - ICCARM - 203 108 204 200 124 211 172 173 174 175 314 291 301 123 290 292 293 294 114 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 5 12 1 0 7 - - - - - $PROJ_DIR$\..\src\app\key.c - - - BICOMP - 233 - - - ICCARM - 168 - - - - - BICOMP - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 6 0 - - - ICCARM - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 6 0 - - - - - $PROJ_DIR$\..\src\app\knob.c - - - BICOMP - 120 - - - ICCARM - 167 - - - - - BICOMP - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 7 0 - - - ICCARM - 123 108 204 200 124 211 172 173 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 7 0 - - - - - $PROJ_DIR$\..\src\app\main.c - - - BICOMP - 223 - - - ICCARM - 227 - - - - - BICOMP - 203 108 204 200 124 211 172 173 174 175 114 291 301 123 290 292 293 294 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 183 12 6 7 13 0 10 9 336 - - - ICCARM - 203 108 204 200 124 211 172 173 174 175 114 291 301 123 290 292 293 294 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 183 12 6 7 13 0 10 9 336 - - - - - $PROJ_DIR$\..\src\app\NormalDemo_Flash.c - - - BICOMP - 195 - - - ICCARM - 202 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 240 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 240 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\app\output.c - - - BICOMP - 112 - - - ICCARM - 238 - - - - - $PROJ_DIR$\..\src\app\plan_handle.c - - - BICOMP - 170 - - - ICCARM - 104 - - - - - BICOMP - 123 108 204 200 124 211 172 173 311 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 9 10 13 0 - - - ICCARM - 123 108 204 200 124 211 172 173 311 314 291 301 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 9 10 13 0 - - - - - $PROJ_DIR$\..\src\app\pm_init.c - - - BICOMP - 182 - - - ICCARM - 181 - - - - - BICOMP - 12 123 108 204 200 124 211 172 173 6 7 299 303 1 13 0 10 9 336 - - - ICCARM - 12 123 108 204 200 124 211 172 173 6 7 299 303 1 13 0 10 9 336 - - - - - $PROJ_DIR$\..\src\app\pm_time.c - - - BICOMP - 219 - - - ICCARM - 230 - - - - - BICOMP - 311 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 10 0 - - - ICCARM - 311 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 10 0 - - - - - $PROJ_DIR$\..\src\app\simulat_timer.c - - - BICOMP - 171 - - - ICCARM - 333 - - - - - BICOMP - 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 12 0 6 - - - ICCARM - 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 12 0 6 - - - - - $PROJ_DIR$\..\src\app\tft.c - - - BICOMP - 110 - - - ICCARM - 105 - - - - - BICOMP - 123 108 204 200 124 211 172 173 148 174 149 203 175 326 291 301 290 292 293 294 114 298 297 327 316 309 299 303 295 302 310 319 314 311 312 313 304 315 318 324 307 308 13 7 6 0 10 9 - - - ICCARM - 123 108 204 200 124 211 172 173 148 174 149 203 175 326 291 301 290 292 293 294 114 298 297 327 316 309 299 303 295 302 310 319 314 311 312 313 304 315 318 324 307 308 13 7 6 0 10 9 - - - - - $PROJ_DIR$\..\src\common\alloc.c - - - BICOMP - 117 - - - ICCARM - 217 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\assert.c - - - BICOMP - 122 - - - ICCARM - 126 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\common.c - - - BICOMP - 147 - - - ICCARM - 125 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\io.c - - - BICOMP - 144 - - - ICCARM - 115 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\memtest.c - - - BICOMP - 146 - - - ICCARM - 121 - - - - - BICOMP - 293 - - - ICCARM - 293 - - - - - $PROJ_DIR$\..\src\common\printf.c - - - BICOMP - 107 - - - ICCARM - 119 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 186 148 149 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 148 149 - - - - - $PROJ_DIR$\..\src\common\queue.c - - - BICOMP - 129 - - - ICCARM - 113 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\startup.c - - - BICOMP - 178 - - - ICCARM - 109 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\common\uif.c - - - BICOMP - 132 - - - ICCARM - 145 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 148 149 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 148 149 - - - - - $PROJ_DIR$\..\src\cpu\arm_cm0.c - - - BICOMP - 205 - - - ICCARM - 140 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\cpu\crt0.s - - - AARM - 208 - - - - - $PROJ_DIR$\..\src\cpu\start.c - - - BICOMP - 207 - - - ICCARM - 137 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\cpu\sysinit.c - - - BICOMP - 206 - - - ICCARM - 210 - - - - - BICOMP - 302 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 302 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\cpu\vectors.c - - - BICOMP - 209 - - - ICCARM - 143 - - - - - BICOMP - 303 5 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 303 5 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c - - - BICOMP - 244 - - - ICCARM - 255 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c - - - BICOMP - 245 - - - ICCARM - 257 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c - - - BICOMP - 250 - - - ICCARM - 260 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c - - - BICOMP - 247 - - - ICCARM - 256 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c - - - BICOMP - 248 - - - ICCARM - 258 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c - - - BICOMP - 249 - - - ICCARM - 259 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c - - - BICOMP - 253 - - - ICCARM - 263 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c - - - BICOMP - 251 - - - ICCARM - 261 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c - - - BICOMP - 252 - - - ICCARM - 262 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c - - - BICOMP - 271 - - - ICCARM - 266 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c - - - BICOMP - 254 - - - ICCARM - 264 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c - - - BICOMP - 246 - - - ICCARM - 265 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c - - - BICOMP - 76 - - - ICCARM - 86 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c - - - BICOMP - 270 - - - ICCARM - 267 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c - - - BICOMP - 272 - - - ICCARM - 268 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c - - - BICOMP - 274 - - - ICCARM - 85 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c - - - BICOMP - 273 - - - ICCARM - 84 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c - - - BICOMP - 77 - - - ICCARM - 87 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c - - - BICOMP - 81 - - - ICCARM - 91 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c - - - BICOMP - 78 - - - ICCARM - 88 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c - - - BICOMP - 79 - - - ICCARM - 89 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c - - - BICOMP - 80 - - - ICCARM - 90 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c - - - BICOMP - 102 - - - ICCARM - 242 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c - - - BICOMP - 82 - - - ICCARM - 92 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c - - - BICOMP - 83 - - - ICCARM - 93 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c - - - BICOMP - 269 - - - ICCARM - 94 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c - - - BICOMP - 98 - - - ICCARM - 95 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c - - - BICOMP - 99 - - - ICCARM - 96 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c - - - BICOMP - 100 - - - ICCARM - 97 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c - - - BICOMP - 101 - - - ICCARM - 241 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c - - - BICOMP - 103 - - - ICCARM - 243 - - - - - BICOMP - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - ICCARM - 199 196 201 194 123 108 204 200 124 211 172 173 197 198 - - - - - $PROJ_DIR$\..\src\drivers\adc.c - - - BICOMP - 141 - - - ICCARM - 165 - - - - - BICOMP - 304 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 315 318 324 307 - - - ICCARM - 304 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 315 318 324 307 - - - - - $PROJ_DIR$\..\src\drivers\cmp.c - - - BICOMP - 139 - - - ICCARM - 164 - - - - - BICOMP - 305 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 305 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\app\time.c - - - BICOMP - 128 - - - ICCARM - 106 - - - - - BICOMP - 159 108 204 200 124 211 172 173 174 - - - ICCARM - 159 108 204 200 124 211 172 173 174 - - - - - $PROJ_DIR$\..\Debug\Exe\plan_manage_main.out - - - ILINK - 156 - - - - - ILINK - 213 165 217 140 126 164 125 255 208 163 332 257 256 258 334 160 259 260 261 161 262 263 264 265 266 267 268 84 85 86 87 88 89 90 91 92 93 94 95 236 225 331 115 169 168 167 218 227 237 121 238 96 97 241 242 222 104 181 230 226 119 113 221 243 333 150 137 109 210 151 105 135 133 134 142 145 143 215 180 212 214 - - - - - $PROJ_DIR$\..\src\app\getzone.c - - - BICOMP - 153 - - - ICCARM - 228 - - - - - BICOMP - 157 174 108 204 200 124 211 172 173 - - - ICCARM - 157 174 108 204 200 124 211 172 173 - - - - - $PROJ_DIR$\..\src\app\time64.c - - - BICOMP - 235 - - - ICCARM - 152 - - - - - BICOMP - 159 108 204 200 124 211 172 173 174 - - - ICCARM - 159 108 204 200 124 211 172 173 174 - - - - - $PROJ_DIR$\..\src\app\clock.c - - - BICOMP - 224 - - - ICCARM - 239 - - - - - BICOMP - 159 108 204 200 124 211 172 173 174 - - - ICCARM - 159 108 204 200 124 211 172 173 174 - - - - - $PROJ_DIR$\..\src\common\stdlib.c - - - BICOMP - 179 - - - ICCARM - 116 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 296 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 296 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\dac.c - - - BICOMP - 138 - - - ICCARM - 163 - - - - - BICOMP - 306 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 306 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\dma.c - - - BICOMP - 136 - - - ICCARM - 160 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\gpio.c - - - BICOMP - 185 - - - ICCARM - 236 - - - - - BICOMP - 311 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 - - - ICCARM - 311 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 326 312 313 304 315 318 324 307 - - - - - $PROJ_DIR$\..\src\drivers\i2c.c - - - BICOMP - 130 - - - ICCARM - 225 - - - - - BICOMP - 312 313 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 304 315 318 324 307 - - - ICCARM - 312 313 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 304 315 318 324 307 - - - - - $PROJ_DIR$\..\src\drivers\lptmr.c - - - BICOMP - 187 - - - ICCARM - 218 - - - - - BICOMP - 315 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 318 324 307 - - - ICCARM - 315 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 318 324 307 - - - - - $PROJ_DIR$\..\src\drivers\mcg.c - - - BICOMP - 131 - - - ICCARM - 237 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 317 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 317 - - - - - $PROJ_DIR$\..\src\drivers\pit.c - - - BICOMP - 184 - - - ICCARM - 222 - - - - - BICOMP - 318 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 324 307 308 - - - ICCARM - 318 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\port.c - - - BICOMP - 188 - - - ICCARM - 226 - - - - - BICOMP - 319 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 308 311 326 312 313 304 315 318 324 307 - - - ICCARM - 319 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 308 311 326 312 313 304 315 318 324 307 - - - - - $PROJ_DIR$\..\src\drivers\rtc.c - - - BICOMP - 189 - - - ICCARM - 221 - - - - - BICOMP - 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 320 - - - ICCARM - 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 320 - - - - - $PROJ_DIR$\..\src\drivers\SPI.c - - - BICOMP - 190 - - - ICCARM - 150 - - - - - BICOMP - 321 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 321 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\systick.c - - - BICOMP - 191 - - - ICCARM - 151 - - - - - BICOMP - 322 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 322 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\tick_timer.c - - - BICOMP - 192 - - - ICCARM - 135 - - - - - BICOMP - 323 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 322 - - - ICCARM - 323 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 322 - - - - - $PROJ_DIR$\..\src\drivers\tpm.c - - - BICOMP - 193 - - - ICCARM - 133 - - - - - BICOMP - 324 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 307 - - - ICCARM - 324 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 307 - - - - - $PROJ_DIR$\..\src\drivers\tsi.c - - - BICOMP - 166 - - - ICCARM - 134 - - - - - BICOMP - 325 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 325 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\drivers\uart.c - - - BICOMP - 162 - - - ICCARM - 142 - - - - - BICOMP - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - ICCARM - 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 314 311 326 312 313 304 315 318 324 307 308 - - - - - $PROJ_DIR$\..\src\other\LandzoOLED.c - - - BICOMP - 216 - - - ICCARM - 220 - - - - - BICOMP - 330 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 - - - ICCARM - 330 314 291 301 123 108 204 200 124 211 172 173 290 292 293 294 114 174 298 297 327 316 309 299 303 295 302 310 319 308 311 326 312 313 304 315 318 324 307 - - - - - - Release - - - [MULTI_TOOL] - ILINK - - - - - + + + + 2 + 72876977 + + Debug + + $PROJ_DIR$\..\src\app\include\config.h + $PROJ_DIR$\..\src\app\include\debug.h + $PROJ_DIR$\..\src\app\include\isr.h + $PROJ_DIR$\..\src\app\include\key.h + $PROJ_DIR$\..\src\app\include\knob.h + $PROJ_DIR$\..\src\app\include\output.h + $PROJ_DIR$\..\src\app\include\plan_handle.h + $PROJ_DIR$\..\src\app\include\pm_flash.h + $PROJ_DIR$\..\src\app\include\pm_flash_cfg.h + $PROJ_DIR$\..\src\app\include\pm_init.h + $PROJ_DIR$\..\src\app\include\pm_time.h + $PROJ_DIR$\..\src\app\include\setup.h + $PROJ_DIR$\..\src\app\include\simulat_timer.h + $PROJ_DIR$\..\src\app\include\tft.h + $PROJ_DIR$\..\src\app\include\tft_plan_internal.h + $PROJ_DIR$\..\src\app\include\water.h + $PROJ_DIR$\..\src\app\debug.c + $PROJ_DIR$\..\src\app\isr.c + $PROJ_DIR$\..\src\app\key.c + $PROJ_DIR$\..\src\app\knob.c + $PROJ_DIR$\..\src\app\main.c + $PROJ_DIR$\..\src\app\orient.c + $PROJ_DIR$\..\src\app\output.c + $PROJ_DIR$\..\src\app\plan_handle.c + $PROJ_DIR$\..\src\app\pm_flash.c + $PROJ_DIR$\..\src\app\pm_init.c + $PROJ_DIR$\..\src\app\pm_time.c + $PROJ_DIR$\..\src\app\simulat_timer.c + $PROJ_DIR$\..\src\app\tft.c + $PROJ_DIR$\..\src\app\water.c + $PROJ_DIR$\..\src\common\alloc.c + $PROJ_DIR$\..\src\common\assert.c + $PROJ_DIR$\..\src\common\common.c + $PROJ_DIR$\..\src\common\io.c + $PROJ_DIR$\..\src\common\memtest.c + $PROJ_DIR$\..\src\common\printf.c + $PROJ_DIR$\..\src\common\queue.c + $PROJ_DIR$\..\src\common\startup.c + $PROJ_DIR$\..\src\common\uif.c + $PROJ_DIR$\..\src\cpu\arm_cm0.c + $PROJ_DIR$\..\src\cpu\crt0.s + $PROJ_DIR$\..\src\cpu\start.c + $PROJ_DIR$\..\src\cpu\sysinit.c + $PROJ_DIR$\..\src\cpu\vectors.c + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + $PROJ_DIR$\..\src\drivers\adc.c + $PROJ_DIR$\..\src\drivers\cmp.c + $PROJ_DIR$\..\src\drivers\dac.c + $PROJ_DIR$\..\src\drivers\dma.c + $PROJ_DIR$\..\src\drivers\gpio.c + $PROJ_DIR$\..\src\drivers\i2c.c + $PROJ_DIR$\..\src\drivers\lptmr.c + $PROJ_DIR$\..\src\drivers\mcg.c + $PROJ_DIR$\..\src\drivers\pit.c + $PROJ_DIR$\..\out\Debug\Obj\uif.o + $PROJ_DIR$\..\out\Debug\Obj\arm_cm0.o + $PROJ_DIR$\..\out\Debug\Obj\start.o + $PROJ_DIR$\..\out\Debug\Obj\sysinit.o + $PROJ_DIR$\..\out\Debug\Obj\vectors.o + $PROJ_DIR$\..\out\Debug\Obj\CopyToRam.o + $PROJ_DIR$\..\out\Debug\List\plan_manage_main.map + $PROJ_DIR$\..\Debug\Obj\PFlashGetProtection.o + $PROJ_DIR$\..\Debug\Obj\FlashVerifySection.o + $PROJ_DIR$\..\Debug\Obj\FlashReadOnce.o + $PROJ_DIR$\..\Debug\Obj\startup.o + $TOOLKIT_DIR$\inc\c\ycheck.h + $PROJ_DIR$\..\src\app\time.c + $PROJ_DIR$\..\Debug\Obj\FlashProgramSection.o + $PROJ_DIR$\..\Debug\Obj\tsi.o + $PROJ_DIR$\..\Debug\Obj\tpm.o + $PROJ_DIR$\..\Debug\Obj\tft.o + $PROJ_DIR$\..\Debug\Obj\plan_handle.o + $PROJ_DIR$\..\src\app\NormalDemo_Flash.c + $PROJ_DIR$\..\Debug\Obj\key.o + $PROJ_DIR$\..\Debug\Obj\knob.o + $TOOLKIT_DIR$\inc\c\stdarg.h + $PROJ_DIR$\..\Debug\Obj\port.o + $PROJ_DIR$\..\src\include\drivers\FTFx\user_cfg.h + $TOOLKIT_DIR$\lib\dl6M_tln.a + $PROJ_DIR$\..\Debug\Obj\cmp.o + $PROJ_DIR$\..\Debug\Obj\main.o + $TOOLKIT_DIR$\lib\rt6M_tl.a + $PROJ_DIR$\..\Debug\Obj\rtc.o + $PROJ_DIR$\..\Debug\Obj\dac.o + $TOOLKIT_DIR$\inc\c\stdio.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_Types.h + $TOOLKIT_DIR$\inc\c\yvals.h + $PROJ_DIR$\..\Debug\Obj\pm_init.o + $PROJ_DIR$\..\Debug\Obj\sysinit.o + $TOOLKIT_DIR$\lib\m6M_tl.a + $PROJ_DIR$\..\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h + $PROJ_DIR$\..\Debug\Obj\pm_time.o + $PROJ_DIR$\..\Debug\Obj\lptmr.o + $PROJ_DIR$\..\Debug\Obj\assert.o + $PROJ_DIR$\..\Debug\Obj\alloc.o + $TOOLKIT_DIR$\inc\c\stdint.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Common.h + $TOOLKIT_DIR$\inc\c\ysizet.h + $PROJ_DIR$\..\src\include\drivers\FTFx\demo_cfg.h + $TOOLKIT_DIR$\inc\c\DLib_Config_Normal.h + $PROJ_DIR$\..\Debug\Obj\EERAMSetProtection.o + $PROJ_DIR$\..\Debug\Obj\EERAMGetProtection.o + $PROJ_DIR$\..\Debug\Obj\DFlashSetProtection.o + $TOOLKIT_DIR$\lib\shb_l.a + $PROJ_DIR$\..\Debug\Obj\adc.o + $PROJ_DIR$\..\Debug\Obj\i2c.o + $PROJ_DIR$\..\Debug\Obj\pit.o + $PROJ_DIR$\..\Debug\Obj\pm_flash.o + $PROJ_DIR$\..\src\common\stdlib.c + $PROJ_DIR$\..\Debug\Obj\mcg.o + $PROJ_DIR$\..\Debug\Obj\gpio.o + $PROJ_DIR$\..\Debug\Obj\simulat_timer.o + $PROJ_DIR$\..\Debug\Obj\debug.o + $PROJ_DIR$\..\config_files\128KB_Pflash.icf + $PROJ_DIR$\..\Debug\Obj\water.o + $PROJ_DIR$\..\Debug\Obj\FlashProgram.o + $PROJ_DIR$\..\Debug\Obj\FlashProgramOnce.o + $PROJ_DIR$\..\src\app\include\orient.h + $TOOLKIT_DIR$\inc\c\DLib_Defaults.h + $PROJ_DIR$\..\Debug\Obj\FlashProgramCheck.o + $TOOLKIT_DIR$\inc\c\xencoding_limits.h + $TOOLKIT_DIR$\inc\c\ystdio.h + $PROJ_DIR$\..\src\app\flash.c + $PROJ_DIR$\..\Debug\Obj\FlashGetSecurityState.o + $PROJ_DIR$\..\Debug\Obj\PFlashSetProtection.o + $TOOLKIT_DIR$\inc\c\stdlib.h + $PROJ_DIR$\..\Debug\Obj\queue.o + $PROJ_DIR$\..\Debug\Obj\FlashVerifyAllBlock.o + $PROJ_DIR$\..\Debug\Obj\PFlashSwapCtl.o + $PROJ_DIR$\..\Debug\Obj\SetEEEEnable.o + $PROJ_DIR$\..\Debug\Obj\FlashReadResource.o + $PROJ_DIR$\..\out\Debug\Obj\FlashInit.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashProgram.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramCheck.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramOnce.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramSection.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashReadOnce.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashReadResource.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashSecurityBypass.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifyAllBlock.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifyBlock.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifySection.pbi + $PROJ_DIR$\..\out\Debug\Obj\PFlashGetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\PFlashSetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\PFlashSwap.pbi + $PROJ_DIR$\..\out\Debug\Obj\PFlashSwapCtl.pbi + $PROJ_DIR$\..\out\Debug\Obj\SetEEEEnable.pbi + $PROJ_DIR$\..\out\Debug\Obj\adc.pbi + $PROJ_DIR$\..\out\Debug\Obj\cmp.pbi + $PROJ_DIR$\..\out\Debug\Obj\dac.pbi + $PROJ_DIR$\..\out\Debug\Obj\dma.pbi + $PROJ_DIR$\..\out\Debug\Obj\gpio.pbi + $PROJ_DIR$\..\out\Debug\Obj\i2c.pbi + $PROJ_DIR$\..\out\Debug\Obj\lptmr.pbi + $PROJ_DIR$\..\out\Debug\Obj\mcg.pbi + $PROJ_DIR$\..\out\Debug\Obj\pit.pbi + $PROJ_DIR$\..\out\Debug\Obj\rtc.pbi + $PROJ_DIR$\..\out\Debug\Obj\SPI.pbi + $PROJ_DIR$\..\out\Debug\Obj\systick.pbi + $PROJ_DIR$\..\out\Debug\Obj\tick_timer.pbi + $PROJ_DIR$\..\out\Debug\Obj\tpm.pbi + $PROJ_DIR$\..\out\Debug\Obj\tsi.pbi + $PROJ_DIR$\..\out\Debug\Obj\uart.pbi + $PROJ_DIR$\..\out\Debug\Exe\plan_manage_main.out + $PROJ_DIR$\..\out\Debug\Obj\plan_manage_main.pbd + $PROJ_DIR$\..\out\Debug\Obj\pm_time.pbi + $PROJ_DIR$\..\out\Debug\Obj\simulat_timer.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseResume.pbi + $PROJ_DIR$\..\out\Debug\Obj\tft.pbi + $PROJ_DIR$\..\out\Debug\Obj\water.pbi + $PROJ_DIR$\..\out\Debug\Obj\alloc.pbi + $PROJ_DIR$\..\out\Debug\Obj\assert.pbi + $PROJ_DIR$\..\out\Debug\Obj\common.pbi + $PROJ_DIR$\..\out\Debug\Obj\io.pbi + $PROJ_DIR$\..\out\Debug\Obj\memtest.pbi + $PROJ_DIR$\..\out\Debug\Obj\printf.pbi + $PROJ_DIR$\..\out\Debug\Obj\queue.pbi + $PROJ_DIR$\..\out\Debug\Obj\startup.pbi + $PROJ_DIR$\..\out\Debug\Obj\uif.pbi + $PROJ_DIR$\..\out\Debug\Obj\arm_cm0.pbi + $PROJ_DIR$\..\out\Debug\Obj\start.pbi + $PROJ_DIR$\..\out\Debug\Obj\sysinit.pbi + $PROJ_DIR$\..\out\Debug\Obj\vectors.pbi + $PROJ_DIR$\..\out\Debug\Obj\CopyToRam.pbi + $PROJ_DIR$\..\out\Debug\Obj\DEFlashPartition.pbi + $PROJ_DIR$\..\out\Debug\Obj\DFlashGetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\DFlashSetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\EEEWrite.pbi + $PROJ_DIR$\..\out\Debug\Obj\EERAMGetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\EERAMSetProtection.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashCheckSum.pbi + $PROJ_DIR$\..\Debug\Obj\EEEWrite.o + $PROJ_DIR$\..\Debug\Obj\FlashEraseBlock.o + $PROJ_DIR$\..\Debug\Obj\FlashEraseResume.o + $PROJ_DIR$\..\Debug\Obj\FlashEraseAllBlock.o + $PROJ_DIR$\..\Debug\Obj\FlashCommandSequence.o + $PROJ_DIR$\..\Debug\Obj\FlashCheckSum.o + $PROJ_DIR$\..\Debug\Obj\FlashSecurityBypass.o + $PROJ_DIR$\..\Debug\Obj\FlashVerifyBlock.o + $PROJ_DIR$\..\Debug\Obj\tick_timer.o + $PROJ_DIR$\..\Debug\Exe\plan_manage_main.out + $PROJ_DIR$\..\Debug\Obj\DFlashGetProtection.o + $PROJ_DIR$\..\Debug\Obj\CopyToRam.o + $TOOLKIT_DIR$\inc\c\DLib_Product.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx.h + $TOOLKIT_DIR$\inc\c\time.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Internal.h + $PROJ_DIR$\..\Debug\Obj\dma.o + $PROJ_DIR$\..\Debug\Obj\crt0.o + $PROJ_DIR$\..\src\app\clock.c + $TOOLKIT_DIR$\inc\c\yfuns.h + $PROJ_DIR$\..\Debug\Obj\DEFlashPartition.o + $PROJ_DIR$\..\src\app\time64.c + $PROJ_DIR$\..\src\app\getzone.c + $PROJ_DIR$\..\Debug\Obj\SPI.o + $TOOLKIT_DIR$\inc\c\string.h + $TOOLKIT_DIR$\inc\c\DLib_Product_string.h + $PROJ_DIR$\..\Debug\Obj\systick.o + $PROJ_DIR$\..\Debug\Obj\uif.o + $PROJ_DIR$\..\Debug\Obj\output.o + $PROJ_DIR$\..\Debug\Obj\FlashInit.o + $PROJ_DIR$\..\Debug\Obj\PFlashSwap.o + $TOOLKIT_DIR$\inc\c\DLib_Threads.h + $PROJ_DIR$\..\Debug\Obj\isr.o + $PROJ_DIR$\..\out\Debug\Obj\DEFlashPartition.o + $PROJ_DIR$\..\out\Debug\Obj\DFlashGetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\DFlashSetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\EEEWrite.o + $PROJ_DIR$\..\out\Debug\Obj\EERAMGetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\EERAMSetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\FlashCheckSum.o + $PROJ_DIR$\..\out\Debug\Obj\FlashCommandSequence.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseAllBlock.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseBlock.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseResume.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseSector.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseSuspend.o + $PROJ_DIR$\..\out\Debug\Obj\FlashGetSecurityState.o + $PROJ_DIR$\..\out\Debug\Obj\FlashInit.o + $PROJ_DIR$\..\out\Debug\Obj\FlashProgram.o + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramCheck.o + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramOnce.o + $PROJ_DIR$\..\out\Debug\Obj\FlashProgramSection.o + $PROJ_DIR$\..\out\Debug\Obj\FlashReadOnce.o + $PROJ_DIR$\..\out\Debug\Obj\FlashReadResource.o + $PROJ_DIR$\..\out\Debug\Obj\FlashSecurityBypass.o + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifyAllBlock.o + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifyBlock.o + $PROJ_DIR$\..\out\Debug\Obj\FlashVerifySection.o + $PROJ_DIR$\..\out\Debug\Obj\PFlashGetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\PFlashSetProtection.o + $PROJ_DIR$\..\out\Debug\Obj\PFlashSwap.o + $PROJ_DIR$\..\out\Debug\Obj\PFlashSwapCtl.o + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseSector.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseSuspend.pbi + $PROJ_DIR$\..\out\Debug\Obj\port.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashGetSecurityState.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashCommandSequence.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseAllBlock.pbi + $PROJ_DIR$\..\out\Debug\Obj\FlashEraseBlock.pbi + $PROJ_DIR$\..\out\Debug\Obj\SetEEEEnable.o + $PROJ_DIR$\..\out\Debug\Obj\adc.o + $PROJ_DIR$\..\out\Debug\Obj\cmp.o + $PROJ_DIR$\..\out\Debug\Obj\dac.o + $PROJ_DIR$\..\out\Debug\Obj\dma.o + $PROJ_DIR$\..\out\Debug\Obj\gpio.o + $PROJ_DIR$\..\out\Debug\Obj\i2c.o + $PROJ_DIR$\..\out\Debug\Obj\lptmr.o + $PROJ_DIR$\..\out\Debug\Obj\mcg.o + $PROJ_DIR$\..\out\Debug\Obj\pit.o + $PROJ_DIR$\..\out\Debug\Obj\port.o + $PROJ_DIR$\..\out\Debug\Obj\rtc.o + $PROJ_DIR$\..\out\Debug\Obj\SPI.o + $PROJ_DIR$\..\out\Debug\Obj\systick.o + $PROJ_DIR$\..\out\Debug\Obj\tick_timer.o + $PROJ_DIR$\..\out\Debug\Obj\tpm.o + $PROJ_DIR$\..\out\Debug\Obj\tsi.o + $PROJ_DIR$\..\out\Debug\Obj\uart.o + $PROJ_DIR$\..\out\Debug\Obj\crt0.o + $PROJ_DIR$\..\out\Debug\Obj\debug.pbi + $PROJ_DIR$\..\out\Debug\Obj\pm_init.pbi + $PROJ_DIR$\..\out\Debug\Obj\isr.pbi + $PROJ_DIR$\..\out\Debug\Obj\key.pbi + $PROJ_DIR$\..\out\Debug\Obj\knob.pbi + $PROJ_DIR$\..\out\Debug\Obj\main.pbi + $PROJ_DIR$\..\out\Debug\Obj\orient.pbi + $PROJ_DIR$\..\out\Debug\Obj\output.pbi + $PROJ_DIR$\..\out\Debug\Obj\plan_handle.pbi + $PROJ_DIR$\..\out\Debug\Obj\pm_flash.pbi + $PROJ_DIR$\..\out\Debug\Obj\debug.o + $PROJ_DIR$\..\out\Debug\Obj\key.o + $PROJ_DIR$\..\out\Debug\Obj\isr.o + $PROJ_DIR$\..\out\Debug\Obj\knob.o + $PROJ_DIR$\..\out\Debug\Obj\main.o + $PROJ_DIR$\..\out\Debug\Obj\orient.o + $PROJ_DIR$\..\out\Debug\Obj\output.o + $PROJ_DIR$\..\out\Debug\Obj\plan_handle.o + $PROJ_DIR$\..\out\Debug\Obj\pm_flash.o + $PROJ_DIR$\..\out\Debug\Obj\pm_init.o + $PROJ_DIR$\..\out\Debug\Obj\pm_time.o + $PROJ_DIR$\..\out\Debug\Obj\simulat_timer.o + $PROJ_DIR$\..\out\Debug\Obj\tft.o + $PROJ_DIR$\..\out\Debug\Obj\water.o + $PROJ_DIR$\..\out\Debug\Obj\alloc.o + $PROJ_DIR$\..\out\Debug\Obj\assert.o + $PROJ_DIR$\..\out\Debug\Obj\common.o + $PROJ_DIR$\..\out\Debug\Obj\io.o + $PROJ_DIR$\..\out\Debug\Obj\memtest.o + $PROJ_DIR$\..\out\Debug\Obj\printf.o + $PROJ_DIR$\..\out\Debug\Obj\queue.o + $PROJ_DIR$\..\out\Debug\Obj\startup.o + $PROJ_DIR$\..\src\drivers\port.c + $PROJ_DIR$\..\src\drivers\rtc.c + $PROJ_DIR$\..\src\drivers\SPI.c + $PROJ_DIR$\..\src\drivers\systick.c + $PROJ_DIR$\..\src\drivers\tick_timer.c + $PROJ_DIR$\..\src\drivers\tpm.c + $PROJ_DIR$\..\src\drivers\tsi.c + $PROJ_DIR$\..\src\drivers\uart.c + $PROJ_DIR$\..\src\include\common\assert.h + $PROJ_DIR$\..\src\include\common\common.h + $PROJ_DIR$\..\src\include\common\io.h + $PROJ_DIR$\..\src\include\common\memtest.h + $PROJ_DIR$\..\src\include\common\queue.h + $PROJ_DIR$\..\src\include\common\startup.h + $PROJ_DIR$\..\src\include\common\stdlib.h + $PROJ_DIR$\..\src\include\common\typedef.h + $PROJ_DIR$\..\src\include\common\uif.h + $PROJ_DIR$\..\src\include\cpu\arm_cm0.h + $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h + $PROJ_DIR$\..\src\include\cpu\sysinit.h + $PROJ_DIR$\..\src\include\cpu\vectors.h + $PROJ_DIR$\..\src\include\drivers\adc.h + $PROJ_DIR$\..\src\include\drivers\cmp.h + $PROJ_DIR$\..\src\include\drivers\dac.h + $PROJ_DIR$\..\src\include\drivers\dma.h + $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h + $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h + $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h + $PROJ_DIR$\..\src\include\drivers\gpio.h + $PROJ_DIR$\..\src\include\drivers\i2c.h + $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h + $PROJ_DIR$\..\src\include\drivers\include.h + $PROJ_DIR$\..\src\include\drivers\lptmr.h + $PROJ_DIR$\..\src\include\drivers\mcg.h + $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h + $PROJ_DIR$\..\src\include\drivers\pit.h + $PROJ_DIR$\..\src\include\drivers\port.h + $PROJ_DIR$\..\src\include\drivers\rtc.h + $PROJ_DIR$\..\src\include\drivers\SPI.h + $PROJ_DIR$\..\src\include\drivers\systick.h + $PROJ_DIR$\..\src\include\drivers\tick_timer.h + $PROJ_DIR$\..\src\include\drivers\tpm.h + $PROJ_DIR$\..\src\include\drivers\tsi.h + $PROJ_DIR$\..\src\include\drivers\uart.h + $PROJ_DIR$\..\src\include\platforms\freedom.h + $PROJ_DIR$\..\src\other\LandzoOLED.c + $PROJ_DIR$\..\src\other\LandzoOLED.h + $PROJ_DIR$\..\Debug\Obj\memtest.o + $PROJ_DIR$\..\Debug\Obj\common.o + $PROJ_DIR$\..\Debug\Obj\printf.o + $PROJ_DIR$\..\Debug\Obj\FlashEraseSector.o + $PROJ_DIR$\..\Debug\Obj\start.o + $PROJ_DIR$\..\Debug\Obj\arm_cm0.o + $PROJ_DIR$\..\Debug\Obj\FlashEraseSuspend.o + $PROJ_DIR$\..\Debug\Obj\uart.o + $PROJ_DIR$\..\Debug\Obj\io.o + $PROJ_DIR$\..\Debug\Obj\orient.o + $PROJ_DIR$\..\Debug\Obj\vectors.o + + + [ROOT_NODE] + + + ILINK + 193 90 + + + + + $PROJ_DIR$\..\src\app\debug.c + + + BICOMP + 309 + + + ICCARM + 319 + + + + + BICOMP + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 1 0 + + + ICCARM + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 1 0 + + + + + $PROJ_DIR$\..\src\app\isr.c + + + BICOMP + 311 + + + ICCARM + 321 + + + + + BICOMP + 114 95 116 148 129 233 150 252 127 151 372 350 359 125 349 351 352 353 155 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 2 12 1 0 4 + + + ICCARM + 114 95 116 148 129 233 150 252 127 151 372 350 359 125 349 351 352 353 155 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 2 12 1 0 4 + + + + + $PROJ_DIR$\..\src\app\key.c + + + BICOMP + 312 + + + ICCARM + 320 + + + + + BICOMP + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 3 0 + + + ICCARM + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 3 0 + + + + + $PROJ_DIR$\..\src\app\knob.c + + + BICOMP + 313 + + + ICCARM + 322 + + + + + BICOMP + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 0 4 + + + ICCARM + 125 95 116 148 129 233 150 252 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 0 4 + + + + + $PROJ_DIR$\..\src\app\main.c + + + BICOMP + 314 + + + ICCARM + 323 + + + + + BICOMP + 114 95 116 148 129 233 150 252 127 151 155 350 359 125 349 351 352 353 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 9 12 3 4 13 0 10 6 7 147 + + + ICCARM + 114 95 116 148 129 233 150 252 127 151 155 350 359 125 349 351 352 353 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 9 12 3 4 13 0 10 6 7 147 + + + + + $PROJ_DIR$\..\src\app\orient.c + + + BICOMP + 315 + + + ICCARM + 324 + + + + + BICOMP + 384 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 370 371 362 373 376 382 365 366 147 0 + + + ICCARM + 384 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 370 371 362 373 376 382 365 366 147 0 + + + + + $PROJ_DIR$\..\src\app\output.c + + + BICOMP + 316 + + + ICCARM + 325 + + + + + $PROJ_DIR$\..\src\app\plan_handle.c + + + BICOMP + 317 + + + ICCARM + 326 + + + + + BICOMP + 125 95 116 148 129 233 150 252 369 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 14 6 13 0 7 147 3 + + + ICCARM + 125 95 116 148 129 233 150 252 369 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 14 10 6 13 0 7 147 3 + + + + + $PROJ_DIR$\..\src\app\pm_flash.c + + + BICOMP + 318 + + + ICCARM + 327 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 8 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 8 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\app\pm_init.c + + + BICOMP + 310 + + + ICCARM + 328 + + + + + BICOMP + 12 125 95 116 148 129 233 150 252 3 4 1 13 0 10 6 7 147 + + + ICCARM + 12 125 95 116 148 129 233 150 252 3 4 1 13 0 10 6 7 147 + + + + + $PROJ_DIR$\..\src\app\pm_time.c + + + BICOMP + 195 + + + ICCARM + 329 + + + + + BICOMP + 369 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 10 0 + + + ICCARM + 369 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 10 0 + + + + + $PROJ_DIR$\..\src\app\simulat_timer.c + + + BICOMP + 196 + + + ICCARM + 330 + + + + + BICOMP + 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 0 3 12 + + + ICCARM + 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 0 3 12 + + + + + $PROJ_DIR$\..\src\app\tft.c + + + BICOMP + 198 + + + ICCARM + 331 + + + + + BICOMP + 125 95 116 148 129 233 150 252 245 127 246 114 151 384 350 359 349 351 352 353 155 357 356 385 374 367 358 361 354 360 368 377 372 369 370 371 362 373 376 382 365 366 13 4 3 0 6 14 7 147 + + + ICCARM + 125 95 116 148 129 233 150 252 245 127 246 114 151 384 350 359 349 351 352 353 155 357 356 385 374 367 358 361 354 360 368 377 372 369 370 371 362 373 376 382 365 366 13 4 3 0 6 14 10 7 147 + + + + + $PROJ_DIR$\..\src\app\water.c + + + BICOMP + 199 + + + ICCARM + 332 + + + + + BICOMP + 125 95 116 148 129 233 150 252 362 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 373 376 382 365 0 15 + + + ICCARM + 125 95 116 148 129 233 150 252 362 372 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 373 376 382 365 0 15 + + + + + $PROJ_DIR$\..\src\common\alloc.c + + + BICOMP + 200 + + + ICCARM + 333 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\assert.c + + + BICOMP + 201 + + + ICCARM + 334 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\common.c + + + BICOMP + 202 + + + ICCARM + 335 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\io.c + + + BICOMP + 203 + + + ICCARM + 336 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\memtest.c + + + BICOMP + 204 + + + ICCARM + 337 + + + + + BICOMP + 352 + + + ICCARM + 352 + + + + + $PROJ_DIR$\..\src\common\printf.c + + + BICOMP + 205 + + + ICCARM + 338 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 105 245 246 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 245 246 + + + + + $PROJ_DIR$\..\src\common\queue.c + + + BICOMP + 206 + + + ICCARM + 339 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\startup.c + + + BICOMP + 207 + + + ICCARM + 340 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\uif.c + + + BICOMP + 208 + + + ICCARM + 84 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 245 246 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 245 246 + + + + + $PROJ_DIR$\..\src\cpu\arm_cm0.c + + + BICOMP + 209 + + + ICCARM + 85 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\cpu\crt0.s + + + AARM + 308 + + + + + $PROJ_DIR$\..\src\cpu\start.c + + + BICOMP + 210 + + + ICCARM + 86 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\cpu\sysinit.c + + + BICOMP + 211 + + + ICCARM + 87 + + + + + BICOMP + 360 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 360 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\cpu\vectors.c + + + BICOMP + 212 + + + ICCARM + 88 + + + + + BICOMP + 361 2 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 361 2 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + + + BICOMP + 213 + + + ICCARM + 89 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + + + BICOMP + 214 + + + ICCARM + 254 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + + + BICOMP + 218 + + + ICCARM + 258 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + + + BICOMP + 215 + + + ICCARM + 255 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + + + BICOMP + 216 + + + ICCARM + 256 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + + + BICOMP + 217 + + + ICCARM + 257 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + + + BICOMP + 287 + + + ICCARM + 261 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + + + BICOMP + 219 + + + ICCARM + 259 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + + + BICOMP + 220 + + + ICCARM + 260 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + + + BICOMP + 197 + + + ICCARM + 264 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + + + BICOMP + 288 + + + ICCARM + 262 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + + + BICOMP + 289 + + + ICCARM + 263 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + + + BICOMP + 162 + + + ICCARM + 269 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + + + BICOMP + 283 + + + ICCARM + 265 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + + + BICOMP + 284 + + + ICCARM + 266 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + + + BICOMP + 161 + + + ICCARM + 268 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + + + BICOMP + 286 + + + ICCARM + 267 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + + + BICOMP + 163 + + + ICCARM + 270 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + + + BICOMP + 167 + + + ICCARM + 274 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + + + BICOMP + 164 + + + ICCARM + 271 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + + + BICOMP + 165 + + + ICCARM + 272 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + + + BICOMP + 166 + + + ICCARM + 273 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + + + BICOMP + 175 + + + ICCARM + 282 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + + + BICOMP + 168 + + + ICCARM + 275 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + + + BICOMP + 169 + + + ICCARM + 276 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + + + BICOMP + 170 + + + ICCARM + 277 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + + + BICOMP + 171 + + + ICCARM + 278 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + + + BICOMP + 172 + + + ICCARM + 279 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + + + BICOMP + 173 + + + ICCARM + 280 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + + + BICOMP + 174 + + + ICCARM + 281 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + + + BICOMP + 176 + + + ICCARM + 290 + + + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 + + + + + $PROJ_DIR$\..\src\drivers\adc.c + + + BICOMP + 177 + + + ICCARM + 291 + + + + + BICOMP + 362 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 373 376 382 365 + + + ICCARM + 362 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 373 376 382 365 + + + + + $PROJ_DIR$\..\src\drivers\cmp.c + + + BICOMP + 178 + + + ICCARM + 292 + + + + + BICOMP + 363 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 363 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\dac.c + + + BICOMP + 179 + + + ICCARM + 293 + + + + + BICOMP + 364 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 364 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\dma.c + + + BICOMP + 180 + + + ICCARM + 294 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\gpio.c + + + BICOMP + 181 + + + ICCARM + 295 + + + + + BICOMP + 369 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 + + + ICCARM + 369 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 384 370 371 362 373 376 382 365 + + + + + $PROJ_DIR$\..\src\drivers\i2c.c + + + BICOMP + 182 + + + ICCARM + 296 + + + + + BICOMP + 370 371 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 362 373 376 382 365 + + + ICCARM + 370 371 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 362 373 376 382 365 + + + + + $PROJ_DIR$\..\src\drivers\lptmr.c + + + BICOMP + 183 + + + ICCARM + 297 + + + + + BICOMP + 373 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 376 382 365 + + + ICCARM + 373 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 376 382 365 + + + + + $PROJ_DIR$\..\src\drivers\mcg.c + + + BICOMP + 184 + + + ICCARM + 298 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 375 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 375 + + + + + $PROJ_DIR$\..\src\drivers\pit.c + + + BICOMP + 185 + + + ICCARM + 299 + + + + + BICOMP + 376 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 382 365 366 + + + ICCARM + 376 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 382 365 366 + + + + + $PROJ_DIR$\..\src\app\time.c + + + BICOMP + 235 95 116 148 129 233 150 252 127 + + + ICCARM + 235 95 116 148 129 233 150 252 127 + + + + + $PROJ_DIR$\..\src\app\NormalDemo_Flash.c + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 128 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 128 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\common\stdlib.c + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 355 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 355 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\app\flash.c + + + BICOMP + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 8 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 234 236 126 115 125 95 116 148 129 233 150 252 107 120 8 350 359 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\out\Debug\Exe\plan_manage_main.out + + + ILINK + 90 + + + + + ILINK + 143 291 333 85 334 292 335 89 308 293 319 254 255 256 294 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 295 296 336 321 320 322 297 323 298 337 324 325 279 280 281 282 299 326 327 328 329 300 338 339 301 290 330 302 86 340 87 303 331 304 305 306 307 84 88 332 133 111 119 108 + + + + + $PROJ_DIR$\..\Debug\Exe\plan_manage_main.out + + + ILINK + 143 134 124 393 123 109 389 232 238 113 142 241 231 132 237 221 131 130 226 225 224 222 223 391 394 153 250 145 149 146 97 93 160 227 157 228 92 140 135 396 253 103 104 122 110 139 388 397 249 91 154 251 158 136 101 137 117 121 106 390 156 112 159 141 244 392 94 118 247 100 229 99 98 395 248 398 144 133 111 119 108 + + + + + $PROJ_DIR$\..\src\app\clock.c + + + BICOMP + 235 95 116 148 129 233 150 252 127 + + + ICCARM + 235 95 116 148 129 233 150 252 127 + + + + + $PROJ_DIR$\..\src\app\time64.c + + + BICOMP + 235 95 116 148 129 233 150 252 127 + + + ICCARM + 235 95 116 148 129 233 150 252 127 + + + + + $PROJ_DIR$\..\src\app\getzone.c + + + BICOMP + 240 127 95 116 148 129 233 150 252 + + + ICCARM + 240 127 95 116 148 129 233 150 252 + + + + + $PROJ_DIR$\..\src\drivers\port.c + + + BICOMP + 285 + + + ICCARM + 300 + + + + + BICOMP + 377 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 366 369 384 370 371 362 373 376 382 365 + + + ICCARM + 377 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 366 369 384 370 371 362 373 376 382 365 + + + + + $PROJ_DIR$\..\src\drivers\rtc.c + + + BICOMP + 186 + + + ICCARM + 301 + + + + + BICOMP + 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 378 + + + ICCARM + 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 378 + + + + + $PROJ_DIR$\..\src\drivers\SPI.c + + + BICOMP + 187 + + + ICCARM + 302 + + + + + BICOMP + 379 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 379 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\systick.c + + + BICOMP + 188 + + + ICCARM + 303 + + + + + BICOMP + 380 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 380 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\tick_timer.c + + + BICOMP + 189 + + + ICCARM + 304 + + + + + BICOMP + 381 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 380 + + + ICCARM + 381 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 380 + + + + + $PROJ_DIR$\..\src\drivers\tpm.c + + + BICOMP + 190 + + + ICCARM + 305 + + + + + BICOMP + 382 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 365 + + + ICCARM + 382 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 365 + + + + + $PROJ_DIR$\..\src\drivers\tsi.c + + + BICOMP + 191 + + + ICCARM + 306 + + + + + BICOMP + 383 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 383 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\drivers\uart.c + + + BICOMP + 192 + + + ICCARM + 307 + + + + + BICOMP + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + ICCARM + 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 372 369 384 370 371 362 373 376 382 365 366 + + + + + $PROJ_DIR$\..\src\other\LandzoOLED.c + + + BICOMP + 387 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 + + + ICCARM + 387 372 350 359 125 95 116 148 129 233 150 252 349 351 352 353 155 127 357 356 385 374 367 358 361 354 360 368 377 366 369 384 370 371 362 373 376 382 365 + + + + + + Release + + $PROJ_DIR$\..\src\app\include\config.h + $PROJ_DIR$\..\src\app\include\debug.h + $PROJ_DIR$\..\src\app\include\isr.h + $PROJ_DIR$\..\src\app\include\key.h + $PROJ_DIR$\..\src\app\include\knob.h + $PROJ_DIR$\..\src\app\include\output.h + $PROJ_DIR$\..\src\app\include\plan_handle.h + $PROJ_DIR$\..\src\app\include\pm_flash.h + $PROJ_DIR$\..\src\app\include\pm_flash_cfg.h + $PROJ_DIR$\..\src\app\include\pm_init.h + $PROJ_DIR$\..\src\app\include\pm_time.h + $PROJ_DIR$\..\src\app\include\simulat_timer.h + $PROJ_DIR$\..\src\app\include\tft.h + $PROJ_DIR$\..\src\app\include\tft_plan_internal.h + $PROJ_DIR$\..\src\app\include\water.h + $PROJ_DIR$\..\src\app\debug.c + $PROJ_DIR$\..\src\app\isr.c + $PROJ_DIR$\..\src\app\key.c + $PROJ_DIR$\..\src\app\knob.c + $PROJ_DIR$\..\src\app\main.c + $PROJ_DIR$\..\src\app\orient.c + $PROJ_DIR$\..\src\app\output.c + $PROJ_DIR$\..\src\app\plan_handle.c + $PROJ_DIR$\..\src\app\pm_flash.c + $PROJ_DIR$\..\src\app\pm_init.c + $PROJ_DIR$\..\src\app\pm_time.c + $PROJ_DIR$\..\src\app\simulat_timer.c + $PROJ_DIR$\..\src\app\tft.c + $PROJ_DIR$\..\src\app\water.c + $PROJ_DIR$\..\src\common\alloc.c + $PROJ_DIR$\..\src\common\assert.c + $PROJ_DIR$\..\src\common\common.c + $PROJ_DIR$\..\src\common\io.c + $PROJ_DIR$\..\src\common\memtest.c + $PROJ_DIR$\..\src\common\printf.c + $PROJ_DIR$\..\src\common\queue.c + $PROJ_DIR$\..\src\common\startup.c + $PROJ_DIR$\..\src\common\uif.c + $PROJ_DIR$\..\src\cpu\arm_cm0.c + $PROJ_DIR$\..\src\cpu\crt0.s + $PROJ_DIR$\..\src\cpu\start.c + $PROJ_DIR$\..\src\cpu\sysinit.c + $PROJ_DIR$\..\src\cpu\vectors.c + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + $PROJ_DIR$\..\src\drivers\adc.c + $PROJ_DIR$\..\src\drivers\cmp.c + $PROJ_DIR$\..\src\drivers\dac.c + $PROJ_DIR$\..\src\drivers\dma.c + $PROJ_DIR$\..\src\drivers\gpio.c + $PROJ_DIR$\..\src\drivers\i2c.c + $PROJ_DIR$\..\src\drivers\lptmr.c + $PROJ_DIR$\..\src\drivers\mcg.c + $PROJ_DIR$\..\src\drivers\pit.c + $PROJ_DIR$\..\out\Release\Obj\FlashEraseSuspend.o + $PROJ_DIR$\..\out\Release\Obj\FlashGetSecurityState.o + $PROJ_DIR$\..\out\Release\Obj\FlashInit.o + $PROJ_DIR$\..\out\Release\Obj\FlashProgram.o + $PROJ_DIR$\..\out\Release\Obj\FlashProgramCheck.o + $PROJ_DIR$\..\out\Release\Obj\FlashProgramOnce.o + $PROJ_DIR$\..\out\Release\Obj\FlashProgramSection.o + $PROJ_DIR$\..\out\Release\Obj\FlashReadOnce.o + $PROJ_DIR$\..\out\Release\Obj\FlashReadResource.o + $PROJ_DIR$\..\out\Release\Obj\FlashSecurityBypass.o + $PROJ_DIR$\..\out\Release\Obj\FlashVerifyAllBlock.o + $PROJ_DIR$\..\out\Release\Obj\FlashVerifyBlock.o + $PROJ_DIR$\..\out\Release\Obj\FlashVerifySection.o + $PROJ_DIR$\..\out\Release\Obj\PFlashGetProtection.o + $PROJ_DIR$\..\out\Release\Obj\PFlashSetProtection.o + $PROJ_DIR$\..\out\Release\Obj\PFlashSwap.o + $PROJ_DIR$\..\out\Release\Obj\DEFlashPartition.pbi + $PROJ_DIR$\..\out\Release\Obj\DFlashGetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashGetSecurityState.pbi + $PROJ_DIR$\..\out\Release\Obj\DFlashSetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\EEEWrite.pbi + $PROJ_DIR$\..\out\Release\Obj\EERAMGetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\EERAMSetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashCheckSum.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashCommandSequence.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashEraseAllBlock.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashEraseBlock.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashEraseResume.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashEraseSector.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashEraseSuspend.pbi + $PROJ_DIR$\..\out\Release\Obj\startup.pbi + $PROJ_DIR$\..\out\Release\Obj\uif.pbi + $PROJ_DIR$\..\out\Release\Obj\CopyToRam.pbi + $PROJ_DIR$\..\out\Release\Obj\arm_cm0.pbi + $PROJ_DIR$\..\out\Release\Obj\start.pbi + $PROJ_DIR$\..\out\Release\Obj\sysinit.pbi + $PROJ_DIR$\..\out\Release\Obj\vectors.pbi + $PROJ_DIR$\..\out\Release\Obj\alloc.o + $PROJ_DIR$\..\out\Release\Obj\assert.o + $PROJ_DIR$\..\out\Release\Obj\common.o + $PROJ_DIR$\..\out\Release\Obj\io.o + $PROJ_DIR$\..\out\Release\Obj\memtest.o + $PROJ_DIR$\..\out\Release\Obj\printf.o + $PROJ_DIR$\..\out\Release\Obj\queue.o + $PROJ_DIR$\..\out\Release\Obj\startup.o + $PROJ_DIR$\..\out\Release\Obj\uif.o + $PROJ_DIR$\..\out\Release\Obj\arm_cm0.o + $PROJ_DIR$\..\out\Release\Obj\start.o + $PROJ_DIR$\..\out\Release\Obj\sysinit.o + $PROJ_DIR$\..\out\Release\Obj\vectors.o + $PROJ_DIR$\..\out\Release\Obj\CopyToRam.o + $PROJ_DIR$\..\out\Release\Obj\plan_manage_main.pbd + $TOOLKIT_DIR$\inc\c\ycheck.h + $TOOLKIT_DIR$\inc\c\stdarg.h + $PROJ_DIR$\..\src\include\drivers\FTFx\user_cfg.h + $TOOLKIT_DIR$\lib\dl6M_tln.a + $TOOLKIT_DIR$\lib\rt6M_tl.a + $TOOLKIT_DIR$\inc\c\stdio.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_Types.h + $TOOLKIT_DIR$\inc\c\yvals.h + $TOOLKIT_DIR$\lib\m6M_tl.a + $PROJ_DIR$\..\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h + $TOOLKIT_DIR$\inc\c\stdint.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Common.h + $TOOLKIT_DIR$\inc\c\ysizet.h + $TOOLKIT_DIR$\inc\c\DLib_Config_Normal.h + $PROJ_DIR$\..\config_files\128KB_Pflash.icf + $PROJ_DIR$\..\src\app\include\orient.h + $TOOLKIT_DIR$\inc\c\DLib_Defaults.h + $TOOLKIT_DIR$\inc\c\xencoding_limits.h + $TOOLKIT_DIR$\inc\c\ystdio.h + $TOOLKIT_DIR$\inc\c\stdlib.h + $PROJ_DIR$\..\out\Release\Obj\FlashInit.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashProgram.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashReadResource.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashProgramCheck.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashProgramOnce.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashProgramSection.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashReadOnce.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashSecurityBypass.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashVerifyAllBlock.pbi + $PROJ_DIR$\..\out\Release\Obj\gpio.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashVerifyBlock.pbi + $PROJ_DIR$\..\out\Release\Obj\FlashVerifySection.pbi + $PROJ_DIR$\..\out\Release\Obj\PFlashGetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\PFlashSetProtection.pbi + $PROJ_DIR$\..\out\Release\Obj\PFlashSwap.pbi + $PROJ_DIR$\..\out\Release\Obj\PFlashSwapCtl.pbi + $PROJ_DIR$\..\out\Release\Obj\SetEEEEnable.pbi + $PROJ_DIR$\..\out\Release\Obj\adc.pbi + $PROJ_DIR$\..\out\Release\Obj\cmp.pbi + $PROJ_DIR$\..\out\Release\Obj\dac.pbi + $PROJ_DIR$\..\out\Release\Obj\dma.pbi + $PROJ_DIR$\..\out\Release\Obj\i2c.pbi + $PROJ_DIR$\..\out\Release\Obj\lptmr.pbi + $PROJ_DIR$\..\out\Release\Exe\plan_manage_main.out + $PROJ_DIR$\..\out\Release\Obj\mcg.pbi + $PROJ_DIR$\..\out\Release\Obj\pit.pbi + $PROJ_DIR$\..\out\Release\Obj\port.pbi + $PROJ_DIR$\..\out\Release\Obj\rtc.pbi + $PROJ_DIR$\..\out\Release\Obj\SPI.pbi + $PROJ_DIR$\..\out\Release\Obj\systick.pbi + $PROJ_DIR$\..\out\Release\Obj\tick_timer.pbi + $PROJ_DIR$\..\out\Release\Obj\tpm.pbi + $PROJ_DIR$\..\out\Release\Obj\tsi.pbi + $PROJ_DIR$\..\out\Release\Obj\uart.pbi + $PROJ_DIR$\..\out\Release\Obj\LandzoOLED.pbi + $PROJ_DIR$\..\out\Release\Obj\debug.o + $PROJ_DIR$\..\out\Release\Obj\key.o + $PROJ_DIR$\..\out\Release\Obj\isr.o + $PROJ_DIR$\..\out\Release\Obj\knob.o + $PROJ_DIR$\..\out\Release\Obj\main.o + $PROJ_DIR$\..\out\Release\Obj\orient.o + $PROJ_DIR$\..\out\Release\Obj\output.o + $PROJ_DIR$\..\out\Release\Obj\plan_handle.o + $TOOLKIT_DIR$\inc\c\DLib_Product.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx.h + $PROJ_DIR$\..\src\include\drivers\FTFx\SSD_FTFx_Internal.h + $TOOLKIT_DIR$\inc\c\string.h + $TOOLKIT_DIR$\inc\c\DLib_Product_string.h + $TOOLKIT_DIR$\inc\c\DLib_Threads.h + $PROJ_DIR$\..\src\drivers\port.c + $PROJ_DIR$\..\src\drivers\rtc.c + $PROJ_DIR$\..\src\drivers\SPI.c + $PROJ_DIR$\..\src\drivers\systick.c + $PROJ_DIR$\..\src\drivers\tick_timer.c + $PROJ_DIR$\..\src\drivers\tpm.c + $PROJ_DIR$\..\src\drivers\tsi.c + $PROJ_DIR$\..\src\drivers\uart.c + $PROJ_DIR$\..\src\include\common\assert.h + $PROJ_DIR$\..\src\include\common\common.h + $PROJ_DIR$\..\src\include\common\io.h + $PROJ_DIR$\..\src\include\common\memtest.h + $PROJ_DIR$\..\src\include\common\queue.h + $PROJ_DIR$\..\src\include\common\startup.h + $PROJ_DIR$\..\src\include\common\stdlib.h + $PROJ_DIR$\..\src\include\common\typedef.h + $PROJ_DIR$\..\src\include\common\uif.h + $PROJ_DIR$\..\src\include\cpu\arm_cm0.h + $PROJ_DIR$\..\src\include\cpu\dma_channels.h + $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h + $PROJ_DIR$\..\src\include\cpu\sysinit.h + $PROJ_DIR$\..\src\include\cpu\vectors.h + $PROJ_DIR$\..\src\include\drivers\adc.h + $PROJ_DIR$\..\src\include\drivers\cmp.h + $PROJ_DIR$\..\src\include\drivers\dac.h + $PROJ_DIR$\..\src\include\drivers\dma.h + $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h + $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h + $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h + $PROJ_DIR$\..\src\include\drivers\gpio.h + $PROJ_DIR$\..\src\include\drivers\i2c.h + $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h + $PROJ_DIR$\..\src\include\drivers\include.h + $PROJ_DIR$\..\src\include\drivers\lptmr.h + $PROJ_DIR$\..\src\include\drivers\mcg.h + $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h + $PROJ_DIR$\..\src\include\drivers\pit.h + $PROJ_DIR$\..\src\include\drivers\port.h + $PROJ_DIR$\..\src\include\drivers\rtc.h + $PROJ_DIR$\..\src\include\drivers\SPI.h + $PROJ_DIR$\..\src\include\drivers\systick.h + $PROJ_DIR$\..\src\include\drivers\tick_timer.h + $PROJ_DIR$\..\src\include\drivers\tpm.h + $PROJ_DIR$\..\src\include\drivers\tsi.h + $PROJ_DIR$\..\src\include\drivers\uart.h + $PROJ_DIR$\..\src\include\platforms\freedom.h + $PROJ_DIR$\..\src\include\platforms\tower.h + $PROJ_DIR$\..\src\other\LandzoOLED.c + $PROJ_DIR$\..\src\other\LandzoOLED.h + $PROJ_DIR$\..\out\Release\Obj\pm_flash.o + $PROJ_DIR$\..\out\Release\Obj\pm_init.o + $PROJ_DIR$\..\out\Release\Obj\pm_time.o + $PROJ_DIR$\..\out\Release\Obj\simulat_timer.o + $PROJ_DIR$\..\out\Release\Obj\tft.o + $PROJ_DIR$\..\out\Release\Obj\water.o + $PROJ_DIR$\..\out\Release\Obj\systick.o + $PROJ_DIR$\..\out\Release\Obj\tick_timer.o + $PROJ_DIR$\..\out\Release\Obj\tpm.o + $PROJ_DIR$\..\out\Release\Obj\tsi.o + $PROJ_DIR$\..\out\Release\Obj\uart.o + $PROJ_DIR$\..\out\Release\Obj\LandzoOLED.o + $PROJ_DIR$\..\out\Release\Obj\crt0.o + $PROJ_DIR$\..\out\Release\Obj\debug.pbi + $PROJ_DIR$\..\out\Release\Obj\output.pbi + $PROJ_DIR$\..\out\Release\Obj\isr.pbi + $PROJ_DIR$\..\out\Release\Obj\key.pbi + $PROJ_DIR$\..\out\Release\Obj\knob.pbi + $PROJ_DIR$\..\out\Release\Obj\main.pbi + $PROJ_DIR$\..\out\Release\Obj\orient.pbi + $PROJ_DIR$\..\out\Release\Obj\plan_handle.pbi + $PROJ_DIR$\..\out\Release\Obj\pm_flash.pbi + $PROJ_DIR$\..\out\Release\Obj\queue.pbi + $PROJ_DIR$\..\out\Release\Obj\pm_init.pbi + $PROJ_DIR$\..\out\Release\Obj\pm_time.pbi + $PROJ_DIR$\..\out\Release\Obj\simulat_timer.pbi + $PROJ_DIR$\..\out\Release\Obj\tft.pbi + $PROJ_DIR$\..\out\Release\Obj\water.pbi + $PROJ_DIR$\..\out\Release\Obj\alloc.pbi + $PROJ_DIR$\..\out\Release\Obj\assert.pbi + $PROJ_DIR$\..\out\Release\Obj\common.pbi + $PROJ_DIR$\..\out\Release\Obj\io.pbi + $PROJ_DIR$\..\out\Release\Obj\memtest.pbi + $PROJ_DIR$\..\out\Release\Obj\printf.pbi + $PROJ_DIR$\..\out\Release\Obj\PFlashSwapCtl.o + $PROJ_DIR$\..\out\Release\Obj\SetEEEEnable.o + $PROJ_DIR$\..\out\Release\Obj\adc.o + $PROJ_DIR$\..\out\Release\Obj\cmp.o + $PROJ_DIR$\..\out\Release\Obj\dac.o + $PROJ_DIR$\..\out\Release\Obj\dma.o + $PROJ_DIR$\..\out\Release\Obj\gpio.o + $PROJ_DIR$\..\out\Release\Obj\i2c.o + $PROJ_DIR$\..\out\Release\Obj\lptmr.o + $PROJ_DIR$\..\out\Release\Obj\mcg.o + $PROJ_DIR$\..\out\Release\Obj\pit.o + $PROJ_DIR$\..\out\Release\Obj\port.o + $PROJ_DIR$\..\out\Release\Obj\rtc.o + $PROJ_DIR$\..\out\Release\Obj\SPI.o + $PROJ_DIR$\..\out\Release\Obj\DEFlashPartition.o + $PROJ_DIR$\..\out\Release\Obj\DFlashGetProtection.o + $PROJ_DIR$\..\out\Release\Obj\DFlashSetProtection.o + $PROJ_DIR$\..\out\Release\Obj\EEEWrite.o + $PROJ_DIR$\..\out\Release\Obj\EERAMGetProtection.o + $PROJ_DIR$\..\out\Release\Obj\EERAMSetProtection.o + $PROJ_DIR$\..\out\Release\Obj\FlashCheckSum.o + $PROJ_DIR$\..\out\Release\Obj\FlashCommandSequence.o + $PROJ_DIR$\..\out\Release\Obj\FlashEraseAllBlock.o + $PROJ_DIR$\..\out\Release\Obj\FlashEraseBlock.o + $PROJ_DIR$\..\out\Release\Obj\FlashEraseResume.o + $PROJ_DIR$\..\out\Release\Obj\FlashEraseSector.o + + + [ROOT_NODE] + + + ILINK + 178 + + + + + $PROJ_DIR$\..\src\app\debug.c + + + BICOMP + 266 + + + ICCARM + 190 + + + + + BICOMP + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 1 0 + + + ICCARM + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 1 0 + + + + + $PROJ_DIR$\..\src\app\isr.c + + + BICOMP + 268 + + + ICCARM + 192 + + + + + BICOMP + 140 135 142 151 148 198 152 203 147 153 236 213 223 145 212 214 215 216 154 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 2 11 1 0 4 + + + ICCARM + 140 135 142 151 148 198 152 203 147 153 236 213 223 145 212 214 215 216 154 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 2 11 1 0 4 + + + + + $PROJ_DIR$\..\src\app\key.c + + + BICOMP + 269 + + + ICCARM + 191 + + + + + BICOMP + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 3 0 + + + ICCARM + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 3 0 + + + + + $PROJ_DIR$\..\src\app\knob.c + + + BICOMP + 270 + + + ICCARM + 193 + + + + + BICOMP + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 0 4 + + + ICCARM + 145 135 142 151 148 198 152 203 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 0 4 + + + + + $PROJ_DIR$\..\src\app\main.c + + + BICOMP + 271 + + + ICCARM + 194 + + + + + BICOMP + 140 135 142 151 148 198 152 203 147 153 154 213 223 145 212 214 215 216 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 9 11 3 4 12 0 10 6 7 150 + + + ICCARM + 140 135 142 151 148 198 152 203 147 153 154 213 223 145 212 214 215 216 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 9 11 3 4 12 0 10 6 7 150 + + + + + $PROJ_DIR$\..\src\app\orient.c + + + BICOMP + 272 + + + ICCARM + 195 + + + + + BICOMP + 248 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 234 235 226 237 240 246 229 230 150 0 + + + ICCARM + 248 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 234 235 226 237 240 246 229 230 150 0 + + + + + $PROJ_DIR$\..\src\app\output.c + + + BICOMP + 267 + + + ICCARM + 196 + + + + + $PROJ_DIR$\..\src\app\plan_handle.c + + + BICOMP + 273 + + + ICCARM + 197 + + + + + BICOMP + 145 135 142 151 148 198 152 203 233 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 248 234 235 226 237 240 246 229 13 6 12 0 7 150 3 + + + ICCARM + 145 135 142 151 148 198 152 203 233 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 248 234 235 226 237 240 246 229 13 10 6 12 0 7 150 3 + + + + + $PROJ_DIR$\..\src\app\pm_flash.c + + + BICOMP + 274 + + + ICCARM + 253 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 8 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 8 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\app\pm_init.c + + + BICOMP + 276 + + + ICCARM + 254 + + + + + BICOMP + 11 145 135 142 151 148 198 152 203 3 4 1 12 0 10 6 7 150 + + + ICCARM + 11 145 135 142 151 148 198 152 203 3 4 1 12 0 10 6 7 150 + + + + + $PROJ_DIR$\..\src\app\pm_time.c + + + BICOMP + 277 + + + ICCARM + 255 + + + + + BICOMP + 233 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 248 234 235 226 237 240 246 229 10 0 + + + ICCARM + 233 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 248 234 235 226 237 240 246 229 10 0 + + + + + $PROJ_DIR$\..\src\app\simulat_timer.c + + + BICOMP + 278 + + + ICCARM + 256 + + + + + BICOMP + 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 0 3 11 + + + ICCARM + 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 0 3 11 + + + + + $PROJ_DIR$\..\src\app\tft.c + + + BICOMP + 279 + + + ICCARM + 257 + + + + + BICOMP + 145 135 142 151 148 198 152 203 201 147 202 140 153 248 213 223 212 214 215 216 154 220 219 249 238 231 221 225 217 224 232 241 236 233 234 235 226 237 240 246 229 230 12 4 3 0 6 13 7 150 + + + ICCARM + 145 135 142 151 148 198 152 203 201 147 202 140 153 248 213 223 212 214 215 216 154 220 219 249 238 231 221 225 217 224 232 241 236 233 234 235 226 237 240 246 229 230 12 4 3 0 6 13 10 7 150 + + + + + $PROJ_DIR$\..\src\app\water.c + + + BICOMP + 280 + + + ICCARM + 258 + + + + + BICOMP + 145 135 142 151 148 198 152 203 226 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 237 240 246 229 0 14 + + + ICCARM + 145 135 142 151 148 198 152 203 226 236 213 223 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 237 240 246 229 0 14 + + + + + $PROJ_DIR$\..\src\common\alloc.c + + + BICOMP + 281 + + + ICCARM + 120 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\assert.c + + + BICOMP + 282 + + + ICCARM + 121 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\common.c + + + BICOMP + 283 + + + ICCARM + 122 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\io.c + + + BICOMP + 284 + + + ICCARM + 123 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\memtest.c + + + BICOMP + 285 + + + ICCARM + 124 + + + + + BICOMP + 215 + + + ICCARM + 215 + + + + + $PROJ_DIR$\..\src\common\printf.c + + + BICOMP + 286 + + + ICCARM + 125 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 136 201 202 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 201 202 + + + + + $PROJ_DIR$\..\src\common\queue.c + + + BICOMP + 275 + + + ICCARM + 126 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\startup.c + + + BICOMP + 113 + + + ICCARM + 127 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\common\uif.c + + + BICOMP + 114 + + + ICCARM + 128 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 201 202 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 201 202 + + + + + $PROJ_DIR$\..\src\cpu\arm_cm0.c + + + BICOMP + 116 + + + ICCARM + 129 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\cpu\crt0.s + + + AARM + 265 + + + + + $PROJ_DIR$\..\src\cpu\start.c + + + BICOMP + 117 + + + ICCARM + 130 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\cpu\sysinit.c + + + BICOMP + 118 + + + ICCARM + 131 + + + + + BICOMP + 224 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 224 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\cpu\vectors.c + + + BICOMP + 119 + + + ICCARM + 132 + + + + + BICOMP + 225 2 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 225 2 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + + + BICOMP + 115 + + + ICCARM + 133 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + + + BICOMP + 99 + + + ICCARM + 301 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + + + BICOMP + 104 + + + ICCARM + 305 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + + + BICOMP + 100 + + + ICCARM + 302 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + + + BICOMP + 102 + + + ICCARM + 303 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + + + BICOMP + 103 + + + ICCARM + 304 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + + + BICOMP + 107 + + + ICCARM + 308 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + + + BICOMP + 105 + + + ICCARM + 306 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + + + BICOMP + 106 + + + ICCARM + 307 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + + + BICOMP + 110 + + + ICCARM + 311 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + + + BICOMP + 108 + + + ICCARM + 309 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + + + BICOMP + 109 + + + ICCARM + 310 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + + + BICOMP + 156 + + + ICCARM + 86 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + + + BICOMP + 111 + + + ICCARM + 312 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + + + BICOMP + 112 + + + ICCARM + 83 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + + + BICOMP + 155 + + + ICCARM + 85 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + + + BICOMP + 101 + + + ICCARM + 84 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + + + BICOMP + 158 + + + ICCARM + 87 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + + + BICOMP + 157 + + + ICCARM + 91 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + + + BICOMP + 159 + + + ICCARM + 88 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + + + BICOMP + 160 + + + ICCARM + 89 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + + + BICOMP + 161 + + + ICCARM + 90 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + + + BICOMP + 170 + + + ICCARM + 287 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + + + BICOMP + 162 + + + ICCARM + 92 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + + + BICOMP + 163 + + + ICCARM + 93 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + + + BICOMP + 165 + + + ICCARM + 94 + + + + + BICOMP + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + + + BICOMP + 166 + + + ICCARM + 95 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + + + BICOMP + 167 + + + ICCARM + 96 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + + + BICOMP + 168 + + + ICCARM + 97 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + + + BICOMP + 169 + + + ICCARM + 98 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + + + BICOMP + 171 + + + ICCARM + 288 + + + + + ICCARM + 199 200 146 141 145 135 142 151 148 198 152 203 137 144 + + + + + $PROJ_DIR$\..\src\drivers\adc.c + + + BICOMP + 172 + + + ICCARM + 289 + + + + + ICCARM + 226 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 237 240 246 229 + + + + + $PROJ_DIR$\..\src\drivers\cmp.c + + + BICOMP + 173 + + + ICCARM + 290 + + + + + ICCARM + 227 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\dac.c + + + BICOMP + 174 + + + ICCARM + 291 + + + + + ICCARM + 228 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\dma.c + + + BICOMP + 175 + + + ICCARM + 292 + + + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\gpio.c + + + BICOMP + 164 + + + ICCARM + 293 + + + + + ICCARM + 233 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 248 234 235 226 237 240 246 229 + + + + + $PROJ_DIR$\..\src\drivers\i2c.c + + + BICOMP + 176 + + + ICCARM + 294 + + + + + ICCARM + 234 235 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 226 237 240 246 229 + + + + + $PROJ_DIR$\..\src\drivers\lptmr.c + + + BICOMP + 177 + + + ICCARM + 295 + + + + + ICCARM + 237 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 240 246 229 + + + + + $PROJ_DIR$\..\src\drivers\mcg.c + + + BICOMP + 179 + + + ICCARM + 296 + + + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 239 + + + + + $PROJ_DIR$\..\src\drivers\pit.c + + + BICOMP + 180 + + + ICCARM + 297 + + + + + ICCARM + 240 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 246 229 230 + + + + + $PROJ_DIR$\..\out\Release\Exe\plan_manage_main.out + + + ILINK + 149 289 120 129 121 290 122 133 265 291 190 301 302 303 292 304 305 306 307 308 309 310 311 312 83 84 85 86 87 88 89 90 91 92 93 94 95 293 294 123 192 191 193 264 295 194 296 124 195 196 96 97 98 287 297 197 253 254 255 298 125 126 299 288 256 300 130 127 131 259 257 260 261 262 263 128 132 258 139 143 138 + + + + + $PROJ_DIR$\..\src\drivers\port.c + + + BICOMP + 181 + + + ICCARM + 298 + + + + + ICCARM + 241 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 230 233 248 234 235 226 237 240 246 229 + + + + + $PROJ_DIR$\..\src\drivers\rtc.c + + + BICOMP + 182 + + + ICCARM + 299 + + + + + ICCARM + 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 242 + + + + + $PROJ_DIR$\..\src\drivers\SPI.c + + + BICOMP + 183 + + + ICCARM + 300 + + + + + ICCARM + 243 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\systick.c + + + BICOMP + 184 + + + ICCARM + 259 + + + + + BICOMP + 244 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 244 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\tick_timer.c + + + BICOMP + 185 + + + ICCARM + 260 + + + + + BICOMP + 245 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 244 + + + ICCARM + 245 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 244 + + + + + $PROJ_DIR$\..\src\drivers\tpm.c + + + BICOMP + 186 + + + ICCARM + 261 + + + + + BICOMP + 246 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 229 + + + ICCARM + 246 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 229 + + + + + $PROJ_DIR$\..\src\drivers\tsi.c + + + BICOMP + 187 + + + ICCARM + 262 + + + + + BICOMP + 247 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 247 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\drivers\uart.c + + + BICOMP + 188 + + + ICCARM + 263 + + + + + BICOMP + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + ICCARM + 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 236 233 248 234 235 226 237 240 246 229 230 + + + + + $PROJ_DIR$\..\src\other\LandzoOLED.c + + + BICOMP + 189 + + + ICCARM + 264 + + + + + BICOMP + 252 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 + + + ICCARM + 252 236 213 223 145 135 142 151 148 198 152 203 212 214 215 216 154 147 220 219 249 238 231 221 225 217 224 232 241 230 233 248 234 235 226 237 240 246 229 + + + + + + + diff --git a/plan_manage_main/ewp/plan_manage_main.ewd b/plan_manage_main/ewp/plan_manage_main.ewd index feea8ad..2856592 100644 --- a/plan_manage_main/ewp/plan_manage_main.ewd +++ b/plan_manage_main/ewp/plan_manage_main.ewd @@ -1,2697 +1,2697 @@ - - - - 2 - - Debug - - ARM - - 1 - - C-SPY - 2 - - 26 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ARMSIM_ID - 2 - - 1 - 1 - 1 - - - - - - - - ANGEL_ID - 2 - - 0 - 1 - 1 - - - - - - - - - - - - CMSISDAP_ID - 2 - - 2 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - GDBSERVER_ID - 2 - - 0 - 1 - 1 - - - - - - - - - - - IARROM_ID - 2 - - 1 - 1 - 1 - - - - - - - - - IJET_ID - 2 - - 3 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JLINK_ID - 2 - - 15 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LMIFTDI_ID - 2 - - 2 - 1 - 1 - - - - - - - - - - MACRAIGOR_ID - 2 - - 3 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - PEMICRO_ID - 2 - - 1 - 1 - 1 - - - - - - - - - - - - - - - - - - - RDI_ID - 2 - - 2 - 1 - 1 - - - - - - - - - - - - - - - - STLINK_ID - 2 - - 2 - 1 - 1 - - - - - - - - - - - THIRDPARTY_ID - 2 - - 0 - 1 - 1 - - - - - - - - XDS100_ID - 2 - - 2 - 1 - 1 - - - - - - - - - - - - - $TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin - 0 - - - $EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin - 1 - - - $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin - 1 - - - $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin - 0 - - - - - Release - - ARM - - 0 - - C-SPY - 2 - - 26 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ARMSIM_ID - 2 - - 1 - 1 - 0 - - - - - - - - ANGEL_ID - 2 - - 0 - 1 - 0 - - - - - - - - - - - - CMSISDAP_ID - 2 - - 2 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - GDBSERVER_ID - 2 - - 0 - 1 - 0 - - - - - - - - - - - IARROM_ID - 2 - - 1 - 1 - 0 - - - - - - - - - IJET_ID - 2 - - 3 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - JLINK_ID - 2 - - 15 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - LMIFTDI_ID - 2 - - 2 - 1 - 0 - - - - - - - - - - MACRAIGOR_ID - 2 - - 3 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - PEMICRO_ID - 2 - - 1 - 1 - 0 - - - - - - - - - - - - - - - - - - - RDI_ID - 2 - - 2 - 1 - 0 - - - - - - - - - - - - - - - - STLINK_ID - 2 - - 2 - 1 - 0 - - - - - - - - - - - THIRDPARTY_ID - 2 - - 0 - 1 - 0 - - - - - - - - XDS100_ID - 2 - - 2 - 1 - 0 - - - - - - - - - - - - - $TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin - 0 - - - $TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin - 0 - - - $EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin - 1 - - - $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin - 0 - - - $EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin - 1 - - - $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin - 0 - - - - - - + + + + 2 + + Debug + + ARM + + 1 + + C-SPY + 2 + + 26 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ARMSIM_ID + 2 + + 1 + 1 + 1 + + + + + + + + ANGEL_ID + 2 + + 0 + 1 + 1 + + + + + + + + + + + + CMSISDAP_ID + 2 + + 2 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GDBSERVER_ID + 2 + + 0 + 1 + 1 + + + + + + + + + + + IARROM_ID + 2 + + 1 + 1 + 1 + + + + + + + + + IJET_ID + 2 + + 3 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JLINK_ID + 2 + + 15 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LMIFTDI_ID + 2 + + 2 + 1 + 1 + + + + + + + + + + MACRAIGOR_ID + 2 + + 3 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + PEMICRO_ID + 2 + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + RDI_ID + 2 + + 2 + 1 + 1 + + + + + + + + + + + + + + + + STLINK_ID + 2 + + 2 + 1 + 1 + + + + + + + + + + + THIRDPARTY_ID + 2 + + 0 + 1 + 1 + + + + + + + + XDS100_ID + 2 + + 2 + 1 + 1 + + + + + + + + + + + + + $TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin + 0 + + + $EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin + 1 + + + $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin + 0 + + + $EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin + 1 + + + $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin + 0 + + + + + Release + + ARM + + 0 + + C-SPY + 2 + + 26 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ARMSIM_ID + 2 + + 1 + 1 + 0 + + + + + + + + ANGEL_ID + 2 + + 0 + 1 + 0 + + + + + + + + + + + + CMSISDAP_ID + 2 + + 2 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GDBSERVER_ID + 2 + + 0 + 1 + 0 + + + + + + + + + + + IARROM_ID + 2 + + 1 + 1 + 0 + + + + + + + + + IJET_ID + 2 + + 3 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JLINK_ID + 2 + + 15 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LMIFTDI_ID + 2 + + 2 + 1 + 0 + + + + + + + + + + MACRAIGOR_ID + 2 + + 3 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + PEMICRO_ID + 2 + + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + RDI_ID + 2 + + 2 + 1 + 0 + + + + + + + + + + + + + + + + STLINK_ID + 2 + + 2 + 1 + 0 + + + + + + + + + + + THIRDPARTY_ID + 2 + + 0 + 1 + 0 + + + + + + + + XDS100_ID + 2 + + 2 + 1 + 0 + + + + + + + + + + + + + $TOOLKIT_DIR$\plugins\middleware\HCCWare\HCCWare.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\AVIX\AVIX.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\CMX\CmxArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\CMX\CmxTinyArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\MQX\MQXRtosPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\OpenRTOS\OpenRTOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\SafeRTOS\SafeRTOSPlugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\ThreadX\ThreadXArmPlugin.ENU.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\TI-RTOS\tirtosplugin.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin + 0 + + + $TOOLKIT_DIR$\plugins\rtos\uCOS-III\uCOS-III-KA-CSpy.ewplugin + 0 + + + $EW_DIR$\common\plugins\CodeCoverage\CodeCoverage.ENU.ewplugin + 1 + + + $EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin + 0 + + + $EW_DIR$\common\plugins\SymList\SymList.ENU.ewplugin + 1 + + + $EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin + 0 + + + + + + diff --git a/plan_manage_main/ewp/plan_manage_main.ewp b/plan_manage_main/ewp/plan_manage_main.ewp index 89385b5..b151c17 100644 --- a/plan_manage_main/ewp/plan_manage_main.ewp +++ b/plan_manage_main/ewp/plan_manage_main.ewp @@ -1,2346 +1,2352 @@ - - - - 2 - - Debug - - ARM - - 1 - - General - 3 - - 22 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ICCARM - 2 - - 31 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - AARM - 2 - - 9 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - OBJCOPY - 0 - - 1 - 1 - 1 - - - - - - - - - CUSTOM - 3 - - - - - - - BICOMP - 0 - - - - BUILDACTION - 1 - - - - - - - ILINK - 0 - - 16 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IARCHIVE - 0 - - 0 - 1 - 1 - - - - - - - BILINK - 0 - - - - - Release - - ARM - - 0 - - General - 3 - - 22 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ICCARM - 2 - - 31 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - AARM - 2 - - 9 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - OBJCOPY - 0 - - 1 - 1 - 0 - - - - - - - - - CUSTOM - 3 - - - - - - - BICOMP - 0 - - - - BUILDACTION - 1 - - - - - - - ILINK - 0 - - 16 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IARCHIVE - 0 - - 0 - 1 - 0 - - - - - - - BILINK - 0 - - - - - src - - app - - include - - $PROJ_DIR$\..\src\app\include\config.h - - - $PROJ_DIR$\..\src\app\include\debug.h - - - $PROJ_DIR$\..\src\app\include\display.h - - - $PROJ_DIR$\..\src\app\include\flash.h - - - $PROJ_DIR$\..\src\app\include\input.h - - - $PROJ_DIR$\..\src\app\include\isr.h - - - $PROJ_DIR$\..\src\app\include\key.h - - - $PROJ_DIR$\..\src\app\include\knob.h - - - $PROJ_DIR$\..\src\app\include\output.h - - - $PROJ_DIR$\..\src\app\include\plan_handle.h - - - $PROJ_DIR$\..\src\app\include\pm_time.h - - - $PROJ_DIR$\..\src\app\include\setup.h - - - $PROJ_DIR$\..\src\app\include\simulat_timer.h - - - $PROJ_DIR$\..\src\app\include\tft.h - - - - $PROJ_DIR$\..\src\app\debug.c - - - $PROJ_DIR$\..\src\app\display.c - - - $PROJ_DIR$\..\src\app\flash.c - - - $PROJ_DIR$\..\src\app\input.c - - - $PROJ_DIR$\..\src\app\isr.c - - - $PROJ_DIR$\..\src\app\key.c - - - $PROJ_DIR$\..\src\app\knob.c - - - $PROJ_DIR$\..\src\app\main.c - - - $PROJ_DIR$\..\src\app\NormalDemo_Flash.c - - Debug - - - - $PROJ_DIR$\..\src\app\output.c - - - $PROJ_DIR$\..\src\app\plan_handle.c - - - $PROJ_DIR$\..\src\app\pm_init.c - - - $PROJ_DIR$\..\src\app\pm_time.c - - - $PROJ_DIR$\..\src\app\simulat_timer.c - - - $PROJ_DIR$\..\src\app\tft.c - - - - common - - $PROJ_DIR$\..\src\common\alloc.c - - - $PROJ_DIR$\..\src\common\assert.c - - - $PROJ_DIR$\..\src\common\common.c - - - $PROJ_DIR$\..\src\common\io.c - - - $PROJ_DIR$\..\src\common\memtest.c - - - $PROJ_DIR$\..\src\common\printf.c - - - $PROJ_DIR$\..\src\common\queue.c - - - $PROJ_DIR$\..\src\common\startup.c - - - $PROJ_DIR$\..\src\common\uif.c - - - - cpu - - $PROJ_DIR$\..\src\cpu\arm_cm0.c - - - $PROJ_DIR$\..\src\cpu\crt0.s - - - $PROJ_DIR$\..\src\cpu\start.c - - - $PROJ_DIR$\..\src\cpu\sysinit.c - - - $PROJ_DIR$\..\src\cpu\vectors.c - - - - drivers - - FTFx - - source - - $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c - - - - - $PROJ_DIR$\..\src\drivers\adc.c - - - $PROJ_DIR$\..\src\drivers\cmp.c - - - $PROJ_DIR$\..\src\drivers\dac.c - - - $PROJ_DIR$\..\src\drivers\dma.c - - - $PROJ_DIR$\..\src\drivers\gpio.c - - - $PROJ_DIR$\..\src\drivers\i2c.c - - - $PROJ_DIR$\..\src\drivers\lptmr.c - - - $PROJ_DIR$\..\src\drivers\mcg.c - - - $PROJ_DIR$\..\src\drivers\pit.c - - - $PROJ_DIR$\..\src\drivers\port.c - - - $PROJ_DIR$\..\src\drivers\rtc.c - - - $PROJ_DIR$\..\src\drivers\SPI.c - - - $PROJ_DIR$\..\src\drivers\systick.c - - - $PROJ_DIR$\..\src\drivers\tick_timer.c - - - $PROJ_DIR$\..\src\drivers\tpm.c - - - $PROJ_DIR$\..\src\drivers\tsi.c - - - $PROJ_DIR$\..\src\drivers\uart.c - - - - include - - common - - $PROJ_DIR$\..\src\include\common\assert.h - - - $PROJ_DIR$\..\src\include\common\common.h - - - $PROJ_DIR$\..\src\include\common\io.h - - - $PROJ_DIR$\..\src\include\common\memtest.h - - - $PROJ_DIR$\..\src\include\common\queue.h - - - $PROJ_DIR$\..\src\include\common\startup.h - - - $PROJ_DIR$\..\src\include\common\stdlib.h - - - $PROJ_DIR$\..\src\include\common\typedef.h - - - $PROJ_DIR$\..\src\include\common\uif.h - - - - cpu - - $PROJ_DIR$\..\src\include\cpu\arm_cm0.h - - - $PROJ_DIR$\..\src\include\cpu\dma_channels.h - - - $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h - - - $PROJ_DIR$\..\src\include\cpu\sysinit.h - - - $PROJ_DIR$\..\src\include\cpu\vectors.h - - - - drivers - - $PROJ_DIR$\..\src\include\drivers\adc.h - - - $PROJ_DIR$\..\src\include\drivers\cmp.h - - - $PROJ_DIR$\..\src\include\drivers\dac.h - - - $PROJ_DIR$\..\src\include\drivers\dma.h - - - $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h - - - $PROJ_DIR$\..\src\include\drivers\gpio.h - - - $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\i2c.h - - - $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\include.h - - - $PROJ_DIR$\..\src\include\drivers\lptmr.h - - - $PROJ_DIR$\..\src\include\drivers\mcg.h - - - $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\pit.h - - - $PROJ_DIR$\..\src\include\drivers\port.h - - - $PROJ_DIR$\..\src\include\drivers\rtc.h - - - $PROJ_DIR$\..\src\include\drivers\SPI.h - - - $PROJ_DIR$\..\src\include\drivers\systick.h - - - $PROJ_DIR$\..\src\include\drivers\tick_timer.h - - - $PROJ_DIR$\..\src\include\drivers\tpm.h - - - $PROJ_DIR$\..\src\include\drivers\tsi.h - - - $PROJ_DIR$\..\src\include\drivers\uart.h - - - - platforms - - $PROJ_DIR$\..\src\include\platforms\freedom.h - - - $PROJ_DIR$\..\src\include\platforms\tower.h - - - - - other - - $PROJ_DIR$\..\src\other\LandzoOLED.c - - Debug - - - - $PROJ_DIR$\..\src\other\LandzoOLED.h - - - - platforms - - - - - + + + + 2 + + Debug + + ARM + + 1 + + General + 3 + + 22 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ICCARM + 2 + + 31 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AARM + 2 + + 9 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + OBJCOPY + 0 + + 1 + 1 + 1 + + + + + + + + + CUSTOM + 3 + + + + + + + BICOMP + 0 + + + + BUILDACTION + 1 + + + + + + + ILINK + 0 + + 16 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IARCHIVE + 0 + + 0 + 1 + 1 + + + + + + + BILINK + 0 + + + + + Release + + ARM + + 0 + + General + 3 + + 22 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ICCARM + 2 + + 31 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AARM + 2 + + 9 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + OBJCOPY + 0 + + 1 + 1 + 0 + + + + + + + + + CUSTOM + 3 + + + + + + + BICOMP + 0 + + + + BUILDACTION + 1 + + + + + + + ILINK + 0 + + 16 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + IARCHIVE + 0 + + 0 + 1 + 0 + + + + + + + BILINK + 0 + + + + + src + + app + + include + + $PROJ_DIR$\..\src\app\include\config.h + + + $PROJ_DIR$\..\src\app\include\debug.h + + + $PROJ_DIR$\..\src\app\include\isr.h + + + $PROJ_DIR$\..\src\app\include\key.h + + + $PROJ_DIR$\..\src\app\include\knob.h + + + $PROJ_DIR$\..\src\app\include\output.h + + + $PROJ_DIR$\..\src\app\include\plan_handle.h + + + $PROJ_DIR$\..\src\app\include\pm_flash.h + + + $PROJ_DIR$\..\src\app\include\pm_flash_cfg.h + + + $PROJ_DIR$\..\src\app\include\pm_init.h + + + $PROJ_DIR$\..\src\app\include\pm_time.h + + + $PROJ_DIR$\..\src\app\include\simulat_timer.h + + + $PROJ_DIR$\..\src\app\include\tft.h + + + $PROJ_DIR$\..\src\app\include\tft_plan_internal.h + + + $PROJ_DIR$\..\src\app\include\water.h + + + + $PROJ_DIR$\..\src\app\debug.c + + + $PROJ_DIR$\..\src\app\isr.c + + + $PROJ_DIR$\..\src\app\key.c + + + $PROJ_DIR$\..\src\app\knob.c + + + $PROJ_DIR$\..\src\app\main.c + + + $PROJ_DIR$\..\src\app\orient.c + + + $PROJ_DIR$\..\src\app\output.c + + + $PROJ_DIR$\..\src\app\plan_handle.c + + + $PROJ_DIR$\..\src\app\pm_flash.c + + + $PROJ_DIR$\..\src\app\pm_init.c + + + $PROJ_DIR$\..\src\app\pm_time.c + + + $PROJ_DIR$\..\src\app\simulat_timer.c + + + $PROJ_DIR$\..\src\app\tft.c + + + $PROJ_DIR$\..\src\app\water.c + + + + common + + $PROJ_DIR$\..\src\common\alloc.c + + + $PROJ_DIR$\..\src\common\assert.c + + + $PROJ_DIR$\..\src\common\common.c + + + $PROJ_DIR$\..\src\common\io.c + + + $PROJ_DIR$\..\src\common\memtest.c + + + $PROJ_DIR$\..\src\common\printf.c + + + $PROJ_DIR$\..\src\common\queue.c + + + $PROJ_DIR$\..\src\common\startup.c + + + $PROJ_DIR$\..\src\common\uif.c + + + + cpu + + $PROJ_DIR$\..\src\cpu\arm_cm0.c + + + $PROJ_DIR$\..\src\cpu\crt0.s + + + $PROJ_DIR$\..\src\cpu\start.c + + + $PROJ_DIR$\..\src\cpu\sysinit.c + + + $PROJ_DIR$\..\src\cpu\vectors.c + + + + drivers + + FTFx + + source + + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + + + + + $PROJ_DIR$\..\src\drivers\adc.c + + + $PROJ_DIR$\..\src\drivers\cmp.c + + + $PROJ_DIR$\..\src\drivers\dac.c + + + $PROJ_DIR$\..\src\drivers\dma.c + + + $PROJ_DIR$\..\src\drivers\gpio.c + + + $PROJ_DIR$\..\src\drivers\i2c.c + + + $PROJ_DIR$\..\src\drivers\lptmr.c + + + $PROJ_DIR$\..\src\drivers\mcg.c + + + $PROJ_DIR$\..\src\drivers\pit.c + + + $PROJ_DIR$\..\src\drivers\port.c + + + $PROJ_DIR$\..\src\drivers\rtc.c + + + $PROJ_DIR$\..\src\drivers\SPI.c + + + $PROJ_DIR$\..\src\drivers\systick.c + + + $PROJ_DIR$\..\src\drivers\tick_timer.c + + + $PROJ_DIR$\..\src\drivers\tpm.c + + + $PROJ_DIR$\..\src\drivers\tsi.c + + + $PROJ_DIR$\..\src\drivers\uart.c + + + + include + + common + + $PROJ_DIR$\..\src\include\common\assert.h + + + $PROJ_DIR$\..\src\include\common\common.h + + + $PROJ_DIR$\..\src\include\common\io.h + + + $PROJ_DIR$\..\src\include\common\memtest.h + + + $PROJ_DIR$\..\src\include\common\queue.h + + + $PROJ_DIR$\..\src\include\common\startup.h + + + $PROJ_DIR$\..\src\include\common\stdlib.h + + + $PROJ_DIR$\..\src\include\common\typedef.h + + + $PROJ_DIR$\..\src\include\common\uif.h + + + + cpu + + $PROJ_DIR$\..\src\include\cpu\arm_cm0.h + + + $PROJ_DIR$\..\src\include\cpu\dma_channels.h + + + $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h + + + $PROJ_DIR$\..\src\include\cpu\sysinit.h + + + $PROJ_DIR$\..\src\include\cpu\vectors.h + + + + drivers + + $PROJ_DIR$\..\src\include\drivers\adc.h + + + $PROJ_DIR$\..\src\include\drivers\cmp.h + + + $PROJ_DIR$\..\src\include\drivers\dac.h + + + $PROJ_DIR$\..\src\include\drivers\dma.h + + + $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h + + + $PROJ_DIR$\..\src\include\drivers\gpio.h + + + $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\i2c.h + + + $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\include.h + + + $PROJ_DIR$\..\src\include\drivers\lptmr.h + + + $PROJ_DIR$\..\src\include\drivers\mcg.h + + + $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\pit.h + + + $PROJ_DIR$\..\src\include\drivers\port.h + + + $PROJ_DIR$\..\src\include\drivers\rtc.h + + + $PROJ_DIR$\..\src\include\drivers\SPI.h + + + $PROJ_DIR$\..\src\include\drivers\systick.h + + + $PROJ_DIR$\..\src\include\drivers\tick_timer.h + + + $PROJ_DIR$\..\src\include\drivers\tpm.h + + + $PROJ_DIR$\..\src\include\drivers\tsi.h + + + $PROJ_DIR$\..\src\include\drivers\uart.h + + + + platforms + + $PROJ_DIR$\..\src\include\platforms\freedom.h + + + $PROJ_DIR$\..\src\include\platforms\tower.h + + + + + other + + $PROJ_DIR$\..\src\other\LandzoOLED.c + + Debug + + + + $PROJ_DIR$\..\src\other\LandzoOLED.h + + + + platforms + + + + + diff --git a/plan_manage_main/ewp/plan_manage_main.ewt b/plan_manage_main/ewp/plan_manage_main.ewt index 4a19aeb..1497126 100644 --- a/plan_manage_main/ewp/plan_manage_main.ewt +++ b/plan_manage_main/ewp/plan_manage_main.ewt @@ -1,616 +1,616 @@ - - - - 2 - - Debug - - ARM - - 1 - - RuntimeChecking - 0 - - 2 - 1 - 1 - - - - - - - - - - - - - - - - - - - - - - Release - - ARM - - 0 - - RuntimeChecking - 0 - - 2 - 1 - 0 - - - - - - - - - - - - - - - - - - - - - - src - - app - - include - - $PROJ_DIR$\..\src\app\include\config.h - - - $PROJ_DIR$\..\src\app\include\debug.h - - - $PROJ_DIR$\..\src\app\include\display.h - - - $PROJ_DIR$\..\src\app\include\flash.h - - - $PROJ_DIR$\..\src\app\include\input.h - - - $PROJ_DIR$\..\src\app\include\isr.h - - - $PROJ_DIR$\..\src\app\include\key.h - - - $PROJ_DIR$\..\src\app\include\knob.h - - - $PROJ_DIR$\..\src\app\include\output.h - - - $PROJ_DIR$\..\src\app\include\plan_handle.h - - - $PROJ_DIR$\..\src\app\include\pm_time.h - - - $PROJ_DIR$\..\src\app\include\setup.h - - - $PROJ_DIR$\..\src\app\include\simulat_timer.h - - - $PROJ_DIR$\..\src\app\include\tft.h - - - - $PROJ_DIR$\..\src\app\debug.c - - - $PROJ_DIR$\..\src\app\display.c - - - $PROJ_DIR$\..\src\app\flash.c - - - $PROJ_DIR$\..\src\app\input.c - - - $PROJ_DIR$\..\src\app\isr.c - - - $PROJ_DIR$\..\src\app\key.c - - - $PROJ_DIR$\..\src\app\knob.c - - - $PROJ_DIR$\..\src\app\main.c - - - $PROJ_DIR$\..\src\app\NormalDemo_Flash.c - - - $PROJ_DIR$\..\src\app\output.c - - - $PROJ_DIR$\..\src\app\plan_handle.c - - - $PROJ_DIR$\..\src\app\pm_init.c - - - $PROJ_DIR$\..\src\app\pm_time.c - - - $PROJ_DIR$\..\src\app\simulat_timer.c - - - $PROJ_DIR$\..\src\app\tft.c - - - - common - - $PROJ_DIR$\..\src\common\alloc.c - - - $PROJ_DIR$\..\src\common\assert.c - - - $PROJ_DIR$\..\src\common\common.c - - - $PROJ_DIR$\..\src\common\io.c - - - $PROJ_DIR$\..\src\common\memtest.c - - - $PROJ_DIR$\..\src\common\printf.c - - - $PROJ_DIR$\..\src\common\queue.c - - - $PROJ_DIR$\..\src\common\startup.c - - - $PROJ_DIR$\..\src\common\uif.c - - - - cpu - - $PROJ_DIR$\..\src\cpu\arm_cm0.c - - - $PROJ_DIR$\..\src\cpu\crt0.s - - - $PROJ_DIR$\..\src\cpu\start.c - - - $PROJ_DIR$\..\src\cpu\sysinit.c - - - $PROJ_DIR$\..\src\cpu\vectors.c - - - - drivers - - FTFx - - source - - $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c - - - $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c - - - - - $PROJ_DIR$\..\src\drivers\adc.c - - - $PROJ_DIR$\..\src\drivers\cmp.c - - - $PROJ_DIR$\..\src\drivers\dac.c - - - $PROJ_DIR$\..\src\drivers\dma.c - - - $PROJ_DIR$\..\src\drivers\gpio.c - - - $PROJ_DIR$\..\src\drivers\i2c.c - - - $PROJ_DIR$\..\src\drivers\lptmr.c - - - $PROJ_DIR$\..\src\drivers\mcg.c - - - $PROJ_DIR$\..\src\drivers\pit.c - - - $PROJ_DIR$\..\src\drivers\port.c - - - $PROJ_DIR$\..\src\drivers\rtc.c - - - $PROJ_DIR$\..\src\drivers\SPI.c - - - $PROJ_DIR$\..\src\drivers\systick.c - - - $PROJ_DIR$\..\src\drivers\tick_timer.c - - - $PROJ_DIR$\..\src\drivers\tpm.c - - - $PROJ_DIR$\..\src\drivers\tsi.c - - - $PROJ_DIR$\..\src\drivers\uart.c - - - - include - - common - - $PROJ_DIR$\..\src\include\common\assert.h - - - $PROJ_DIR$\..\src\include\common\common.h - - - $PROJ_DIR$\..\src\include\common\io.h - - - $PROJ_DIR$\..\src\include\common\memtest.h - - - $PROJ_DIR$\..\src\include\common\queue.h - - - $PROJ_DIR$\..\src\include\common\startup.h - - - $PROJ_DIR$\..\src\include\common\stdlib.h - - - $PROJ_DIR$\..\src\include\common\typedef.h - - - $PROJ_DIR$\..\src\include\common\uif.h - - - - cpu - - $PROJ_DIR$\..\src\include\cpu\arm_cm0.h - - - $PROJ_DIR$\..\src\include\cpu\dma_channels.h - - - $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h - - - $PROJ_DIR$\..\src\include\cpu\sysinit.h - - - $PROJ_DIR$\..\src\include\cpu\vectors.h - - - - drivers - - $PROJ_DIR$\..\src\include\drivers\adc.h - - - $PROJ_DIR$\..\src\include\drivers\cmp.h - - - $PROJ_DIR$\..\src\include\drivers\dac.h - - - $PROJ_DIR$\..\src\include\drivers\dma.h - - - $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h - - - $PROJ_DIR$\..\src\include\drivers\gpio.h - - - $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\i2c.h - - - $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\include.h - - - $PROJ_DIR$\..\src\include\drivers\lptmr.h - - - $PROJ_DIR$\..\src\include\drivers\mcg.h - - - $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h - - - $PROJ_DIR$\..\src\include\drivers\pit.h - - - $PROJ_DIR$\..\src\include\drivers\port.h - - - $PROJ_DIR$\..\src\include\drivers\rtc.h - - - $PROJ_DIR$\..\src\include\drivers\SPI.h - - - $PROJ_DIR$\..\src\include\drivers\systick.h - - - $PROJ_DIR$\..\src\include\drivers\tick_timer.h - - - $PROJ_DIR$\..\src\include\drivers\tpm.h - - - $PROJ_DIR$\..\src\include\drivers\tsi.h - - - $PROJ_DIR$\..\src\include\drivers\uart.h - - - - platforms - - $PROJ_DIR$\..\src\include\platforms\freedom.h - - - $PROJ_DIR$\..\src\include\platforms\tower.h - - - - - other - - $PROJ_DIR$\..\src\other\LandzoOLED.c - - - $PROJ_DIR$\..\src\other\LandzoOLED.h - - - - platforms - - - - - + + + + 2 + + Debug + + ARM + + 1 + + RuntimeChecking + 0 + + 2 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + Release + + ARM + + 0 + + RuntimeChecking + 0 + + 2 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + src + + app + + include + + $PROJ_DIR$\..\src\app\include\config.h + + + $PROJ_DIR$\..\src\app\include\debug.h + + + $PROJ_DIR$\..\src\app\include\isr.h + + + $PROJ_DIR$\..\src\app\include\key.h + + + $PROJ_DIR$\..\src\app\include\knob.h + + + $PROJ_DIR$\..\src\app\include\output.h + + + $PROJ_DIR$\..\src\app\include\plan_handle.h + + + $PROJ_DIR$\..\src\app\include\pm_flash.h + + + $PROJ_DIR$\..\src\app\include\pm_flash_cfg.h + + + $PROJ_DIR$\..\src\app\include\pm_init.h + + + $PROJ_DIR$\..\src\app\include\pm_time.h + + + $PROJ_DIR$\..\src\app\include\simulat_timer.h + + + $PROJ_DIR$\..\src\app\include\tft.h + + + $PROJ_DIR$\..\src\app\include\tft_plan_internal.h + + + $PROJ_DIR$\..\src\app\include\water.h + + + + $PROJ_DIR$\..\src\app\debug.c + + + $PROJ_DIR$\..\src\app\isr.c + + + $PROJ_DIR$\..\src\app\key.c + + + $PROJ_DIR$\..\src\app\knob.c + + + $PROJ_DIR$\..\src\app\main.c + + + $PROJ_DIR$\..\src\app\orient.c + + + $PROJ_DIR$\..\src\app\output.c + + + $PROJ_DIR$\..\src\app\plan_handle.c + + + $PROJ_DIR$\..\src\app\pm_flash.c + + + $PROJ_DIR$\..\src\app\pm_init.c + + + $PROJ_DIR$\..\src\app\pm_time.c + + + $PROJ_DIR$\..\src\app\simulat_timer.c + + + $PROJ_DIR$\..\src\app\tft.c + + + $PROJ_DIR$\..\src\app\water.c + + + + common + + $PROJ_DIR$\..\src\common\alloc.c + + + $PROJ_DIR$\..\src\common\assert.c + + + $PROJ_DIR$\..\src\common\common.c + + + $PROJ_DIR$\..\src\common\io.c + + + $PROJ_DIR$\..\src\common\memtest.c + + + $PROJ_DIR$\..\src\common\printf.c + + + $PROJ_DIR$\..\src\common\queue.c + + + $PROJ_DIR$\..\src\common\startup.c + + + $PROJ_DIR$\..\src\common\uif.c + + + + cpu + + $PROJ_DIR$\..\src\cpu\arm_cm0.c + + + $PROJ_DIR$\..\src\cpu\crt0.s + + + $PROJ_DIR$\..\src\cpu\start.c + + + $PROJ_DIR$\..\src\cpu\sysinit.c + + + $PROJ_DIR$\..\src\cpu\vectors.c + + + + drivers + + FTFx + + source + + $PROJ_DIR$\..\src\drivers\FTFx\source\CopyToRam.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DEFlashPartition.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\DFlashSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EEEWrite.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\EERAMSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCheckSum.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashCommandSequence.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseAllBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseResume.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSector.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashEraseSuspend.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashGetSecurityState.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashInit.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgram.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramCheck.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramOnce.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashProgramSection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadOnce.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashReadResource.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashSecurityBypass.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyAllBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifyBlock.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\FlashVerifySection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashGetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSetProtection.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwap.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\PFlashSwapCtl.c + + + $PROJ_DIR$\..\src\drivers\FTFx\source\SetEEEEnable.c + + + + + $PROJ_DIR$\..\src\drivers\adc.c + + + $PROJ_DIR$\..\src\drivers\cmp.c + + + $PROJ_DIR$\..\src\drivers\dac.c + + + $PROJ_DIR$\..\src\drivers\dma.c + + + $PROJ_DIR$\..\src\drivers\gpio.c + + + $PROJ_DIR$\..\src\drivers\i2c.c + + + $PROJ_DIR$\..\src\drivers\lptmr.c + + + $PROJ_DIR$\..\src\drivers\mcg.c + + + $PROJ_DIR$\..\src\drivers\pit.c + + + $PROJ_DIR$\..\src\drivers\port.c + + + $PROJ_DIR$\..\src\drivers\rtc.c + + + $PROJ_DIR$\..\src\drivers\SPI.c + + + $PROJ_DIR$\..\src\drivers\systick.c + + + $PROJ_DIR$\..\src\drivers\tick_timer.c + + + $PROJ_DIR$\..\src\drivers\tpm.c + + + $PROJ_DIR$\..\src\drivers\tsi.c + + + $PROJ_DIR$\..\src\drivers\uart.c + + + + include + + common + + $PROJ_DIR$\..\src\include\common\assert.h + + + $PROJ_DIR$\..\src\include\common\common.h + + + $PROJ_DIR$\..\src\include\common\io.h + + + $PROJ_DIR$\..\src\include\common\memtest.h + + + $PROJ_DIR$\..\src\include\common\queue.h + + + $PROJ_DIR$\..\src\include\common\startup.h + + + $PROJ_DIR$\..\src\include\common\stdlib.h + + + $PROJ_DIR$\..\src\include\common\typedef.h + + + $PROJ_DIR$\..\src\include\common\uif.h + + + + cpu + + $PROJ_DIR$\..\src\include\cpu\arm_cm0.h + + + $PROJ_DIR$\..\src\include\cpu\dma_channels.h + + + $PROJ_DIR$\..\src\include\cpu\MKL25Z4.h + + + $PROJ_DIR$\..\src\include\cpu\sysinit.h + + + $PROJ_DIR$\..\src\include\cpu\vectors.h + + + + drivers + + $PROJ_DIR$\..\src\include\drivers\adc.h + + + $PROJ_DIR$\..\src\include\drivers\cmp.h + + + $PROJ_DIR$\..\src\include\drivers\dac.h + + + $PROJ_DIR$\..\src\include\drivers\dma.h + + + $PROJ_DIR$\..\src\include\drivers\fire_drivers_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\Fire_kinetis_MCG_CFG.h + + + $PROJ_DIR$\..\src\include\drivers\gpio.h + + + $PROJ_DIR$\..\src\include\drivers\gpio_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\i2c.h + + + $PROJ_DIR$\..\src\include\drivers\i2c_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\include.h + + + $PROJ_DIR$\..\src\include\drivers\lptmr.h + + + $PROJ_DIR$\..\src\include\drivers\mcg.h + + + $PROJ_DIR$\..\src\include\drivers\mcg_cfg.h + + + $PROJ_DIR$\..\src\include\drivers\pit.h + + + $PROJ_DIR$\..\src\include\drivers\port.h + + + $PROJ_DIR$\..\src\include\drivers\rtc.h + + + $PROJ_DIR$\..\src\include\drivers\SPI.h + + + $PROJ_DIR$\..\src\include\drivers\systick.h + + + $PROJ_DIR$\..\src\include\drivers\tick_timer.h + + + $PROJ_DIR$\..\src\include\drivers\tpm.h + + + $PROJ_DIR$\..\src\include\drivers\tsi.h + + + $PROJ_DIR$\..\src\include\drivers\uart.h + + + + platforms + + $PROJ_DIR$\..\src\include\platforms\freedom.h + + + $PROJ_DIR$\..\src\include\platforms\tower.h + + + + + other + + $PROJ_DIR$\..\src\other\LandzoOLED.c + + + $PROJ_DIR$\..\src\other\LandzoOLED.h + + + + platforms + + + + + diff --git a/plan_manage_main/ewp/settings/plan_manage_main.Debug.cspy.bat b/plan_manage_main/ewp/settings/plan_manage_main.Debug.cspy.bat index 05e784b..6081a0f 100644 --- a/plan_manage_main/ewp/settings/plan_manage_main.Debug.cspy.bat +++ b/plan_manage_main/ewp/settings/plan_manage_main.Debug.cspy.bat @@ -1,24 +1,24 @@ -@REM This batch file has been generated by the IAR Embedded Workbench -@REM C-SPY Debugger, as an aid to preparing a command line for running -@REM the cspybat command line utility using the appropriate settings. -@REM -@REM Note that this file is generated every time a new debug session -@REM is initialized, so you may want to move or rename the file before -@REM making changes. -@REM -@REM You can launch cspybat by typing the name of this batch file followed -@REM by the name of the debug file (usually an ELF/DWARF or UBROF file). -@REM -@REM Read about available command line parameters in the C-SPY Debugging -@REM Guide. Hints about additional command line parameters that may be -@REM useful in specific cases: -@REM --download_only Downloads a code image without starting a debug -@REM session afterwards. -@REM --silent Omits the sign-on message. -@REM --timeout Limits the maximum allowed execution time. -@REM - - -"D:\work_soft\iar\arm\common\bin\cspybat" "D:\work_soft\iar\arm\arm\bin\armproc.dll" "D:\work_soft\iar\arm\arm\bin\armjlink.dll" %1 --plugin "D:\work_soft\iar\arm\arm\bin\armbat.dll" --device_macro "D:\work_soft\iar\arm\arm\config\debugger\Freescale\Kinetis.dmac" --backend -B "--endian=little" "--cpu=Cortex-M0+" "--fpu=None" "-p" "D:\work_soft\iar\arm\arm\CONFIG\debugger\Freescale\MKL25Z128xxx4.ddf" "--semihosting" "--device=MKL25Z128xxx4" "--drv_mtb_regbase=0xF0000000" "--drv_mtb_dwtregbase=0xF0001000" "--drv_mtb_minramaddr=0x20000000" "--drv_mtb_maxramaddr=0x20002FFF" "--drv_communication=USB0" "--jlink_speed=auto" "--jlink_initial_speed=1000" "--jlink_reset_strategy=0,0" "--jlink_interface=SWD" "--drv_catch_exceptions=0x000" "--drv_swo_clock_setup=72000000,0,2000000" - - +@REM This batch file has been generated by the IAR Embedded Workbench +@REM C-SPY Debugger, as an aid to preparing a command line for running +@REM the cspybat command line utility using the appropriate settings. +@REM +@REM Note that this file is generated every time a new debug session +@REM is initialized, so you may want to move or rename the file before +@REM making changes. +@REM +@REM You can launch cspybat by typing the name of this batch file followed +@REM by the name of the debug file (usually an ELF/DWARF or UBROF file). +@REM +@REM Read about available command line parameters in the C-SPY Debugging +@REM Guide. Hints about additional command line parameters that may be +@REM useful in specific cases: +@REM --download_only Downloads a code image without starting a debug +@REM session afterwards. +@REM --silent Omits the sign-on message. +@REM --timeout Limits the maximum allowed execution time. +@REM + + +"D:\work_soft\iar\arm\common\bin\cspybat" "D:\work_soft\iar\arm\arm\bin\armproc.dll" "D:\work_soft\iar\arm\arm\bin\armjlink.dll" %1 --plugin "D:\work_soft\iar\arm\arm\bin\armbat.dll" --device_macro "D:\work_soft\iar\arm\arm\config\debugger\Freescale\Kinetis.dmac" --backend -B "--endian=little" "--cpu=Cortex-M0+" "--fpu=None" "-p" "D:\work_soft\iar\arm\arm\CONFIG\debugger\Freescale\MKL25Z128xxx4.ddf" "--drv_attach_to_program" "--semihosting" "--device=MKL25Z128xxx4" "--drv_mtb_regbase=0xF0000000" "--drv_mtb_dwtregbase=0xF0001000" "--drv_mtb_minramaddr=0x20000000" "--drv_mtb_maxramaddr=0x20002FFF" "--drv_communication=USB0" "--jlink_speed=auto" "--jlink_initial_speed=1000" "--jlink_reset_strategy=0,0" "--jlink_interface=SWD" "--drv_catch_exceptions=0x000" "--drv_swo_clock_setup=72000000,0,2000000" + + diff --git a/plan_manage_main/ewp/settings/plan_manage_main.Release.cspy.bat b/plan_manage_main/ewp/settings/plan_manage_main.Release.cspy.bat new file mode 100644 index 0000000..6f72f63 --- /dev/null +++ b/plan_manage_main/ewp/settings/plan_manage_main.Release.cspy.bat @@ -0,0 +1,24 @@ +@REM This batch file has been generated by the IAR Embedded Workbench +@REM C-SPY Debugger, as an aid to preparing a command line for running +@REM the cspybat command line utility using the appropriate settings. +@REM +@REM Note that this file is generated every time a new debug session +@REM is initialized, so you may want to move or rename the file before +@REM making changes. +@REM +@REM You can launch cspybat by typing the name of this batch file followed +@REM by the name of the debug file (usually an ELF/DWARF or UBROF file). +@REM +@REM Read about available command line parameters in the C-SPY Debugging +@REM Guide. Hints about additional command line parameters that may be +@REM useful in specific cases: +@REM --download_only Downloads a code image without starting a debug +@REM session afterwards. +@REM --silent Omits the sign-on message. +@REM --timeout Limits the maximum allowed execution time. +@REM + + +"D:\work_soft\iar\arm\common\bin\cspybat" "D:\work_soft\iar\arm\arm\bin\armproc.dll" "D:\work_soft\iar\arm\arm\bin\armsim2.dll" %1 --plugin "D:\work_soft\iar\arm\arm\bin\armbat.dll" --device_macro "D:\work_soft\iar\arm\arm\config\debugger\Freescale\Kinetis.dmac" --backend -B "--endian=little" "--cpu=Cortex-M0+" "--fpu=None" "-p" "D:\work_soft\iar\arm\arm\CONFIG\debugger\Freescale\MKL25Z128xxx4.ddf" "--semihosting=none" "--device=MKL25Z128xxx4" "--drv_mtb_regbase=0xF0000000" "--drv_mtb_dwtregbase=0xF0001000" "--drv_mtb_minramaddr=0x20000000" "--drv_mtb_maxramaddr=0x20002FFF" "--multicore_nr_of_cores=1" + + diff --git a/plan_manage_main/ewp/settings/plan_manage_main.crun b/plan_manage_main/ewp/settings/plan_manage_main.crun index ef39dce..5bb5acc 100644 --- a/plan_manage_main/ewp/settings/plan_manage_main.crun +++ b/plan_manage_main/ewp/settings/plan_manage_main.crun @@ -1,16 +1,16 @@ - - - - 1 - - - * - * - * - 0 - 1 - - - - - + + + + 1 + + + * + * + * + 0 + 1 + + + + + diff --git a/plan_manage_main/ewp/settings/plan_manage_main.dbgdt b/plan_manage_main/ewp/settings/plan_manage_main.dbgdt index 1980d91..62bab7d 100644 --- a/plan_manage_main/ewp/settings/plan_manage_main.dbgdt +++ b/plan_manage_main/ewp/settings/plan_manage_main.dbgdt @@ -1,59 +1,59 @@ - - - - - - - - - 300BuildFind-All-References201221 - - 20 - 915 - 244 - 61 - 300Debug-LogFind-All-References - - - - - - - 146272727 - 100 - - - - - Disassembly_I0 - - - - 50020 - - - - 20011 - 44062754300Debug-LogBuildtft_cmd_strtft_cmd_strin_lmtcmd(*time).secdatadataExpressionLocationTypeValue108881004920020010 - - - - - TabID-2687-32655DisassemblyDisassemblyTabID-13739-12371MemoryMemory0131022131022100000163581TabID-22459-12822Debug LogDebug-Log0 - - - - - - TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\CopyToRam.c000003837893789TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashInit.c000006588798879TextEditor$WS_DIR$\plan_manage_main\src\include\cpu\arm_cm0.h000005419131913TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_Types.h000009950305030TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\PFlashSwap.c000008458705870TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashCheckSum.c000007045954595TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Internal.h0000011784268426TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\user_cfg.h000000350350TextEditor$WS_DIR$\plan_manage_main\src\app\include\config.h0000018158158TextEditor$WS_DIR$\plan_manage_main\src\app\tft.c0000098400TextEditor$WS_DIR$\plan_manage_main\src\app\plan_handle.c00000000TextEditor$WS_DIR$\plan_manage_main\src\app\pm_init.c00000000TextEditor$WS_DIR$\plan_manage_main\src\app\pm_time.c0000029474487448TextEditor$WS_DIR$\plan_manage_main\src\app\NormalDemo_Flash.c000009257605760TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\demo_cfg.h000003429892989TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Common.h000001991795717957TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h000006843774377TextEditor$WS_DIR$\plan_manage_main\src\app\flash.c00002716773773TextEditor$WS_DIR$\plan_manage_main\src\app\main.c0000012649649TextEditor$WS_DIR$\plan_manage_main\src\app\include\flash.h000004430163016TextEditor$WS_DIR$\plan_manage_main\src\drivers\uart.c0000029789758975TextEditor$WS_DIR$\plan_manage_main\src\common\io.c0000016715715TextEditor$WS_DIR$\plan_manage_main\src\common\printf.c000005721619616196TextEditor$WS_DIR$\plan_manage_main\src\cpu\vectors.c000008021472147TextEditor$WS_DIR$\plan_manage_main\src\cpu\start.c000000601601TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashProgram.c0000011560936093250100000010000001 - - - - - - - iaridepm.enu1debuggergui.enu1armjlink.enu1-2-2435559-2-2204148156562203857430545601928-2-21981305-2-213072001003070275482153492275482 - - - - + + + + + + + + + 300201221 + + 20 + 915 + 244 + 61 + 300Debug-LogFind-All-References + + + + + + + 146272727 + 100 + + + + + Disassembly_I0 + + + + 50020 + 0x1fc00 + + + 20011 + 300Debug-LogBuild44062754tft_cmd_strtft_cmd_strin_lmtcmd(*time).secdatadatatft_cmd_strSTART_YEARstctr_bg_secctr_ed_secsys_secind->bg_tcalsecnamekvp_obj_set[objn][i].keyExpressionLocationTypeValue13788100178200200200DisassemblyMemory10200ExpressionLocationTypeValue209150100100saddrplan_inretflashSSDConfig44062754 + + + + + TabID-2162-1222Debug LogDebug-LogTabID-14767-3592ReferencesFind-All-ReferencesTabID-24010-5544Ambiguous DefinitionsSelect-Ambiguous-Definitions0TabID-30617-31843Watch 1WATCH_10 + + + + + + TextEditor$WS_DIR$\plan_manage_main\src\app\include\plan_handle.h00000000TextEditor$WS_DIR$\plan_manage_main\Debug\List\plan_manage_main.map0000032700TextEditor$WS_DIR$\plan_manage_main\src\cpu\crt0.s000000242242TextEditor$WS_DIR$\plan_manage_main\src\common\io.c000000715715TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Internal.h000001621195311953TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashCommandSequence.c000004744644464TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx.h000005649194919TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h000007256895689TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Common.h000001961795717957TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashProgram.c000006540954095TextEditor$WS_DIR$\plan_manage_main\src\app\isr.c00000000TextEditor$WS_DIR$\plan_manage_main\src\drivers\pit.c00000000TextEditor$WS_DIR$\plan_manage_main\src\common\memtest.c00000000TextEditor$WS_DIR$\plan_manage_main\src\common\printf.c0000009090TextEditor$WS_DIR$\plan_manage_main\src\drivers\mcg.c000000435435TextEditor$WS_DIR$\plan_manage_main\src\app\output.c00000000TextEditor$WS_DIR$\plan_manage_main\src\drivers\uart.c0000033697859785TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\fire_drivers_cfg.h000000868876TextEditor$WS_DIR$\plan_manage_main\src\app\include\pm_flash.h000000113113TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\mcg.h0000038463463TextEditor$WS_DIR$\plan_manage_main\src\app\simulat_timer.c0000010122192219TextEditor$WS_DIR$\plan_manage_main\src\app\key.c0000018647914791TextEditor$WS_DIR$\plan_manage_main\src\app\debug.c0000054337337TextEditor$WS_DIR$\plan_manage_main\src\app\pm_flash.c000001517361736TextEditor$WS_DIR$\plan_manage_main\src\app\orient.c000000352352TextEditor$WS_DIR$\plan_manage_main\src\app\knob.c000003610861086TextEditor$WS_DIR$\plan_manage_main\src\app\include\orient.h000006175184TextEditor$WS_DIR$\plan_manage_main\src\app\pm_init.c000000110110TextEditor$WS_DIR$\plan_manage_main\src\app\include\config.h000001212291229TextEditor$WS_DIR$\plan_manage_main\src\drivers\gpio.c000009143004300TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\gpio.h000001421452145TextEditor$WS_DIR$\plan_manage_main\src\app\main.c00000037237231TextEditor$WS_DIR$\plan_manage_main\src\app\pm_time.c000008167686768TextEditor$WS_DIR$\plan_manage_main\src\app\plan_handle.c000003400TextEditor$WS_DIR$\plan_manage_main\src\app\tft.c0000096600TextEditor$WS_DIR$\plan_manage_main\src\app\include\tft.h000000397397TextEditor$WS_DIR$\plan_manage_main\src\app\include\tft_plan_internal.h0000005365360100000010000001 + + + + + + + iaridepm.enu1debuggergui.enu1armjlink.enu1-2-2622541-2-2200200156250203666424219635438-2-22671282-2-212842691003125273931255469662933 + + + + diff --git a/plan_manage_main/ewp/settings/plan_manage_main.dni b/plan_manage_main/ewp/settings/plan_manage_main.dni index a2aa31f..82d2a55 100644 --- a/plan_manage_main/ewp/settings/plan_manage_main.dni +++ b/plan_manage_main/ewp/settings/plan_manage_main.dni @@ -1,76 +1,118 @@ -[Stack] -FillEnabled=0 -OverflowWarningsEnabled=1 -WarningThreshold=90 -SpWarningsEnabled=1 -WarnLogOnly=1 -UseTrigger=1 -TriggerName=main -LimitSize=0 -ByteLimit=50 -[DebugChecksum] -Checksum=130347300 -[CodeCoverage] -Enabled=_ 0 -[Exceptions] -StopOnUncaught=_ 0 -StopOnThrow=_ 0 -[CallStack] -ShowArgs=0 -[Disassembly] -MixedMode=1 -[InterruptLog] -LogEnabled=0 -SumEnabled=0 -GraphEnabled=0 -ShowTimeLog=1 -ShowTimeSum=1 -SumSortOrder=0 -[DataLog] -LogEnabled=0 -SumEnabled=0 -GraphEnabled=0 -ShowTimeLog=1 -ShowTimeSum=1 -[Interrupts] -Enabled=1 -[MemConfig] -Base=1 -Manual=0 -Ddf=1 -TypeViol=0 -Stop=1 -[Simulator] -Freq=10000000 -MultiCoreRunAll=1 -[JLinkDriver] -CStepIntDis=_ 0 -TraceBufferSize=0x00010000 -TraceStallIfFIFOFull=0x00000000 -TracePortSize=0x00000004 -[Trace1] -Enabled=0 -ShowSource=1 -[Disassemble mode] -mode=0 -[Breakpoints2] -Bp0=_ 0 "EMUL_CODE" "{$PROJ_DIR$\..\src\app\flash.c}.156.9" 0 0 1 "" 0 "" 0 -Count=1 -[Log file] -LoggingEnabled=_ 0 -LogFile=_ "" -Category=_ 0 -[TermIOLog] -LoggingEnabled=_ 0 -LogFile=_ "" -[Aliases] -Count=0 -SuppressDialog=0 -[CallStackLog] -Enabled=0 -[DriverProfiling] -Enabled=0 -Mode=1 -Graph=0 -Symbiont=0 -Exclusions= +[Stack] +FillEnabled=0 +OverflowWarningsEnabled=1 +WarningThreshold=90 +SpWarningsEnabled=1 +WarnLogOnly=1 +UseTrigger=1 +TriggerName=main +LimitSize=0 +ByteLimit=50 +[DebugChecksum] +Checksum=2097835749 +[CodeCoverage] +Enabled=_ 0 +[Exceptions] +StopOnUncaught=_ 0 +StopOnThrow=_ 0 +[CallStack] +ShowArgs=0 +[Disassembly] +MixedMode=1 +[JLinkDriver] +CStepIntDis=_ 0 +TraceBufferSize=0x00010000 +TraceStallIfFIFOFull=0x00000000 +TracePortSize=0x00000004 +[SWOTraceHWSettings] +OverrideDefaultClocks=0 +CpuClock=72000000 +ClockAutoDetect=0 +ClockWanted=2000000 +JtagSpeed=2000000 +Prescaler=36 +TimeStampPrescIndex=0 +TimeStampPrescData=0 +PcSampCYCTAP=1 +PcSampPOSTCNT=15 +PcSampIndex=0 +DataLogMode=0 +ITMportsEnable=0 +ITMportsTermIO=0 +ITMportsLogFile=0 +ITMlogFile=$PROJ_DIR$\ITM.log +[SWOTraceWindow] +PcSampling=0 +InterruptLogs=0 +ForcedTimeStamps=0 +EventCPI=0 +EventEXC=0 +EventFOLD=0 +EventLSU=0 +EventSLEEP=0 +[PowerLog] +LogEnabled=0 +GraphEnabled=0 +ShowTimeLog=1 +ShowTimeSum=0 +Title_0=I0 +Symbol_0=0 4 1 +LiveEnabled=0 +LiveFile=PowerLogLive.log +[EventLog] +LogEnabled=0 +SumEnabled=0 +GraphEnabled=0 +ShowTimeLog=1 +ShowTimeSum=1 +SumSortOrder=0 +[Log file] +LoggingEnabled=_ 0 +LogFile=_ "" +Category=_ 0 +[TermIOLog] +LoggingEnabled=_ 0 +LogFile=_ "" +[CallStackLog] +Enabled=0 +[PowerProbe] +Frequency=10000 +Probe0=I0 +ProbeSetup0=2 1 1 2 0 0 +[DriverProfiling] +Enabled=0 +Mode=1 +Graph=0 +Symbiont=0 +Exclusions= +[InterruptLog] +LogEnabled=0 +SumEnabled=0 +GraphEnabled=0 +ShowTimeLog=1 +ShowTimeSum=1 +SumSortOrder=0 +[DataLog] +LogEnabled=0 +SumEnabled=0 +GraphEnabled=0 +ShowTimeLog=1 +ShowTimeSum=1 +[Interrupts] +Enabled=1 +[MemConfig] +Base=1 +Manual=0 +Ddf=1 +TypeViol=0 +Stop=1 +[Simulator] +Freq=10000000 +MultiCoreRunAll=1 +[Disassemble mode] +mode=0 +[Breakpoints2] +Count=0 +[Aliases] +Count=0 +SuppressDialog=0 diff --git a/plan_manage_main/res/pm_tft_001.HMI b/plan_manage_main/res/pm_tft_001.HMI new file mode 100644 index 0000000..a51ed0e Binary files /dev/null and b/plan_manage_main/res/pm_tft_001.HMI differ diff --git a/plan_manage_main/src/app/NormalDemo_Flash.c b/plan_manage_main/src/app/NormalDemo_Flash.c deleted file mode 100644 index 8692df6..0000000 --- a/plan_manage_main/src/app/NormalDemo_Flash.c +++ /dev/null @@ -1,533 +0,0 @@ -/**************************************************************************** - (c) Copyright 2013-2014 Freescale Semiconductor, Inc. - ALL RIGHTS RESERVED. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -***************************************************************************** - -************************************************************************* -* * -* Standard Software Flash Driver For FTFx * -* * -* FILE NAME : NormalDemo_Flash.c * -* DATE : April 08, 2014 * -* * -* AUTHOR : FPT Team * -* E-mail : r56611@freescale.com * -* * -*************************************************************************/ - -/************************** CHANGES ************************************* -0.1.0 04.23.2013 FPT Team Initial Version -1.0.0 11.25.2013 FPT Team Optimize Version -1.0.2 08.04.2014 FPT Team Update to follow SDK convention(MISRA-C) -*************************************************************************/ -/* include the header files */ -#include "SSD_FTFx.h" -#include "demo_cfg.h" - - -FLASH_SSD_CONFIG flashSSDConfig = -{ - FTFx_REG_BASE, /* FTFx control register base */ - PFLASH_BLOCK_BASE, /* base address of PFlash block */ - PBLOCK_SIZE, /* size of PFlash block */ - DEFLASH_BLOCK_BASE, /* base address of DFlash block */ - 0x0U, /* size of DFlash block */ - EERAM_BLOCK_BASE, /* base address of EERAM block */ - 0x0U, /* size of EEE block */ - DEBUGENABLE, /* background debug mode enable bit */ - NULL_CALLBACK /* pointer to callback function */ -}; - -#define CALLBACK_SIZE 0x30U -#define LAUNCH_CMD_SIZE 0x80U - -uint8_t DataArray[PGM_SIZE_BYTE]; -uint8_t buffer[BUFFER_SIZE_BYTE]; -uint32_t gCallBackCnt; /* global counter in callback(). */ -pFLASHCOMMANDSEQUENCE g_FlashLaunchCommand = (pFLASHCOMMANDSEQUENCE)0xFFFFFFFF; - -uint16_t __ram_func[LAUNCH_CMD_SIZE/2]; /* array to copy __Launch_Command func to RAM */ -uint16_t __ram_for_callback[CALLBACK_SIZE/2]; /* length of this array depends on total size of the functions need to be copied to RAM*/ -void callback(void); - -/********************************************************************* -* -* Function Name : main -* Description : Main function -* -* Arguments : void -* Return Value : UNIT32 -* -**********************************************************************/ -void main(void) -{ - uint32_t ret; /* Return code from each SSD function */ - uint32_t dest; /* Address of the target location */ - uint32_t size; - uint8_t securityStatus; /* Return protection status */ - uint32_t protectStatus; /* Store Protection Status Value of PFLSH or DFLASH or EEPROM */ - uint32_t FailAddr; - uint16_t number; /* Number of longword or phrase to be program or verify*/ - uint32_t sum; - uint32_t temp; - uint32_t i; - uint32_t j; - - gCallBackCnt = 0x0U; - -#if ((defined(X_TWR_KV10Z32)) || defined(KM34Z50M_BACES) || (defined(TWR_KL46Z48M))) - CACHE_DISABLE -#else - //CACHE_DISABLE -#endif - - /* Set CallBack to callback function */ - flashSSDConfig.CallBack = (PCALLBACK)RelocateFunction((uint32_t)__ram_for_callback , CALLBACK_SIZE , (uint32_t)callback); - g_FlashLaunchCommand = (pFLASHCOMMANDSEQUENCE)RelocateFunction((uint32_t)__ram_func , LAUNCH_CMD_SIZE ,(uint32_t)FlashCommandSequence); - - /************************************************************************** - * FlashInit() * - ***************************************************************************/ - ret = FlashInit(&flashSSDConfig); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - -#ifdef twr_mc56f82748 - PE_low_level_init(); -#endif - -#if ((!(defined(FTFA_M))) || (defined(BLOCK_COMMANDS))) - /************************************************************************** - * FlashEraseBlock() and FlashVerifyBlock() * - ***************************************************************************/ - /* Erase for each individual Pflash block */ - for (i = 0x1U; i < PBLOCK_NUM; i++) - { - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(i*flashSSDConfig.PFlashBlockSize/PBLOCK_NUM); - ret = FlashEraseBlock(&flashSSDConfig, dest, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - /* verification for normal and user margin levels */ - for (j = 0x0U; j < 0x2U; j++) - { - ret = FlashVerifyBlock(&flashSSDConfig, dest, j, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - } -#endif - - /************************************************************************** - * FlashEraseSector() and FlashVerifySection() * - ***************************************************************************/ - /* Erase several sectors on Pflash*/ - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize - 0x4U * FTFx_PSECTOR_SIZE); - while ((dest + BYTE2WORD(FTFx_PSECTOR_SIZE)) < (flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) - { - size = FTFx_PSECTOR_SIZE; - ret = FlashEraseSector(&flashSSDConfig, dest, size, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Verify section for several sector of PFLASH */ - number = FTFx_PSECTOR_SIZE / PRD1SEC_ALIGN_SIZE; - for(i = 0x0U; i < 0x2U; i++) - { - ret = FlashVerifySection(&flashSSDConfig, dest, number, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - dest += BYTE2WORD(size); - } - -#if (0x0U != DEBLOCK_SIZE) - /* Erase several sectors on Dflash*/ - dest = flashSSDConfig.DFlashBlockBase; - while ((dest + BYTE2WORD(FTFx_DSECTOR_SIZE)) < (flashSSDConfig.DFlashBlockBase + BYTE2WORD(4*FTFx_DSECTOR_SIZE))) - { - size = FTFx_DSECTOR_SIZE; - ret = FlashEraseSector(&flashSSDConfig, dest, size, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Verify section for several sector of DFLASH */ - number = FTFx_DSECTOR_SIZE/DRD1SEC_ALIGN_SIZE; - for(i = 0x0U; i < 0x2U; i ++) - { - ret = FlashVerifySection(&flashSSDConfig, dest, number, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - dest += BYTE2WORD(FTFx_DSECTOR_SIZE); - - } -#endif /* DEBLOCK_SIZE */ - - /************************************************************************** - * FlashProgram() FlashCheckSum and FlashProgramCheck() * - ***************************************************************************/ - /* Initialize source buffer */ - for (i = 0x0U; i < BUFFER_SIZE_BYTE; i++) - { - /* Set source buffer */ - buffer[i] = i; - } - - /* Program to the end location of PFLASH */ - size = BUFFER_SIZE_BYTE; - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize - (uint32_t)(0x3U * FTFx_PSECTOR_SIZE)); - - while ((dest + BYTE2WORD(size)) < (flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) - { - ret = FlashProgram(&flashSSDConfig, dest, size, \ - buffer, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Flash CheckSum */ - sum = temp = 0x0U; - for (i = 0x0U; i < size; i++) - { - temp += buffer[i]; - } - ret = FlashCheckSum(&flashSSDConfig, dest, size, &sum); - if ((FTFx_OK != ret) || (temp != sum)) - { - ErrorTrap(ret); - } - - /* Program Check for normal and user margin levels*/ - for (i = 0x1U; i < 0x3U; i ++) - { - ret = FlashProgramCheck(&flashSSDConfig, dest, size, buffer, \ - &FailAddr, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - - dest += BYTE2WORD(BUFFER_SIZE_BYTE); - } - -#if (0x0 != DEBLOCK_SIZE) - /* Program to the DFLASH block*/ - size = BUFFER_SIZE_BYTE; - dest = flashSSDConfig.DFlashBlockBase; - while ((dest + BYTE2WORD(size)) < (flashSSDConfig.DFlashBlockBase + BYTE2WORD(0x4U * FTFx_DSECTOR_SIZE))) - { - ret = FlashProgram(&flashSSDConfig, dest, size, \ - buffer, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Flash CheckSum */ - sum = 0x0U; - ret = FlashCheckSum(&flashSSDConfig, dest, size, &sum); - if ((FTFx_OK != ret) || (temp != sum)) - { - ErrorTrap(ret); - } - - /* Program Check for normal and user margin levels*/ - for (i = 0x1U; i < 0x3U; i++) - { - ret = FlashProgramCheck(&flashSSDConfig, dest, size, buffer, \ - &FailAddr, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - dest += BYTE2WORD(BUFFER_SIZE_BYTE); - } - - /************************************************************************** - * SetEEEEnable() * - ***************************************************************************/ - - ret = SetEEEEnable(&flashSSDConfig, RAM_ENABLE ,g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - -#endif /* DEBLOCK_SIZE */ - -#ifndef FTFA_M - /************************************************************************** - * FlashProgramSection() * - ***************************************************************************/ - /* Write some values to EERAM */ - for (i = 0x0U; i < 0x100U; i += 0x4U) - { - WRITE32(flashSSDConfig.EERAMBlockBase + i,0x11223344U); - } - /* Erase sector for program section */ - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize/PBLOCK_NUM - 0x4U * FTFx_PSECTOR_SIZE); - ret = FlashEraseSector(&flashSSDConfig, dest, FTFx_PSECTOR_SIZE, \ - g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Program section to the flash block*/ - number = 0x2U; - ret = FlashProgramSection(&flashSSDConfig, dest, number, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } -#endif - -#if (0x0U != DEBLOCK_SIZE) - /* Erase the first sector of DFlash */ - dest = flashSSDConfig.DFlashBlockBase; - ret = FlashEraseSector(&flashSSDConfig, dest, FTFx_PSECTOR_SIZE, \ - g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - /* Program the 1st sector of DFLASH */ - number = FTFx_DSECTOR_SIZE / (DPGMSEC_ALIGN_SIZE * 0x4U); - dest = flashSSDConfig.DFlashBlockBase; - ret = FlashProgramSection(&flashSSDConfig, dest, number, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } -#endif /* DEBLOCK_SIZE */ - - /************************************************************************** - * FlashGetSecurityState() * - ***************************************************************************/ - securityStatus = 0x0U; - ret = FlashGetSecurityState(&flashSSDConfig, &securityStatus); - - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - /************************************************************************** - * FlashReadResource() * - ***************************************************************************/ - /* Read on P-Flash */ - dest = flashSSDConfig.PFlashBlockBase + PFLASH_IFR; /* Start address of Program Once Field */ - ret = FlashReadResource(&flashSSDConfig, dest, DataArray, 0x0U, g_FlashLaunchCommand); - - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - -#if (DEBLOCK_SIZE != 0) - /* Read on D-Flash */ - dest = flashSSDConfig.DFlashBlockBase + DFLASH_IFR; - ret = FlashReadResource(&flashSSDConfig, dest, DataArray, 0x0U, g_FlashLaunchCommand); - - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * DEFlashPartition() * - ***************************************************************************/ - if (0x0U == flashSSDConfig.EEEBlockSize) - { - ret = DEFlashPartition(&flashSSDConfig, \ - EEE_DATA_SIZE_CODE, \ - DE_PARTITION_CODE, \ - g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Call FlashInit again to get the new Flash configuration */ - ret = FlashInit(&flashSSDConfig); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - - /************************************************************************** - * EEEWrite() * - ***************************************************************************/ - dest = flashSSDConfig.EERAMBlockBase; - size = FTFx_WORD_SIZE; - ret = EEEWrite(&flashSSDConfig, dest, size, buffer); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * EEEWrite() * - ***************************************************************************/ - ret = SetEEEEnable(&flashSSDConfig, EE_ENABLE ,g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - dest = flashSSDConfig.EERAMBlockBase; - size = FTFx_WORD_SIZE; - ret = EEEWrite(&flashSSDConfig, dest, size, buffer); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * EERAMGetProtection() * - ***************************************************************************/ - ret = EERAMGetProtection(&flashSSDConfig, (uint8_t *)&protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * EERAMSetProtection() * - ***************************************************************************/ - protectStatus = 0xABU; - ret = EERAMSetProtection(&flashSSDConfig, (uint8_t)protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Call EERAMGetProtection to verify the set step */ - ret = EERAMGetProtection(&flashSSDConfig, (uint8_t *)&protectStatus); - if ((FTFx_OK != ret) || (0xABU != (uint8_t)protectStatus)) - { - ErrorTrap(ret); - } - - /************************************************************************** - * DFlashGetProtection() * - ***************************************************************************/ - ret = DFlashGetProtection(&flashSSDConfig, (uint8_t *)&protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * DFlashSetProtection() * - ***************************************************************************/ - protectStatus = 0xAAU; - ret = DFlashSetProtection(&flashSSDConfig, (uint8_t)protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Call DFlashGetProtection to verify the set step */ - ret = DFlashGetProtection(&flashSSDConfig, (uint8_t *)&protectStatus); - if ((FTFx_OK != ret) || (0xAAU != (uint8_t)protectStatus)) - { - ErrorTrap(ret); - } - -#endif /* DEBLOCK_SIZE */ - - /************************************************************************** - * PFlashGetProtection() * - ***************************************************************************/ - ret = PFlashGetProtection(&flashSSDConfig, &protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /************************************************************************** - * PFlashSetProtection() * - ***************************************************************************/ - protectStatus = 0x12ABCDEFU; - ret = PFlashSetProtection(&flashSSDConfig, protectStatus); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* Call PFlashGetProtection to verify the set step */ - ret = PFlashGetProtection(&flashSSDConfig, &protectStatus); - if ((FTFx_OK != ret) || (0x12ABCDEFU != protectStatus)) - { - ErrorTrap(ret); - } - - /**************************************************************************/ - - while(1); - -} - -/********************************************************************* -* -* Function Name : ErrorTrap -* Description : Gets called when an error occurs. -* Arguments : uint32_t -* Return Value : -* -*********************************************************************/ -void ErrorTrap(uint32_t ret) -{ - while (1) - { - ; - } -} - - -void callback(void) -{ - /* just increase this variable to observer that this callback() func has been involked */ - gCallBackCnt++; -} -/* end of file */ diff --git a/plan_manage_main/src/app/include/config.h b/plan_manage_main/src/app/include/config.h index 12c611d..10871c4 100644 --- a/plan_manage_main/src/app/include/config.h +++ b/plan_manage_main/src/app/include/config.h @@ -1,74 +1,83 @@ -/* - * config.h - ÅäÖÃÕû¸ö¹¤³Ì - * - */ - -#ifndef CONFIG_H -#define CONFIG_H - - - - -/* - * Ä£ÄⶨʱÆ÷ʹÓõĶ¨Ê±Æ÷ - */ -#define SIMULAT_TIMER_PITX PIT1 - - -/* - * 8266 - */ -#define WIFI_UARTX UART0 // PTA1,PTA2 - -/* - * µ÷ÊÔÄ£¿é,»òÔÆÌ¨ - */ -#define DEBUG_UARTX UART1 // PTC3,PTC4 - - -/* - * ÊäÈëÄ£¿é - */ -#define UP_KEY_PINX PTE20 -#define DOWN_KEY_PINX PTA17 -#define OK_KEY_PINX PTE23 -#define RET_KEY_PINX PTA4 -#define AMS_KEY_PINX PTA5 -#define WIFI_KEY_PINX PTD7 -#define MR_KEY_PINX PTE30 -#define MB_KEY_PINX PTA16 -#define MUVB_KEY_PINX PTD6 -// knobÓñØÐëÊÇPTA»òPTD¶Ë¿ÚµÄ -#define KNOB_A_PINX PTD6 -#define KNOB_B_PINX PTD7 -#define KNOB_KEY_PINX PTD4 - - - -/* - * ÏÔʾģ¿é - */ -#define TFT_UARTX UART2 // PTD2,PTD3 - - -/* - * ʱ¼äÄ£¿é - */ -#define DS1302_CE_PINX PTB2 -#define DS1302_CLK_PINX PTB1 -#define DS1302_IO_PINX PTB0 - -/* - * ¿ØÖÆÖ´ÐÐÄ£¿é - * - */ -#define LGRED_PINX PTC12 -#define LGBLUE_PINX PTC13 -#define LGUVB_PINX PTC15 -#define WATER_PINX PTC16 - -/* - * led¿ØÖÆ£¬¶àÑ¡¼¸¸öÈÎÒâ¶Ë¿Ú - */ - -#endif // CONFIG_H +/* + * config.h - ÅäÖÃÕû¸ö¹¤³Ì + * + */ + +#ifndef CONFIG_H +#define CONFIG_H + + + +#define PM_DEBUG + + + + +/* + * Ä£ÄⶨʱÆ÷ʹÓõĶ¨Ê±Æ÷ + */ +#define SIMULAT_TIMER_PITX PIT1 + + +/* + * µ÷ÊÔÄ£¿é,»ò8266 + */ +#define WIFI_UARTX UART0 // PTA1,PTA2 +#define DEBUG_UARTX UART0 // PTA1,PTA2 + +/* + * ÔÆÌ¨ + */ +#define ORIENT_UARTX UART1 // PTC3,PTC4 +#define RE_DE_PINX PTC1 + +/* + * ÊäÈëÄ£¿é + */ +#define UP_KEY_PINX PTA4 +#define DOWN_KEY_PINX PTA5 +#define OK_KEY_PINX PTE20 +#define RET_KEY_PINX PTE30 +#define AMS_KEY_PINX PTD5 +#define WIFI_KEY_PINX PTD7 +#define MR_KEY_PINX PTE23 +#define MB_KEY_PINX PTD4 +#define MUVB_KEY_PINX PTA16 +// knobÓñØÐëÊÇPTA»òPTD¶Ë¿ÚµÄ +#define KNOB_A_PINX PTD7 +#define KNOB_B_PINX PTD6 +#define KNOB_KEY_PINX PTE20 + +#define MOISTURE_ADC0_CHN ADC0_DP1 // PTE16 + + + +/* + * ÏÔʾģ¿é + */ +#define TFT_UARTX UART2 // PTD2,PTD3 + + +/* + * ʱ¼äÄ£¿é + */ +#define DS1302_CE_PINX PTB2 +#define DS1302_CLK_PINX PTB1 +#define DS1302_IO_PINX PTB3 + +/* + * ¿ØÖÆÖ´ÐÐÄ£¿é + * + */ +#define LGRED_PINX PTC17 +#define LGBLUE_PINX PTC13 +#define LGUVB_PINX PTC16 +#define WATER_PINX PTD1 + +/* + * led¿ØÖÆ£¬¶àÑ¡¼¸¸öÈÎÒâ¶Ë¿Ú + */ +#define LG1_PINX PTC9 +#define LG2_PINX PTC8 +#define LG3_PINX PTC7 +#endif // CONFIG_H diff --git a/plan_manage_main/src/app/include/input.h b/plan_manage_main/src/app/include/input.h deleted file mode 100644 index ccd4523..0000000 --- a/plan_manage_main/src/app/include/input.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Îļþ£ºinput.h - * ¹¦ÄÜ£º½«ÍâÉèÊäÈëµÄÊý¾Ýת»»Îªµ¥Æ¬»úÄÚ´æÖеÄÊý¾Ý - */ - -#ifndef INPUT_H -#define INPUT_H - - -typedef struct InData_ -{ - uint8_t isWifiOn : 1; - uint8_t isPlanMode : 1; - - uint8_t isRedL : 1; - uint8_t isBlueL : 1; - uint8_t isUvbL : 1; - - uint8_t knobV; -} InData; - - -void InitInput(void); - -void - - - - - - - - - - - -#endif // INPUT_H diff --git a/plan_manage_main/src/app/include/key.h b/plan_manage_main/src/app/include/key.h index 584f7c9..fe9a814 100644 --- a/plan_manage_main/src/app/include/key.h +++ b/plan_manage_main/src/app/include/key.h @@ -1,58 +1,40 @@ -/* key.h - ¼à²â²¢²É¼¯°´¼üµÄÊäÈë - * ¹²ÓÐËÄÖÖÊäÈ룬ÎÞ¼ü£¬µ¥»÷£¬Ë«»÷£¬³¤»÷¡£ - * ʹÓÃÒ»¸ö¶¨Ê±Æ÷ÿ10ms²É¼¯Ò»´Îio״̬À´ÊµÏֵġ£ - */ - -#ifndef KEY_H -#define KEY_H - - -typedef enum key_mean_ -{ - N_KEY = 0, S_KEY, D_KEY, L_KEY -} key_mean; - - - -/* - * key_type - °´¼üµÄÖÖÀà - */ -typedef enum key_type_ -{ - UP_KEY = 0, DOWN_KEY, OK_KEY, RET_KEY, AMS_KEY, WIFI_KEY, MR_KEY, MB_KEY, MUVB_KEY -} key_type; - - - -/* - * key_init() - °´¼üÄ£¿é³õʼ»¯ - * - */ -void key_init(void); - - -/* - * key_detect() - ¼ì²â°´¼ü - * - * ÒªÇóÿ¸ô10msµ÷ÓÃÒ»´Î - */ -void key_detect(void); - - - -/* - * get_key_mean() - µÃµ½Ö¸¶¨µÄ°´¼üÐÅÏ¢ - * - * Õâ¸öº¯ÊýÖÐÔÚÈ¡µÃÐÅÏ¢ºó»á½«¶ÔÓ¦°´¼üÖØÐ±ê¼ÇΪN_KEY - */ -key_mean get_key_mean(key_type key_t); - - - - -void clear_key_m(void); - - - - -#endif // KEY_H +/* key.h - ¼à²â²¢²É¼¯°´¼üµÄÊäÈë + * ¹²ÓÐËÄÖÖÊäÈ룬ÎÞ¼ü£¬µ¥»÷£¬Ë«»÷£¬³¤»÷¡£ + * ʹÓÃÒ»¸ö¶¨Ê±Æ÷ÿ10ms²É¼¯Ò»´Îio״̬À´ÊµÏֵġ£ + */ + +#ifndef KEY_H +#define KEY_H + + +/* + * key_mean - °´¼üµÄ״̬±êÖ¾·ûºÅ + * N_KEY±íʾÎÞ¼ü°´ÏÂ״̬£¬S_KEY±íʾµ¥»÷£¬D_KEY±íʾ˫»÷£¬L_KEY±íʾ³¤°´ + */ +typedef enum key_mean_ +{ + N_KEY = 0, S_KEY, D_KEY, L_KEY +} key_mean; + + + +/* + * key_type - °´¼üµÄÖÖÀà + */ +typedef enum key_type_ +{ + UP_KEY = 0, DOWN_KEY, OK_KEY, RET_KEY, AMS_KEY, WIFI_KEY, MR_KEY, MB_KEY, MUVB_KEY +} key_type; + + + + +void key_init(void); +void key_detect(void); +key_mean get_key_mean(key_type key_t); +void clear_key_m(void); + + + + +#endif // KEY_H diff --git a/plan_manage_main/src/app/include/knob.h b/plan_manage_main/src/app/include/knob.h index be9fe38..9a37c42 100644 --- a/plan_manage_main/src/app/include/knob.h +++ b/plan_manage_main/src/app/include/knob.h @@ -1,56 +1,29 @@ -/* - * knob.h - ÌṩÐýÅ¥ÊäÈëµÄ½Ó¿Úº¯Êý - * - * ʹÓõÄÊÇÒ»¸öÊý×ÖÐýÅ¥£¬ÀûÓüÆÊýÀ´²É¼¯ÊäÈë - */ - -#ifndef KNOB_H -#define KNOB_H - -#include "arm_cm0.h" -#include "vectors.h" - - - - -/* - * knob_init() - ΪÐýÅ¥ÊäÈë¶øÖ´Ðеijõʼ»¯ - * - * ÐýÅ¥µÄ¼ì²â³õʼ»¯ºóĬÈÏÊǽûÖ¹µÄ - */ -void knob_init(void); - - - -/* - * knob_enable() - ʹÄÜÐýÅ¥Âö³å¼ì²â - */ -void knob_enable(void); - - -/* - * knob_disable() - ½ûÖ¹ÐýÅ¥Âö³å¼ì²â - */ -void knob_disable(void); - - -/* - * knob_clear() - Çå³ýÐýÅ¥Öµ - */ -void knob_clear(void); - -/* - * get_knob_val() - ·µ»ØÐýÅ¥Öµ - */ -int32_t get_knob_val(void); - - -/* - * knob_detect() - ÐýÅ¥¼ì²â - * - * Õâ¸öº¯ÊýÐèÒªÔÚÐýÅ¥±àÂëÆ÷µÄAÏàÊä³ö·¢ÉúÑØÌø±äʱµ÷Ó㬼´ÉÏÏÂÑØÖжÏʱ - */ -void knob_detect(void); - - -#endif /* KNOB_H */ +/* + * knob.h - ÌṩÐýÅ¥ÊäÈëµÄ½Ó¿Úº¯Êý + * + * ʹÓõÄÊÇÒ»¸öÊý×ÖÐýÅ¥£¬ÀûÓüÆÊýÀ´²É¼¯ÊäÈë + */ + +#ifndef KNOB_H +#define KNOB_H + + + + + + +void knob_init(void); + + +void knob_enable(void); + +void knob_disable(void); + +void knob_clear(void); + +int32_t get_knob_val(void); + +void knob_detect(void); + + +#endif /* KNOB_H */ diff --git a/plan_manage_main/src/app/include/orient.h b/plan_manage_main/src/app/include/orient.h new file mode 100644 index 0000000..24d81c5 --- /dev/null +++ b/plan_manage_main/src/app/include/orient.h @@ -0,0 +1,51 @@ +/* + * orient.h - æ–¹å‘æŽ§åˆ¶ + * + * 所有如上,所有如下 + */ + + +#ifndef ORIENT_H +#define ORIENT_H + + +#include + + + + +typedef enum orient_ +{ + ORIENT_UP = 0, ORIENT_DOWN, ORIENT_RIGHT, ORIENT_LEFT +} orient; + +typedef enum preset_op_ +{ + PRESET_SET = 0, PRESET_CLEAR, PRESET_CALL +} preset_op; + +typedef enum orient_mode_ +{ + MODE_AUTO = 0, MODE_MANUL +} orient_mode; + + + +void orient_init(void); + +void orient_setspeed(uint8_t addr, orient ori, uint8_t spd); + +void orient_presetop(uint8_t addr, preset_op op, uint8_t npre); + +void orient_setmode(uint8_t addr, orient_mode mod); + + + + + + + + + +#endif /* ORIENT_H */ + diff --git a/plan_manage_main/src/app/include/plan_handle.h b/plan_manage_main/src/app/include/plan_handle.h index f4c2af5..162f321 100644 --- a/plan_manage_main/src/app/include/plan_handle.h +++ b/plan_manage_main/src/app/include/plan_handle.h @@ -1,13 +1,19 @@ -/* - * plan_handle.h - è®¡åˆ’å¤„ç† - */ - - - - - - -void plan_handle_init(void); - -void plan_handle(void); - +/* + * plan_handle.h - è®¡åˆ’å¤„ç† + */ + +#ifndef PLAN_HANDLE_H +#define PLAN_HANDLE_H + + + + +void plan_handle_init(void); + +void plan_handle(void); + +void key_func(void); + + + +#endif /* PLAN_HANDLE_H */ \ No newline at end of file diff --git a/plan_manage_main/src/app/include/pm_flash.h b/plan_manage_main/src/app/include/pm_flash.h index 048e7f5..e3e9b33 100644 --- a/plan_manage_main/src/app/include/pm_flash.h +++ b/plan_manage_main/src/app/include/pm_flash.h @@ -14,7 +14,7 @@ void pm_flash_init(void); void flash_write(uint8_t *saddr, uint16_t nbyte); -void flash_read(uint8_t *daddr, uint8_t nbyte); +void flash_read(uint8_t *daddr, uint16_t nbyte); diff --git a/plan_manage_main/src/app/include/pm_init.h b/plan_manage_main/src/app/include/pm_init.h index b6f4b85..21425fa 100644 --- a/plan_manage_main/src/app/include/pm_init.h +++ b/plan_manage_main/src/app/include/pm_init.h @@ -1,9 +1,19 @@ -/* - * pm_init.h - ¶ÔÕû¸öÓ¦ÓóÌÐòµÄ³õʼ»¯ - */ - - -/* - * pm_init() - ³õʼ»¯ - */ -void pm_init(void); +/* + * pm_init.h - ¶ÔÕû¸öÓ¦ÓóÌÐòµÄ³õʼ»¯ + */ + + +#ifndef PM_INIT_H +#define PM_INIT_H + +/* + * pm_init() - ³õʼ»¯ + */ +void pm_init(void); + + + + + + +#endif /* PM_INIT_H */ \ No newline at end of file diff --git a/plan_manage_main/src/app/include/pm_time.h b/plan_manage_main/src/app/include/pm_time.h index 5e8c356..86bacb6 100644 --- a/plan_manage_main/src/app/include/pm_time.h +++ b/plan_manage_main/src/app/include/pm_time.h @@ -1,37 +1,41 @@ -/* - * time.h - æ—¶é—´å¤„ç† - */ - -#include - - -typedef struct calendar_info_ -{ - uint8_t sec; - uint8_t min; - uint8_t hour; - uint8_t mday; - uint8_t month; - uint16_t year; - uint8_t wday; - uint16_t yday; -} calendar_info; - - -uint8_t is_leapyear(uint16_t year); - -uint8_t get_month_days(uint16_t year, uint8_t month); - -void ds1302_init(void); - -void ds1302_set_time(calendar_info *cal); - -void ds1302_read_time(calendar_info *cal); - -void maintain_system_time(void); - -calendar_info get_system_time(void); - -uint32_t calendar_to_sec(calendar_info *cal); - -calendar_info sec_to_calendar(uint32_t sec); +/* + * time.h - æ—¶é—´å¤„ç† + */ + +#ifndef TIME_H +#define TIME_H + + +#include + + +/* + * calendar_info - 分解时间 + */ +typedef struct calendar_info_ +{ + uint8_t sec; + uint8_t min; + uint8_t hour; + uint8_t mday; + uint8_t month; + uint16_t year; + uint8_t wday; + uint16_t yday; +} calendar_info; + +// START_YEAR为计算日历时间时的起始时间 +enum { START_YEAR = 2000, SEC_IN_DAY = 24 * 60 * 60}; + +uint8_t is_leapyear(uint16_t year); +uint8_t get_month_days(uint16_t year, uint8_t month); +void ds1302_init(void); +void ds1302_set_time(calendar_info *cal); +void ds1302_read_time(calendar_info *cal); +void maintain_system_time(void); +calendar_info get_system_time(void); +uint32_t calendar_to_sec(calendar_info *cal); +calendar_info sec_to_calendar(uint32_t sec); + + +#endif /* TIME_H */ diff --git a/plan_manage_main/src/app/include/simulat_timer.h b/plan_manage_main/src/app/include/simulat_timer.h index 225330a..c0a5d08 100644 --- a/plan_manage_main/src/app/include/simulat_timer.h +++ b/plan_manage_main/src/app/include/simulat_timer.h @@ -1,107 +1,52 @@ -/* - * simulat_timer.h - ʵÏÖÒ»¸öÄ£ÄⶨʱÆ÷ - */ - -#ifndef SIMULAT_TIMER_H -#define SIMULAT_TIMER_H - -#include - -/* - * Ä£ÄⶨʱÆ÷µÄÊýÁ¿ - */ -#define SIMULAT_TIMER_NUM 5 - - - -typedef struct st_register_ -{ - uint32_t count; // ¶¨Ê±Æ÷¼ÆÊý - uint32_t cmr; // ±È½Ï¼Ä´æÆ÷ - struct - { - uint8_t ten : 1; // ʹÄܱêÖ¾ - uint8_t tov : 1; // Òç³ö±êÖ¾ - uint8_t tfc : 1; // ×ÔÓÉÔËÐбêÖ¾ - uint8_t tcf : 1; // ±È½Ï±êÖ¾ - } flag; -} st_register; - - -typedef enum st_mode_ -{ - COMPARE = 0, - NO_COMPARE -} st_mode; - -/* - * st_init() - ³õʼ»¯ÊµÏÖÄ£ÄⶨʱÆ÷ËùÐèµÄpit¶¨Ê±Æ÷ - * - * »ù´¡¶¨Ê±Îª1ms - */ -void st_base_init(void); - - -/* - * st_init() - ³õʼ»¯Ò»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ - * @n: ¶¨Ê±Æ÷±àºÅ - * @st_m: ¶¨Ê±Ä£Ê½ - * @cmr_v: ¶¨Ê±Æ÷±È½ÏÖµ£¬ÔڷDZȽÏģʽ¿ÉÒÔΪÈÎÒâÖµ - * - * Õâ¸öº¯Êý·µ»Ø0±íʾÕý³£Íê³ÉÁ˳õʼ»¯ÈÎÎñ£¬·µ»Ø~0±íʾ¶¨Ê±Æ÷ÒÑ´ò¿ª»ò²»´æÔÚ - */ -uint8_t st_init(uint8_t n, st_mode st_m, uint32_t cmr_v); - - -/* - * st_close() - ¹Ø±ÕÒ»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ - * @n: ¶¨Ê±Æ÷±àºÅ - */ -void st_close(uint8_t n); - -/* - * st_tcf() - ²éѯtcfλ·µ»Ø - * @n: ¶¨Ê±Æ÷±àºÅ - * - * Õâ¸öº¯ÊýÔÚûÓйý±È½ÏÖµµÄʱºò·µ»Ø0£¬Òѹý±È½ÏÖµµÃʱºò·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint8_t st_tcf(uint8_t n); - - - -/* - * st_tov() - ²éѯtovλ·µ»Ø - * @n: ¶¨Ê±Æ÷±àºÅ - * - * Õâ¸öº¯ÊýÔÚûÓÐÒç³öʱ·µ»Ø0£¬Ã»ÓÐÒç³öʱ·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint8_t st_tov(uint8_t n); - - - -/* - * st_count() - ²éѯµ±Ç°Ä£Äⶨʱֵ - * @n: ¶¨Ê±Æ÷±àºÅ - * - * ¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint32_t st_count(uint8_t n); - - - -/********************ISR******************/ - -/* - * st_base() -¶¨Ê±µ÷ÓÃÒÔÄ£ÄâN·¶¨Ê±Æ÷ - * - * ¶¨Ê±µÄ×îС¼ä¸ôµÈÓÚÕâ¸öº¯Êý±»µ÷ÓõÄÖÜÆÚ - */ -void st_base(void); - - - - - - - -#endif /* SIMULAT_TIMER_H */ +/* + * simulat_timer.h - ʵÏÖÒ»¸öÄ£ÄⶨʱÆ÷ + */ + +#ifndef SIMULAT_TIMER_H +#define SIMULAT_TIMER_H + +#include + +/* + * Ä£ÄⶨʱÆ÷µÄÊýÁ¿ + */ +#define SIMULAT_TIMER_NUM 5 + + + +typedef struct st_register_ +{ + uint32_t count; // ¶¨Ê±Æ÷¼ÆÊý + uint32_t cmr; // ±È½Ï¼Ä´æÆ÷ + struct + { + uint8_t ten : 1; // ʹÄܱêÖ¾ + uint8_t tov : 1; // Òç³ö±êÖ¾ + uint8_t tfc : 1; // ×ÔÓÉÔËÐбêÖ¾ + uint8_t tcf : 1; // ±È½Ï±êÖ¾ + } flag; +} st_register; + + +typedef enum st_mode_ +{ + COMPARE = 0, + NO_COMPARE +} st_mode; + + +void st_base_init(void); +uint8_t st_init(uint8_t n, st_mode st_m, uint32_t cmr_v); +void st_close(uint8_t n); +uint8_t st_tcf(uint8_t n); +uint8_t st_tov(uint8_t n); +uint32_t st_count(uint8_t n); +void st_base(void); + + + + + + + +#endif /* SIMULAT_TIMER_H */ diff --git a/plan_manage_main/src/app/include/tft.h b/plan_manage_main/src/app/include/tft.h index 1723254..1786ab0 100644 --- a/plan_manage_main/src/app/include/tft.h +++ b/plan_manage_main/src/app/include/tft.h @@ -1,45 +1,42 @@ -/* - * tft.h - tft½Ó¿Ú - */ - - -#ifndef TFT_H -#define TFT_H - -enum { PLAN_DATA_NUM = 19 }; - -typedef struct input_limit_ -{ - int16_t max; - int16_t min; -} input_limit; - -void tft_init(void); - -void tft_send_cmd(const char *cmd); - -void tft_left(void); - -void tft_right(void); - -void tft_up(void); - -void tft_down(void); - -void tft_ok(void); - -void tft_ret(void); - -void tft_page_refresh(void); - -int16_t *get_value_of_kvp(char *name, uint8_t objn); - -input_limit tft_input_limit(char *name); - -//const kv_pair *get_plan_data(uint8_t objn)[][PLAN_DATA_NUM]; - -void tft_to_plan_input(uint8_t objn); - - - -#endif /* TFT_H */ +/* + * tft.h - tft½Ó¿Ú + */ + + +#ifndef TFT_H +#define TFT_H + + +typedef struct input_limit_ +{ + int16_t max; + int16_t min; +} input_limit; + +void tft_init(void); + +void tft_send_cmd(const char *cmd); + +void tft_left(void); + +void tft_right(void); + +void tft_up(void); + +void tft_down(void); + +void tft_ok(void); + +void tft_ret(void); + +void tft_page_refresh(void); + +int16_t *get_value_of_kvp(char *name, uint8_t objn); + +input_limit tft_input_limit(char *name); + + + + + +#endif /* TFT_H */ diff --git a/plan_manage_main/src/app/include/tft_plan_internal.h b/plan_manage_main/src/app/include/tft_plan_internal.h new file mode 100644 index 0000000..b295ea3 --- /dev/null +++ b/plan_manage_main/src/app/include/tft_plan_internal.h @@ -0,0 +1,55 @@ +/* + * tft_handle_internal.h - tftå’Œplan_handle模å—å…±åŒä½¿ç”¨éƒ¨åˆ†çš„内部声明 + * + * 这个文件åªåº”包å«åœ¨tftå’Œplan_handleæ¨¡å— + */ + +#ifndef TFT_PLAN_INTERNAL_H +#define TFT_PLAN_INTERNAL_H + + +#include "include/pm_time.h" + +/* + * plan_input - 表示计划输入的类型 + * + */ +typedef struct plan_input_ +{ + calendar_info bg_t; // 开始时间 + calendar_info ed_t; // ç»“æŸæ—¶é—´ + calendar_info pd_t; // 周期时长 + + uint8_t x_orient; // xæ–¹å‘值,未使用 + uint8_t y_orient; // yæ–¹å‘值,未使用 + uint8_t lg_r : 1; // çº¢ç¯ + uint8_t lg_b : 1; // è“ç¯ + uint8_t lg_uvb : 1; // uvb + uint8_t water : 1; // 浇水,未使用 + uint8_t sw : 1; // 是å¦åŠ å…¥è®¡åˆ’ + uint8_t cnt; // å®Œæˆæ¬¡æ•° +} plan_input; + +/* + * kv_pair - 表示页é¢ä¸­çš„元素 + * key为存储元素ID的字符串,value为一个整形值,attr为元素属性 + */ +typedef struct kv_pair_ +{ + char *key; + int16_t value; + int8_t attr; +} kv_pair; + +enum { PLAN_DATA_NUM = 19, OBJ_NUM = 8 }; + +extern plan_input plan_in[OBJ_NUM]; + +extern kv_pair kvp_obj_set[][PLAN_DATA_NUM]; + + + +void tft_to_plan_input(uint8_t objn); + + +#endif /* TFT_PLAN_INTERNAL_H */ diff --git a/plan_manage_main/src/app/include/water.h b/plan_manage_main/src/app/include/water.h new file mode 100644 index 0000000..1e4294a --- /dev/null +++ b/plan_manage_main/src/app/include/water.h @@ -0,0 +1,28 @@ +/* + * water.h - ½½Ë® + */ + + +#ifndef WARER_H +#define WARER_H + + +#define MOISTURE_RATIO 0.1 +#define MOISTURE_MIN 1 + + + + +void water_init(void); +uint16_t get_moisture(void); +void water_ctr(uint16_t sv_moist); + + + + + + + + + +#endif /* WARER_H */ diff --git a/plan_manage_main/src/app/input.c b/plan_manage_main/src/app/input.c deleted file mode 100644 index e69de29..0000000 diff --git a/plan_manage_main/src/app/key.c b/plan_manage_main/src/app/key.c index 5ab7f4d..0dea6bc 100644 --- a/plan_manage_main/src/app/key.c +++ b/plan_manage_main/src/app/key.c @@ -1,352 +1,364 @@ -/* - * key.c - ¼à²â²¢²É¼¯°´¼üµÄÊäÈë - * - * ¹²ÓÐËÄÖÖÊäÈ룬ÎÞ¼ü£¬µ¥»÷£¬Ë«»÷£¬³¤»÷¡£ - * ÿ10msÐèÒª²É¼¯Ò»´Îio״̬¡£ - * ÿÔö¼õÒ»¸ö°´¼ü£¬ÐèÒªÉèÖõÄÓÐ: - * - * key_typeö¾ÙÀàÐÍÖжÔÓ¦µÄö¾ÙÔªËØ - * - * ¶ÔÓ¦µÄkey_infomation±äÁ¿ - * - * key_init()º¯ÊýÖжÔÓ¦µÄ³õʼ»¯ÌõÄ¿ - * key_detect()º¯ÊýÖжÔÓ¦¼ì²âÌõÄ¿ - * get_key_mean()º¯ÊýÖжÔÓ¦»ñÈ¡ÌõÄ¿ - */ - - -#include - -#include "include.h" - -#include "include/key.h" -#include "include/config.h" - - -/* - * key_state - ±íʾ°´¼üµÄ״̬ - * key_state_0 ³õʼ״̬£¬»òÕß±íʾµÚÒ»´Îµ¥»÷״̬ - * key_state_1 Ïû¶¶ºÍÈ·ÈÏ״̬£¬»ò±íʾµÚ¶þ´Îµ¥»÷״̬ - * key_state_2 °´¼ü¼ÆÊ±×´Ì¬ - * key_state_3 °´¼üµÈ´ýÊÍ·Å״̬ - */ -typedef enum key_state_ -{ - key_state_0 = 0, key_state_1, key_state_2, key_state_3 -} key_state; - -/* - * IO״̬·ûºÅ¶¨Òå - */ -typedef enum state_sign_ -{ - INVALID = 0, VALID = 1 -} state_sign; - - -typedef struct key_infomation_ -{ - key_state state_base; - uint8_t time_base; - - key_state state; - uint8_t time; - - key_mean key_m; - - state_sign (*get_state_io)(void); -} key_infomation; - - - -state_sign get_state_up_key_io(void) -{ return !gpio_get(UP_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_down_key_io(void) -{ return !gpio_get(DOWN_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_ok_key_io(void) -{ return !gpio_get(OK_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_ret_key_io(void) -{ return !gpio_get(RET_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_ams_key_io(void) -{ return !gpio_get(AMS_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_wifi_key_io(void) -{ return !gpio_get(WIFI_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_mr_key_io(void) -{ return !gpio_get(MR_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_mb_key_io(void) -{ return !gpio_get(MB_KEY_PINX) ? VALID : INVALID; } - -state_sign get_state_muvb_key_io(void) -{ return !gpio_get(MUVB_KEY_PINX) ? VALID : INVALID; } - - -static volatile key_infomation - up_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_up_key_io }, - down_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_down_key_io }, - ok_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ok_key_io }, - ret_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ret_key_io }, - ams_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ams_key_io }, - wifi_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_wifi_key_io }, - mr_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_mr_key_io }, - mb_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_mb_key_io }, - muvb_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_muvb_key_io }; - - - -/* - * key_init() - °´¼üÄ£¿é³õʼ»¯ - * - */ -void key_init(void) -{ - gpio_Interrupt_init(UP_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(DOWN_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(OK_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(RET_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(AMS_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(WIFI_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(MR_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(MB_KEY_PINX, GPI_UP_PF, GPI_DISAB); - gpio_Interrupt_init(MUVB_KEY_PINX, GPI_UP_PF, GPI_DISAB); - - - /* - * ³õʼ»¯¶¨Ê±Æ÷Ϊ10ms¶¨Ê±Öжϣ¬ÓÃÓÚ°´¼ü¼ì²âµÄ¶¨Ê±Ö´ÐÐ - */ - - - return; -} - - -/* - * key_read_base - °´¼ü»ù´¡¶ÁÈ¡º¯Êý£¬ - * @key_info: Òª¼ì²â°´¼üµÄËùÐèÐÅÏ¢,±ØÐëÔÚÊÇÈ«¾Ö±äÁ¿ÇøÖд洢µÄ - * - * Õâ¸öº¯Êý·µ»Ø N_KEY,S_KEY,L_KEYÈýÖÖÇé¿ö - */ -key_mean key_read_base(volatile key_infomation *key_info) -{ - state_sign key_state_io; - key_mean key_m = N_KEY; - - key_state_io = (*((*key_info).get_state_io))(); // »ñÈ¡io״̬ - switch((*key_info).state_base) - { - case key_state_0: - if (key_state_io == VALID) - { - (*key_info).state_base = key_state_1; // °´¼ü°´ÏºóÊ×ÏȽøÈëÏû¶¶ºÍ°´¼üÈ· - // ÈÏ״̬ - } - break; - case key_state_1: - if (key_state_io == VALID) - { - (*key_info).time_base = 0; - (*key_info).state_base = key_state_2; // °´¼üÈç¹ûÈÔÈ»°´Ï£¬ÔòÏû¶¶Íê³É£¬ - // ״̬ת»»,´Ëʱ·µ»ØÎÞ°´¼üʼþ - } - else - { - (*key_info).state_base = key_state_0; - } - break; - case key_state_2: - if (key_state_io == INVALID) - { - key_m = S_KEY; // ´Ëʱ°´¼üÊÍ·Å˵Ã÷Ϊһ´Î¶Ì²Ù×÷ - (*key_info).state_base = key_state_0; - } - else if (++(*key_info).time_base > 100) // ¼ÌÐø°´Ï£¬¼ÆÊ±¼Ó10ms£¬¼´±¾º¯ - // Êýµ÷ÓÃÖÜÆÚ - { - key_m = L_KEY; // °´ÏÂʱ¼ä´óÓÚ1s£¬·µ»Ø ³¤°´¼ü - (*key_info).state_base = key_state_3; // ת»»ÎªµÈ´ý°´¼üÊÍ·Å״̬ - } - break; - case key_state_3: - if (key_state_io == INVALID) - { - (*key_info).state_base = key_state_0; // °´¼ü´ËʱÒÑÊÍ·Å£¬×ª»»Îª³õʼ״̬ - } - break; - default: - break; - } - return key_m; -} - -/* - * key_read - °´¼ü¶ÁÈ¡º¯Êý - * @key_info: Òª¼ì²âµÄ°´¼üËùÐèµÄÐÅÏ¢£¬±ØÐëÊÇÔÚÈ«¾Ö±äÁ¿ÇøÖд洢µÄ - * - * Õâ¸öº¯Êý»á·µ»ØN_KEY,S_KEY,D_KEY£¬L_KEYËÄÇé¿ö - */ -key_mean key_read(volatile key_infomation *key_info) -{ - key_mean key_m = N_KEY, - key_m_temp; - - key_m_temp = key_read_base(key_info); - switch((*key_info).state) - { - case key_state_0: - if (key_m_temp == S_KEY) - { - (*key_info).time = 0; // µÚÒ»´Îµ¥»÷״̬£¬ÈÔÈ»·µ»ØÎÞ¼ü£¬µ½Ï¸öÖÜÆÚ - // ÅжÏÊÇ·ñ³öÏÖË«»÷ - (*key_info).state = key_state_1; - } - else - { - key_m = key_m_temp; // ¶ÔÓڷǵ¥»÷£¬·µ»ØÔ­Ê¼þ - } - break; - case key_state_1: - if (key_m_temp == S_KEY) // ÓÖÒ»´Îµ¥»÷£¬¼ä¸ô < 300ms - { - key_m = D_KEY; - (*key_info).state = key_state_0; - } - else - { - if (++(*key_info).time > 30) - { - key_m = S_KEY; // 300msÄÚûÓÐÔÙ³öÏÖµ¥»÷ʼþ£¬Ôò·µ»ØÉÏÒ»´Îµ¥ - // »÷ʼþ - (*key_info).state = key_state_0; - } - } - break; - default: - break; - } - return key_m; -} - - -/* - * key_detect() - ¼ì²â°´¼ü - * - * Õâ¸öº¯Êý½öÔÚN_KEY״̬ʱ¼Ç¼°´¼üÐÅÏ¢£¬N_KEYÊÇÔÚÓ¦ÓóÌÐò»ñÈ¡°´¼üÐÅÏ¢µÄʱºòͬʱ±»Éè - * Öõģ¬ÕâÑù×öµÄÄ¿µÄÊDZ£Ö¤²É¼¯µ½µÄ°´¼üÒ»¶¨»á±»Ö´ÐÐ - * ÒªÇóÿ¸ô10msµ÷ÓÃÒ»´Î - */ -void key_detect(void) -{ - key_mean key_m; - - if ((key_m = key_read(&up_key_info)) != N_KEY) - { - up_key_info.key_m = key_m; - } - if ((key_m = key_read(&down_key_info)) != N_KEY) - { - down_key_info.key_m = key_m; - } - if ((key_m = key_read(&ok_key_info)) != N_KEY) - { - ok_key_info.key_m = key_m; - } - if ((key_m = key_read(&ret_key_info)) != N_KEY) - { - ret_key_info.key_m = key_m; - } - if ((key_m = key_read(&ams_key_info)) != N_KEY) - { - ams_key_info.key_m = key_m; - } - if ((key_m = key_read(&wifi_key_info)) != N_KEY) - { - wifi_key_info.key_m = key_m; - } - if ((key_m = key_read(&mr_key_info)) != N_KEY) - { - mr_key_info.key_m = key_m; - } - if ((key_m = key_read(&mb_key_info)) != N_KEY) - { - mb_key_info.key_m = key_m; - } - if ((key_m = key_read(&muvb_key_info)) != N_KEY) - { - muvb_key_info.key_m = key_m; - } - return; -} - - -/* - * get_key_mean() - µÃµ½Ö¸¶¨µÄ°´¼üÐÅÏ¢ - * - * Õâ¸öº¯ÊýÖÐÔÚÈ¡µÃÐÅÏ¢ºó»á½«¶ÔÓ¦°´¼üÖØÐ±ê¼ÇΪN_KEY - */ -key_mean get_key_mean(key_type key_t) -{ - key_mean key_m; - - switch (key_t) - { - case UP_KEY: - key_m = up_key_info.key_m; - up_key_info.key_m = N_KEY; - break; - case DOWN_KEY: - key_m = down_key_info.key_m; - down_key_info.key_m = N_KEY; - break; - case OK_KEY: - key_m = ok_key_info.key_m; - ok_key_info.key_m = N_KEY; - break; - case RET_KEY: - key_m = ret_key_info.key_m; - ret_key_info.key_m = N_KEY; - break; - case AMS_KEY: - key_m = ams_key_info.key_m; - ams_key_info.key_m = N_KEY; - break; - case WIFI_KEY: - key_m = wifi_key_info.key_m; - wifi_key_info.key_m = N_KEY; - break; - case MR_KEY: - key_m = mr_key_info.key_m; - mr_key_info.key_m = N_KEY; - break; - case MB_KEY: - key_m = mb_key_info.key_m; - mb_key_info.key_m = N_KEY; - break; - case MUVB_KEY: - key_m = muvb_key_info.key_m; - muvb_key_info.key_m = N_KEY; - break; - default: - break; - } - return key_m; -} - - -void clear_key_m(void) -{ - down_key_info.key_m = N_KEY; - up_key_info.key_m = N_KEY; - ok_key_info.key_m = N_KEY; - ret_key_info.key_m = N_KEY; - ams_key_info.key_m = N_KEY; - wifi_key_info.key_m = N_KEY; - mr_key_info.key_m = N_KEY; - mb_key_info.key_m = N_KEY; - muvb_key_info.key_m = N_KEY; -} +/* + * key.c - ¼à²â²¢²É¼¯°´¼üµÄÊäÈë + * + * ¹²ÓÐËÄÖÖÊäÈ룬ÎÞ¼ü£¬µ¥»÷£¬Ë«»÷£¬³¤»÷¡£ + * ÿ10msÐèÒª²É¼¯Ò»´Îio״̬¡£ + * ÿÔö¼õÒ»¸ö°´¼ü£¬ÐèÒªÉèÖõÄÓÐ: + * + * key_typeö¾ÙÀàÐÍÖжÔÓ¦µÄö¾ÙÔªËØ + * + * ¶ÔÓ¦µÄkey_infomation±äÁ¿ + * + * key_init()º¯ÊýÖжÔÓ¦µÄ³õʼ»¯ÌõÄ¿ + * key_detect()º¯ÊýÖжÔÓ¦¼ì²âÌõÄ¿ + * get_key_mean()º¯ÊýÖжÔÓ¦»ñÈ¡ÌõÄ¿ + */ + + +#include + +#include "include.h" + +#include "include/key.h" +#include "include/config.h" + + +/* + * key_state - ±íʾ°´¼üµÄ״̬ + * key_state_0 ³õʼ״̬£¬»òÕß±íʾµÚÒ»´Îµ¥»÷״̬ + * key_state_1 Ïû¶¶ºÍÈ·ÈÏ״̬£¬»ò±íʾµÚ¶þ´Îµ¥»÷״̬ + * key_state_2 °´¼ü¼ÆÊ±×´Ì¬ + * key_state_3 °´¼üµÈ´ýÊÍ·Å״̬ + */ +typedef enum key_state_ +{ + key_state_0 = 0, key_state_1, key_state_2, key_state_3 +} key_state; + +/* + * IO״̬·ûºÅ¶¨Òå + */ +typedef enum state_sign_ +{ + INVALID = 0, VALID = 1 +} state_sign; + + +/* + * key_infomation - ±íʾһ¸ö°´¼üµÄÐÅÏ¢ + * state_baseºÍtime_baseÔÚkey_read_baseº¯ÊýÖÐʹÓõÄ״̬±äÁ¿ + * stateºÍtimeÔÚkey_readº¯ÊýÖÐʹÓõÄ״̬±äÁ¿ + * key_m±£´æµ±Ç°°´¼ü¶ÁÈ¡µÄ½á¹û + * get_state_io±äÁ¿Ö¸Ïò»ñÈ¡°´¼ü¶ÔÓ¦ÊäÈëio״̬µÄº¯Êý + */ +typedef struct key_infomation_ +{ + key_state state_base; + uint8_t time_base; + + key_state state; + uint8_t time; + + key_mean key_m; + + state_sign (*get_state_io)(void); +} key_infomation; + + + +/* + * ϱßÕ⼸¸öº¯Êý¶¨ÒåµÄÊÇ»ñÈ¡°´¼üio״̬µÄº¯Êý + */ +state_sign get_state_up_key_io(void) +{ return !gpio_get(UP_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_down_key_io(void) +{ return !gpio_get(DOWN_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_ok_key_io(void) +{ return !gpio_get(OK_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_ret_key_io(void) +{ return !gpio_get(RET_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_ams_key_io(void) +{ return !gpio_get(AMS_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_wifi_key_io(void) +{ return !gpio_get(WIFI_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_mr_key_io(void) +{ return !gpio_get(MR_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_mb_key_io(void) +{ return !gpio_get(MB_KEY_PINX) ? VALID : INVALID; } + +state_sign get_state_muvb_key_io(void) +{ return !gpio_get(MUVB_KEY_PINX) ? VALID : INVALID; } + + +// ¶¨Òå°´¼ü±äÁ¿²¢³õʼ»¯ +static volatile key_infomation +up_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_up_key_io }, +down_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_down_key_io }, +ok_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ok_key_io }, +ret_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ret_key_io }, +ams_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_ams_key_io }, +wifi_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_wifi_key_io }, +mr_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_mr_key_io }, +mb_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_mb_key_io }, +muvb_key_info = { key_state_0, 0, key_state_0, 0, N_KEY, get_state_muvb_key_io }; + + + +/** + * key_init() - °´¼üÄ£¿é³õʼ»¯ + * + */ +void key_init(void) +{ + gpio_Interrupt_init(UP_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(DOWN_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(OK_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(RET_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(AMS_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(WIFI_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(MR_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(MB_KEY_PINX, GPI_UP_PF, GPI_DISAB); + gpio_Interrupt_init(MUVB_KEY_PINX, GPI_UP_PF, GPI_DISAB); + + return; +} + + +/** + * key_read_base - °´¼ü»ù´¡¶ÁÈ¡º¯Êý£¬ + * @key_info: Òª¼ì²â°´¼üµÄËùÐèÐÅÏ¢,±ØÐëÔÚÊÇÈ«¾Ö±äÁ¿ÇøÖд洢µÄ + * + * Õâ¸öº¯Êý·µ»Ø N_KEY,S_KEY,L_KEYÈýÖÖÇé¿ö + */ +key_mean key_read_base(volatile key_infomation *key_info) +{ + state_sign key_state_io; + key_mean key_m = N_KEY; + + // »ñÈ¡io״̬ + key_state_io = (*(key_info->get_state_io))(); + switch(key_info->state_base) + { + case key_state_0: + if (key_state_io == VALID) + { + // °´¼ü°´ÏºóÊ×ÏȽøÈëÏû¶¶ºÍ°´¼üÈ·ÈÏ״̬ + key_info->state_base = key_state_1; + } + break; + case key_state_1: + if (key_state_io == VALID) + { + // °´¼üÈç¹ûÈÔÈ»°´Ï£¬ÔòÏû¶¶Íê³É + // ½øÐÐ״̬ת»»,²¢ÇÒ·µ»ØÎÞ°´¼üʼþ + key_info->time_base = 0; + key_info->state_base = key_state_2; + } + else + { + key_info->state_base = key_state_0; + } + break; + case key_state_2: + if (key_state_io == INVALID) + { + // ´Ëʱ°´¼üÊÍ·Å˵Ã÷Ϊһ´Î¶Ì²Ù×÷ + key_m = S_KEY; + key_info->state_base = key_state_0; + } + // ¼ÌÐø°´Ï£¬¼ÆÊ±¼Ó10ms£¬¼´±¾º¯Êýµ÷ÓÃÖÜÆÚ + else if (++key_info->time_base > 100) + { + // °´ÏÂʱ¼ä´óÓÚ1s£¬·µ»Ø³¤°´¼ü£¬²¢ÇÒת»»ÎªµÈ´ý°´¼üÊÍ·Å״̬ + key_m = L_KEY; + key_info->state_base = key_state_3; + } + break; + case key_state_3: + if (key_state_io == INVALID) + { + // °´¼ü´ËʱÒÑÊÍ·Å£¬×ª»»Îª³õʼ״̬ + key_info->state_base = key_state_0; + } + break; + default: + break; + } + return key_m; +} + +/** + * key_read - °´¼ü¶ÁÈ¡º¯Êý + * @key_info: Òª¼ì²âµÄ°´¼üËùÐèµÄÐÅÏ¢£¬±ØÐëÊÇÔÚÈ«¾Ö±äÁ¿ÇøÖд洢µÄ + * + * Õâ¸öº¯Êý»á·µ»ØN_KEY,S_KEY,D_KEY£¬L_KEYËÄÇé¿ö + */ +key_mean key_read(volatile key_infomation *key_info) +{ + key_mean key_m = N_KEY, + key_m_temp; + + key_m_temp = key_read_base(key_info); + switch(key_info->state) + { + case key_state_0: + if (key_m_temp == S_KEY) + { + // µÚÒ»´Îµ¥»÷״̬£¬ÈÔÈ»·µ»ØÎÞ¼ü£¬µ½Ï¸öÖÜÆÚÅжÏÊÇ·ñ³öÏÖË«»÷ + key_info->time = 0; + key_info->state = key_state_1; + } + else + { + // ¶ÔÓڷǵ¥»÷£¬·µ»ØÔ­Ê¼þ + key_m = key_m_temp; + } + break; + case key_state_1: + // ÓÖÒ»´Îµ¥»÷£¬¼ä¸ô < 300ms + if (key_m_temp == S_KEY) + { + key_m = D_KEY; + key_info->state = key_state_0; + } + else + { + if (++key_info->time > 30) + { + // 300msÄÚûÓÐÔÙ³öÏÖµ¥»÷ʼþ£¬Ôò·µ»ØÉÏÒ»´Îµ¥»÷ʼþ + key_m = S_KEY; + key_info->state = key_state_0; + } + } + break; + default: + break; + } + return key_m; +} + + +/** + * key_detect() - ¼ì²â°´¼ü + * + * Õâ¸öº¯Êý½öÔÚN_KEY״̬ʱ¼Ç¼°´¼üÐÅÏ¢£¬N_KEYÊÇÔÚÓ¦ÓóÌÐò»ñÈ¡°´¼üÐÅÏ¢µÄʱºòͬʱ + * ±»ÉèÖõģ¬ÕâÑù×öµÄÄ¿µÄÊDZ£Ö¤²É¼¯µ½µÄ°´¼üÒ»¶¨»á±»Ö´ÐÐ + * ÒªÇóÿ¸ô10msµ÷ÓÃÒ»´Î + */ +void key_detect(void) +{ + key_mean key_m; + + if ((key_m = key_read(&up_key_info)) != N_KEY) + { + up_key_info.key_m = key_m; + } + if ((key_m = key_read(&down_key_info)) != N_KEY) + { + down_key_info.key_m = key_m; + } + if ((key_m = key_read(&ok_key_info)) != N_KEY) + { + ok_key_info.key_m = key_m; + } + if ((key_m = key_read(&ret_key_info)) != N_KEY) + { + ret_key_info.key_m = key_m; + } + if ((key_m = key_read(&ams_key_info)) != N_KEY) + { + ams_key_info.key_m = key_m; + } + if ((key_m = key_read(&wifi_key_info)) != N_KEY) + { + wifi_key_info.key_m = key_m; + } + if ((key_m = key_read(&mr_key_info)) != N_KEY) + { + mr_key_info.key_m = key_m; + } + if ((key_m = key_read(&mb_key_info)) != N_KEY) + { + mb_key_info.key_m = key_m; + } + if ((key_m = key_read(&muvb_key_info)) != N_KEY) + { + muvb_key_info.key_m = key_m; + } + return; +} + + +/** + * get_key_mean() - µÃµ½Ö¸¶¨µÄ°´¼üÐÅÏ¢ + * + * Õâ¸öº¯ÊýÖÐÔÚÈ¡µÃÐÅÏ¢ºó»á½«¶ÔÓ¦°´¼üÖØÐ±ê¼ÇΪN_KEY + */ +key_mean get_key_mean(key_type key_t) +{ + key_mean key_m; + + switch (key_t) + { + case UP_KEY: + key_m = up_key_info.key_m; + up_key_info.key_m = N_KEY; + break; + case DOWN_KEY: + key_m = down_key_info.key_m; + down_key_info.key_m = N_KEY; + break; + case OK_KEY: + key_m = ok_key_info.key_m; + ok_key_info.key_m = N_KEY; + break; + case RET_KEY: + key_m = ret_key_info.key_m; + ret_key_info.key_m = N_KEY; + break; + case AMS_KEY: + key_m = ams_key_info.key_m; + ams_key_info.key_m = N_KEY; + break; + case WIFI_KEY: + key_m = wifi_key_info.key_m; + wifi_key_info.key_m = N_KEY; + break; + case MR_KEY: + key_m = mr_key_info.key_m; + mr_key_info.key_m = N_KEY; + break; + case MB_KEY: + key_m = mb_key_info.key_m; + mb_key_info.key_m = N_KEY; + break; + case MUVB_KEY: + key_m = muvb_key_info.key_m; + muvb_key_info.key_m = N_KEY; + break; + default: + break; + } + return key_m; +} + + +void clear_key_m(void) +{ + down_key_info.key_m = N_KEY; + up_key_info.key_m = N_KEY; + ok_key_info.key_m = N_KEY; + ret_key_info.key_m = N_KEY; + ams_key_info.key_m = N_KEY; + wifi_key_info.key_m = N_KEY; + mr_key_info.key_m = N_KEY; + mb_key_info.key_m = N_KEY; + muvb_key_info.key_m = N_KEY; +} diff --git a/plan_manage_main/src/app/knob.c b/plan_manage_main/src/app/knob.c index e804882..fee929e 100644 --- a/plan_manage_main/src/app/knob.c +++ b/plan_manage_main/src/app/knob.c @@ -1,95 +1,97 @@ -/* - * knob.c - ÌṩÐýÅ¥ÊäÈëµÄ½Ó¿Úº¯Êý - * - * ʹÓõÄÊÇÒ»¸öÊý×ÖÐýÅ¥£¬ÀûÓüÆÊýÀ´²É¼¯ÊäÈë - */ - -#include - -#include "include.h" - - -#include "include/knob.h" -#include "include/config.h" - - - -static volatile int32_t knob_val; - - - - -/* - * knob_init() - ΪÐýÅ¥ÊäÈë¶øÖ´Ðеijõʼ»¯ - * - * ÐýÅ¥µÄ¼ì²â³õʼ»¯ºóĬÈÏÊǽûÖ¹µÄ - */ -void knob_init(void) -{ - gpio_Interrupt_init(KNOB_A_PINX, GPI_UP_PF, GPI_INP_EITH); - gpio_Interrupt_init(KNOB_B_PINX, GPI_UP_PF, GPI_DISAB); - // gpio_Interrupt_init(KNOB_KEY_PINX, GPI_UP_PF, GPI_INP_EITH); - disable_irq(PortD_irq_no); - -} - - -/* - * knob_enable() - ʹÄÜÐýÅ¥Âö³å¼ì²â - */ -void knob_enable(void) -{ - enable_irq(PortD_irq_no); - return; -} - -/* - * knob_disable() - ½ûÖ¹ÐýÅ¥Âö³å¼ì²â - */ -void knob_disable(void) -{ - disable_irq(PortA_irq_no); - return; -} - - - -/* - * knob_clear() - Çå³ýÐýÅ¥Öµ - */ -void knob_clear(void) -{ - knob_val = 0; - return; -} - -/* - * get_knob_val() - ·µ»ØÐýÅ¥Öµ - */ -int32_t get_knob_val(void) -{ - return knob_val; -} - - -/* - * knob_detect() - ÐýÅ¥¼ì²â - * - * Õâ¸öº¯ÊýÐèÒªÔÚÐýÅ¥±àÂëÆ÷µÄAÏàÊä³ö·¢ÉúÑØÌø±äʱµ÷Ó㬼´ÉÏÏÂÑØÖжÏʱ - */ -void knob_detect(void) -{ - uint8_t knob_A, knob_B; - - knob_A = gpio_get(KNOB_A_PINX); - knob_B = gpio_get(KNOB_B_PINX); - if ((knob_A == 0 && knob_B == 1) || (knob_A == 1 && knob_B == 0)) - { - knob_val++; - } - else // ¼´if ((knob_A == 0 && knob_B == 0) || (knob_A == 1 && knob_B == 1)) - { - knob_val--; - } - return; -} +/* + * knob.c - ÌṩÐýÅ¥ÊäÈëµÄ½Ó¿Úº¯Êý + * + * ʹÓõÄÊÇÒ»¸öÊý×ÖÐýÅ¥£¬ÀûÓüÆÊýÀ´²É¼¯ÊäÈë + */ + +#include + +#include "include.h" +#include "arm_cm0.h" +#include "vectors.h" + +#include "include/config.h" +#include "include/knob.h" + + + +static volatile int32_t knob_val; + + + + +/* + * knob_init() - ΪÐýÅ¥ÊäÈë¶øÖ´Ðеijõʼ»¯ + * + * ÐýÅ¥µÄ¼ì²â³õʼ»¯ºóĬÈÏÊǽûÖ¹µÄ + */ +void knob_init(void) +{ + gpio_Interrupt_init(KNOB_A_PINX, GPI_UP_PF, GPI_INP_EITH); + gpio_Interrupt_init(KNOB_B_PINX, GPI_UP_PF, GPI_DISAB); + // gpio_Interrupt_init(KNOB_KEY_PINX, GPI_UP_PF, GPI_INP_EITH); + disable_irq(PortD_irq_no); + +} + + +/* + * knob_enable() - ʹÄÜÐýÅ¥Âö³å¼ì²â + */ +void knob_enable(void) +{ + enable_irq(PortD_irq_no); + return; +} + +/* + * knob_disable() - ½ûÖ¹ÐýÅ¥Âö³å¼ì²â + */ +void knob_disable(void) +{ + disable_irq(PortD_irq_no); + return; +} + + + +/* + * knob_clear() - Çå³ýÐýÅ¥Öµ + */ +void knob_clear(void) +{ + knob_val = 0; + return; +} + +/* + * get_knob_val() - ·µ»ØÐýÅ¥Öµ + */ +int32_t get_knob_val(void) +{ + return knob_val; +} + + +/* + * knob_detect() - ÐýÅ¥¼ì²â + * + * Õâ¸öº¯ÊýÐèÒªÔÚÐýÅ¥±àÂëÆ÷µÄAÏàÊä³ö·¢ÉúÑØÌø±äʱµ÷Ó㬼´ÉÏÏÂÑØÖжÏʱ + */ +void knob_detect(void) +{ + uint8_t knob_A, knob_B; + + knob_A = gpio_get(KNOB_A_PINX); + knob_B = gpio_get(KNOB_B_PINX); + if ((knob_A == 0 && knob_B == 1) || (knob_A == 1 && knob_B == 0)) + { + knob_val++; + } + // ¼´if ((knob_A == 0 && knob_B == 0) || (knob_A == 1 && knob_B == 1)) + else + { + knob_val--; + } + return; +} diff --git a/plan_manage_main/src/app/main.c b/plan_manage_main/src/app/main.c index ff03c8d..78da0f8 100644 --- a/plan_manage_main/src/app/main.c +++ b/plan_manage_main/src/app/main.c @@ -1,163 +1,108 @@ - -#include -#include - -#include "common.h" - -#include "include/pm_init.h" -#include "include/simulat_timer.h" -#include "include/key.h" -#include "include/knob.h" -#include "include/tft.h" -#include "include/config.h" -#include "include/pm_time.h" -#include "include/plan_handle.h" -#include "include/pm_flash.h" - - - -void main(void) -{ - - pm_init(); - - st_init(0, COMPARE, 10); // ×÷Ϊ°´¼üɨÃ躯ÊýµÄ¶¨Ê±Ê¹Óã¬ÔÚsimulat_timer.cµÄµ×²ãÖÐʹÓà - st_init(1, COMPARE, 500); - - st_init(2, COMPARE, 1); - st_init(3, COMPARE, 500); - - calendar_info sys_cal = { - 0, 1, 2, 3, 4, 2012, 0, 1 - }; - ds1302_set_time(&sys_cal); - - knob_enable(); - - while (1) - { - /* - * ʱ¼äÒÔ¼°¼Æ»®´¦Àí - */ - if (st_tcf(1) == 1) - { - maintain_system_time(); - - calendar_info st= get_system_time(); - *get_value_of_kvp("st_y", 0) = st.year; - *get_value_of_kvp("st_mo", 0) = st.month; - *get_value_of_kvp("st_d", 0) = st.mday; - *get_value_of_kvp("st_h", 0) = st.hour; - *get_value_of_kvp("st_mi", 0) = st.min; - *get_value_of_kvp("st_s", 0) = st.sec; - tft_page_refresh(); - - plan_handle(); - } - - /* - * µ÷ÊÔÏà¹Ø£¬½Ï¶Ìʱ¼äÏìÓ¦ - */ - if (st_tcf(2) == 1) - { - static int32_t log = 0, knob_v; - if (log != (knob_v = get_knob_val())) - { - printf("knob = %d\n", knob_v); - log = knob_v; - } - } - - /* - * µ÷ÊÔÏà¹Ø£¬½Ï³¤Ê±¼äÏìÓ¦ - */ - if (st_tcf(3) == 1) - { - calendar_info st = get_system_time(); - - printf("%d Äê %d Ô %d ÐÇÆÚ %d ÈÕ %d ʱ %d ·Ö %d Ãë\n", - st.year, st.month, st.wday, st.mday, - st.hour, st.min, st.sec); - printf("sec = %d\n", calendar_to_sec(&st)); - } - - /* - * °´¼ü¹¦ÄÜ×¢²á²¿·Ö - */ - switch (get_key_mean(UP_KEY)) - { - case N_KEY: - //printf("ÎÞ¼ü\n"); - break; - case S_KEY: - printf("µ¥»÷\n"); - tft_left(); - break; - case D_KEY: - printf("Ë«»÷\n"); - tft_up(); - break; - case L_KEY: - printf("³¤°´\n"); - break; - default: - break; - } - switch (get_key_mean(DOWN_KEY)) - { - case N_KEY: - //printf("ÎÞ¼ü\n"); - break; - case S_KEY: - printf("µ¥»÷\n"); - tft_right(); - break; - case D_KEY: - printf("Ë«»÷\n"); - tft_down(); - break; - case L_KEY: - printf("³¤°´\n"); - break; - default: - break; - } - switch (get_key_mean(OK_KEY)) - { - case N_KEY: - //printf("ÎÞ¼ü\n"); - break; - case S_KEY: - printf("µ¥»÷\n"); - tft_ok(); - break; - case D_KEY: - printf("Ë«»÷\n"); - break; - case L_KEY: - printf("³¤°´\n"); - break; - default: - break; - } - switch (get_key_mean(RET_KEY)) - { - case N_KEY: - //printf("ÎÞ¼ü\n"); - break; - case S_KEY: - printf("µ¥»÷\n"); - tft_ret(); - break; - case D_KEY: - printf("Ë«»÷\n"); - break; - case L_KEY: - printf("³¤°´\n"); - break; - default: - break; - } - } - return; -} + +#include +#include + +#include "common.h" + +#include "include/pm_init.h" +#include "include/simulat_timer.h" +#include "include/key.h" +#include "include/knob.h" +#include "include/tft.h" +#include "include/config.h" +#include "include/pm_time.h" +#include "include/plan_handle.h" +#include "include/pm_flash.h" +#include "include/orient.h" + + + +void main(void) +{ + + printf("\n\n\n³ÌÐò¿ªÊ¼Ö´ÐУ¡£¡£¡\n\n\n"); + enter_critical(); + pm_init(); + exit_critical(); + /* + * ×÷Ϊ°´¼üɨÃ躯ÊýµÄ¶¨Ê±Ê¹Óã¬ÔÚsimulat_timer.cµÄµ×²ãÖÐʹÓà + */ + st_init(0, COMPARE, 10); + st_init(1, COMPARE, 100); + +#ifdef PM_DEBUG + st_init(2, COMPARE, 1); + st_init(3, COMPARE, 500); +#endif /* PM_DEBUG */ + + knob_enable(); + + + while (1) + { + /* + * ʱ¼äÒÔ¼°¼Æ»®´¦Àí + */ + if (st_tcf(1) == 1) + { + maintain_system_time(); + + calendar_info st= get_system_time(); + *get_value_of_kvp("st_y", 0) = st.year; + *get_value_of_kvp("st_mo", 0) = st.month; + *get_value_of_kvp("st_d", 0) = st.mday; + *get_value_of_kvp("st_h", 0) = st.hour; + *get_value_of_kvp("st_mi", 0) = st.min; + *get_value_of_kvp("st_s", 0) = st.sec; + tft_page_refresh(); + + plan_handle(); + } + +#ifdef PM_DEBUG + /* + * µ÷ÊÔÏà¹Ø£¬½Ï¶Ìʱ¼äÏìÓ¦ + */ + if (st_tcf(2) == 1) + { + static int32_t log = 0, knob_v; + if (log != (knob_v = get_knob_val())) + { + printf("knob = %d\n", knob_v); + log = knob_v; + } + } + + /* + * µ÷ÊÔÏà¹Ø£¬½Ï³¤Ê±¼äÏìÓ¦ + */ + if (st_tcf(3) == 1) + { + calendar_info st = get_system_time(); + + printf("%d Äê %d Ô %d ÐÇÆÚ %d ÈÕ %d ʱ %d ·Ö %d Ãë\n", + st.year, st.month, st.wday, st.mday, + st.hour, st.min, st.sec); + printf("sec = %d\n", calendar_to_sec(&st)); + + static uint8_t lg_test; + lg_test = !lg_test; + gpio_set(LG1_PINX, 0); + gpio_set(LG2_PINX, 0); + gpio_set(LG3_PINX, 0); + + if (gpio_get(AMS_KEY_PINX)) + { + printf("¼Æ»®!!!!!!\n"); + } + else + { + printf("ÊÖ¶¯!!!!!!\n"); + } + } +#endif /* PM_DEBUG */ + + key_func(); + } + return; +} diff --git a/plan_manage_main/src/app/orient.c b/plan_manage_main/src/app/orient.c new file mode 100644 index 0000000..619a603 --- /dev/null +++ b/plan_manage_main/src/app/orient.c @@ -0,0 +1,120 @@ +/* + * orient.c - å…³äºŽå…‰ç…§æ–¹å‘æŽ§åˆ¶çš„æ¨¡å— + * + * 所有如上,所有如下 + */ + + +#include "uart.h" + +#include "include/orient.h" +#include "include/config.h" + + +void orient_init(void) +{ + uart_init(ORIENT_UARTX, 2400); + gpio_init(RE_DE_PINX, 1, 1); + + orient_setmode(0, MODE_MANUL); + orient_setmode(1, MODE_MANUL); + return; +} + +/* + * orient_setspeed() - è®¾ç½®æ–¹å‘æŽ§åˆ¶çš„é€Ÿåº¦ä»¥åŠè§’度 + * + * @addr: 地å€ç  + * @ori: æ–¹å‘ + * @spd: 表示速度,范围在0~100 + */ +void orient_setspeed(uint8_t addr, orient ori, uint8_t spd) +{ + uint8_t cmd[7] = { 0xff, addr, 0x00, 0x00, 0x00, 0x00, 0x00 }; + + switch (ori) + { + case ORIENT_UP: + cmd[3] = 0x08; + break; + case ORIENT_DOWN: + cmd[3] = 0x10; + break; + case ORIENT_LEFT: + cmd[3] = 0x04; + break; + case ORIENT_RIGHT: + cmd[3] = 0x02; + default: + break; + } + + if (spd > 100) + { + spd = 100; + } + cmd[4] = (uint16_t)0x3f * spd / 100; + cmd[6] = cmd[1] + cmd[2] + cmd[3] + cmd[4] + cmd[5]; + + uart_sendN(ORIENT_UARTX, cmd, 7); + return; +} + + +/* + * orient_presetop() - 设置预置点 + * + * @addr: 地å€ç  + * @op: 对预置点的æ“作 + * @npre: é¢„ç½®ç‚¹ç¼–å· + */ +void orient_presetop(uint8_t addr, preset_op op, uint8_t npre) +{ + uint8_t cmd[7] = { 0xff, addr, 0x00, 0x00, 0x00, npre, 0x00 }; + + switch (op) + { + case PRESET_SET: + cmd[3] = 0x03; + break; + case PRESET_CALL: + cmd[3] = 0x07; + break; + case PRESET_CLEAR: + cmd[3] = 0x05; + break; + default: + break; + } + + cmd[6] = cmd[1] + cmd[2] + cmd[3] + cmd[4] + cmd[5]; + uart_sendN(ORIENT_UARTX, cmd, 7); + return; +} + +/* + * orient_setmode() - è®¾ç½®äº‘å°æ¨¡å¼ + * + * @addr: 地å€ç  + * @mod: æ¨¡å¼æ ‡å¿— + */ +void orient_setmode(uint8_t addr, orient_mode mod) +{ + uint8_t cmd[7] = { 0xff, addr, 0x00, 0x00, 0x00, 0x00, 0x00 }; + + switch (mod) + { + case MODE_AUTO: + cmd[2] = 0x90; + break; + case MODE_MANUL: + cmd[2] = 0x00; + break; + default: + break; + } + cmd[6] = cmd[1] + cmd[2] + cmd[3] + cmd[4] + cmd[5]; + + uart_sendN(ORIENT_UARTX, cmd, 7); + return; +} diff --git a/plan_manage_main/src/app/plan_handle.c b/plan_manage_main/src/app/plan_handle.c index 5bc64ba..c31a5d8 100644 --- a/plan_manage_main/src/app/plan_handle.c +++ b/plan_manage_main/src/app/plan_handle.c @@ -1,154 +1,714 @@ -/* - * plan_handle.c - è®¡åˆ’å¤„ç†æ¨¡å— - * - * 计划处ç†ï¼ŒæŒ‡çš„æ˜¯æ ¹æ®å†…存中的计划数æ®å’Œæ—¶é—´æ•°æ®å¾—出输出数æ®ï¼Œè¾“出数æ®åŒ…括继电器信 - * å·ã€æ¤ç‰©å±žæ€§å€¼ã€‚ - * 关于æ¤ç‰©å±žæ€§å€¼ï¼ŒåŒ…括已完æˆè®¡åˆ’周期次数,等。 - * 基本原则是,起始周期时间区间加上é‡å¤å‘¨æœŸæ•°å¯ä»¥å¾—到一个区间集åˆï¼Œåˆ¤æ–­å½“剿—¶é—´æ˜¯å¦ - * 属于这个时间区间集åˆä¸­çš„一个区间中的一个时间点。由此得到继电器信å·ï¼Œå¹¶åœ¨ç»§ç”µå™¨ä¿¡ - * å·è¢«ç½®ä¸ºæ— æ•ˆçš„æ—¶å€™å°†è®¡åˆ’周期次数加一。 - * 需è¦è§£å†³çš„问题有,如何访问计划数æ®ä¸Žæ—¶é—´æ•°æ®ï¼Œä»¥åŠå¦‚何写入输出数æ®ã€‚ - * 计划数æ®åœ¨tft.c模å—ï¼Œå±žäºŽé™æ€æ•°æ®ï¼Œå¦‚æžœè¦è®¿é—®çš„è¯ï¼Œæœ‰ä¸¤ç§æ–¹å¼ï¼Œä¸€æ˜¯å£°æ˜Žè®¡åˆ’æ•°æ® - * 的类型并返回其整体地å€ï¼Œä¸€ä¸ªæ•´ä½“地å€å¯ä»¥è®¿é—®åˆ°æ‰€æœ‰çš„对象属性,ä¸è¿‡éœ€è¦çŸ¥é“这个地 - * å€ä¸Šæ•°æ®çš„分布情况,需è¦é¢å¤–的数æ®ã€‚äºŒæ˜¯æ ¹æ®æ¯ä¸ªå…ƒç´ çš„å字通过查询得到其å•独的值。 - */ - -#include - -#include "gpio.h" - -#include "include/plan_handle.h" -#include "include/pm_time.h" -#include "include/tft.h" -#include "config.h" - -typedef struct plan_output_ -{ - uint8_t is_lgreach; - uint8_t is_wtreach; - uint8_t lg_cnt; - uint8_t wt_cnt; -} plan_output; - -typedef struct plan_input_ -{ - calendar_info lgbg_t; - calendar_info lged_t; - calendar_info lgpd_t; - - calendar_info wtbg_t; - calendar_info wted_t; - calendar_info wtpd_t; - - uint8_t x_orient; - uint8_t y_orient; - uint8_t lg_r : 1; - uint8_t lg_b : 1; - uint8_t lg_uvb : 1; - uint8_t water : 1; - uint8_t sw : 1; -} plan_input; - -static void indata_to_outdata(plan_input *ind, plan_output *outd); -static void ctr_exe(uint8_t activity); - - -static plan_output plan_out[PLAN_DATA_NUM] = { 0 }; -plan_input plan_in[PLAN_DATA_NUM] = { 0 }; - - - -void plan_handle_init(void) -{ - gpio_Interrupt_init(LGRED_PINX, GPO, GPI_DISAB); - gpio_Interrupt_init(LGBLUE_PINX, GPO, GPI_DISAB); - gpio_Interrupt_init(LGUVB_PINX, GPO, GPI_DISAB); - gpio_Interrupt_init(WATER_PINX, GPO, GPI_DISAB); - // 还有设置方å‘çš„åˆå§‹åŒ– - return; -} - - - -static void indata_to_outdata(plan_input *ind, plan_output *outd) -{ - calendar_info st = get_system_time(); - uint32_t sys_sec = calendar_to_sec(&st); - - uint32_t lgpd_sec = calendar_to_sec(&ind->lgpd_t); - uint32_t crt_lgbg_sec = calendar_to_sec(&ind->lgbg_t) + lgpd_sec * outd->lg_cnt; - uint32_t crt_lged_sec = calendar_to_sec(&ind->lged_t) + lgpd_sec * outd->lg_cnt; - - uint32_t wtpd_sec = calendar_to_sec(&ind->wtpd_t); - uint32_t crt_wtbg_sec = calendar_to_sec(&ind->wtbg_t) + wtpd_sec * outd->wt_cnt; - uint32_t crt_wted_sec = calendar_to_sec(&ind->wted_t) + wtpd_sec * outd->wt_cnt; - - if (crt_lgbg_sec < sys_sec && crt_lged_sec > sys_sec) - { - outd->is_lgreach = 1; - } - else - { - if (outd->is_lgreach == 1) - { - outd->lg_cnt++; - } - outd->is_lgreach = 0; - } - - if (crt_wtbg_sec < sys_sec && crt_wted_sec > sys_sec) - { - outd->is_wtreach = 1; - } - else - { - if (outd->is_wtreach== 1) - { - outd->wt_cnt++; - } - outd->is_wtreach = 0; - } - return; -} - -static void ctr_exe(uint8_t activity) -{ - if (activity >= PLAN_DATA_NUM) - { - gpio_set(LGRED_PINX, 0); - gpio_set(LGBLUE_PINX, 0); - gpio_set(LGUVB_PINX, 0); - gpio_set(WATER_PINX, 0); - } - else - { - //set_orient(plan_in[activity].x_orient, plan_in[activity].y_orient); - gpio_set(LGRED_PINX, plan_in[activity].lg_r); - gpio_set(LGBLUE_PINX, plan_in[activity].lg_b); - gpio_set(LGUVB_PINX, plan_in[activity].lg_uvb); - gpio_set(WATER_PINX, plan_in[activity].water); - } - return; -} - - -void plan_handle(void) -{ - uint8_t activity = PLAN_DATA_NUM; - - for (uint8_t i = 0; i < PLAN_DATA_NUM; i++) - { - indata_to_outdata(&plan_in[i], &plan_out[i]); - if (plan_in[i].sw == 1) - { - if (plan_out[i].is_lgreach == 1 || plan_out[i].is_wtreach == 1) - { - activity = i; - break; - } - } - } - ctr_exe(activity); - return; -} - +/* + * plan_handle.c - ¼Æ»®´¦ÀíÄ£¿é + * + * ¼Æ»®´¦Àí£¬Ö¸µÄÊǸù¾ÝÄÚ´æÖеļƻ®Êý¾ÝºÍʱ¼äÊý¾ÝµÃ³öÊä³öÊý¾Ý£¬Êä³öÊý¾Ý°üÀ¨¼Ìµç + * Æ÷Ðźš¢Ö²ÎïÊôÐÔÖµ¡£ + * ¹ØÓÚÖ²ÎïÊôÐÔÖµ£¬°üÀ¨ÒÑÍê³É¼Æ»®ÖÜÆÚ´ÎÊý£¬µÈ¡£ + * »ù±¾Ô­ÔòÊÇ£¬ÆðʼÖÜÆÚʱ¼äÇø¼ä¼ÓÉÏÖØ¸´ÖÜÆÚÊý¿ÉÒԵõ½Ò»¸öÇø¼ä¼¯ºÏ£¬Åжϵ±Ç°Ê±¼ä + * ÊÇ·ñÊôÓÚÕâ¸öʱ¼äÇø¼ä¼¯ºÏÖеÄÒ»¸öÇø¼äÖеÄÒ»¸öʱ¼äµã¡£Óɴ˵õ½¼ÌµçÆ÷Ðźţ¬²¢ÔÚ + * ¼ÌµçÆ÷Ðźű»ÖÃΪÎÞЧµÄʱºò½«¼Æ»®ÖÜÆÚ´ÎÊý¼ÓÒ»¡£ + * ÐèÒª½â¾öµÄÎÊÌâÓУ¬ÈçºÎ·ÃÎʼƻ®Êý¾ÝÓëʱ¼äÊý¾Ý£¬ÒÔ¼°ÈçºÎдÈëÊä³öÊý¾Ý¡£ + * ¼Æ»®Êý¾ÝÔÚtft.cÄ£¿é£¬ÊôÓÚ¾²Ì¬Êý¾Ý£¬Èç¹ûÒª·ÃÎʵϰ£¬ÓÐÁ½ÖÖ·½Ê½£¬Ò»ÊÇÉùÃ÷¼Æ»® + * Êý¾ÝµÄÀàÐͲ¢·µ»ØÆäÕûÌ嵨ַ£¬Ò»¸öÕûÌ嵨ַ¿ÉÒÔ·ÃÎʵ½ËùÓеĶÔÏóÊôÐÔ£¬²»¹ýÐèÒªÖª + * µÀÕâ¸öµØÖ·ÉÏÊý¾ÝµÄ·Ö²¼Çé¿ö£¬ÐèÒª¶îÍâµÄÊý¾Ý¡£¶þÊǸù¾Ýÿ¸öÔªËØµÄÃû×Öͨ¹ý²éѯµÃ + * µ½Æäµ¥¶ÀµÄÖµ¡£ + */ + +#include + +#include "gpio.h" + +#include "include/tft_plan_internal.h" + +#include "include/plan_handle.h" +#include "include/tft.h" +#include "include/config.h" +#include "include/pm_flash.h" +#include "include/orient.h" +#include "include/key.h" + +/* + * ¼Æ»®Êä³öÊý¾ÝÀàÐͶ¨Òå + * is_reach±íʾÊÇ·ñµ½´ï¼Æ»®Ö´ÐÐʱ¼ä£¬ + * noteÊÇÒ»¸ö×Ö·û´®£¬¿ÉÒÔÓÃÀ´´æ´¢Ò»Ð©ÌáʾÐÔ×Ö·û + */ +typedef struct plan_output_ +{ + uint8_t is_reach; + uint8_t note[10]; +} plan_output; + +typedef enum lg_state_ +{ + LIGHT = 1, NO_LIGHT = 0 +} lg_state; + + +/* + * ¾²Ì¬º¯ÊýÉùÃ÷ + */ +static void indata_to_outdata(plan_input *ind, plan_output *outd); +static void plan_ctr_exe(uint8_t activity); +static void plan_inpu_to_tft(void); +static void plan_key_func(void); +static void manul_key_func(void); +static void manul_ctr(void); +static void plan_ctr(void); + +/* + * Êä³öºÍÊäÈë±äÁ¿¶¨Ò壬³õʼ»¯È«²¿Îª0 + */ +static plan_output plan_out[OBJ_NUM] = { 0 }; +plan_input plan_in[OBJ_NUM] = { 0 }; + + + +/** + * plan_handle_init() - ¶Ô¼Æ»®´¦ÀíÄ£¿é½øÐгõʼ»¯ + * + * Ö÷Òª°üÀ¨IO³õʼ»¯ºÍ¼Æ»®Êý¾ÝµÄÉϵç»Ö¸´¹¤×÷ + */ +void plan_handle_init(void) +{ + gpio_init(LGRED_PINX, 1, NO_LIGHT); + gpio_init(LGBLUE_PINX, 1, NO_LIGHT); + gpio_init(LGUVB_PINX, 1, NO_LIGHT); + gpio_init(WATER_PINX, 1, 0); + + gpio_init(LG1_PINX, 1, 1); + gpio_init(LG2_PINX, 1, 1); + gpio_init(LG3_PINX, 1, 1); + + /* + * Êý¾Ý»Ö¸´£¬Êý¾Ý´Ó´Óflashµ½plan_handleÄ£¿é£¬ÔÙ´Óplan_handleÄ£¿éµ½tftÄ£¿é + */ + flash_read((uint8_t *)&plan_in, sizeof(plan_in)); + plan_inpu_to_tft(); + + return; +} + + + +/** + * indata_to_outdata() - ½«Ò»¸öÖ²ÎïÊäÈëµÄ¼Æ»®Êý¾Ýת»»Îª¶ÔÓ¦µÄÊä³öÊý¾Ý + * @ind: ¼Æ»®ÊäÈëÊý¾ÝµÄµØÖ· + * @outd: ת»»ºóµÄÖµµÃµØÖ· + * + * Ö÷ÒªµÄ¹¦ÄÜÊǸù¾ÝÊäÈëµÄÊý¾ÝµÃµ½ÊÇ·ñµ½´ï¼Æ»®Ö´ÐÐʱ¼ä£¬ÒÔ¼°Íê³É¼Æ»®µÄ´ÎÊý + */ +static void indata_to_outdata(plan_input *ind, plan_output *outd) +{ + // Ê×Ïȵõ½ÏµÍ³Ê±¼ä²¢×ª»»ÎªÈÕÀúʱ¼ä¸ñʽ + calendar_info st = get_system_time(); + uint32_t sys_sec = calendar_to_sec(&st); + + /* + * ÒòΪÔÚÖÜÆÚʱ¼äÊäÈëµÄʱºòûÓÐÊäÈëÄê¡¢Ô¡¢ÃëµÄµØ·½£¬ËùÒÔ½«Æä³õʼ»¯ÎªÆðʼֵ + * ÒÔ·½±ã¼ÆËãÖÜÆÚʱ¼ä + */ + ind->pd_t.year = START_YEAR; + ind->pd_t.month = 1; + ind->pd_t.sec = 0; + uint32_t pd_sec = calendar_to_sec(&ind->pd_t); + + /* + * ½«µÚÒ»´Î¿ªÊ¼µÄʱ¼ä¼ÓÉÏÖÜÆÚʱ³¤³ËÒÔÒÑÍê³É´ÎÊý£¬µÃµ½µ±Ç°µÄ¿ªÊ¼Ê±¼ä£» + * ½áÊøÊ±¼äµÄ¼ÆËãͬ¿ªÊ¼Ê±¼ä¡£ + * ÓÉÕâÁ½¸öʱ¼ä¿ÉÒԵõ½µ±Ç°Ö´Ðмƻ®µÄÇø¼ä¡£ + */ + uint32_t ctr_bg_sec = calendar_to_sec(&ind->bg_t) + pd_sec * ind->cnt; + uint32_t ctr_ed_sec = calendar_to_sec(&ind->ed_t) + pd_sec * ind->cnt; + + // ±È½Ïϵͳʱ¼äÊÇ·ñÔÚÖ´Ðмƻ®µÄÇø¼ä + if (ctr_bg_sec < sys_sec && ctr_ed_sec > sys_sec) + { + outd->is_reach = 1; + } + else + { + if (outd->is_reach == 1) + { + /* + * Èç¹ûûÓÐÔÚÖ´ÐÐÇø¼ä£¬²¢ÇÒÉÏÒ»´ÎÔÚÖ´ÐÐÇø¼äµÄ»°£¬±íÃ÷Ò»´Î¼Æ»®Ö´ÐÐÍê + * ³É£¬¸ø¼Æ»®Íê³É´ÎÊý¼ÓÒ»¡£ + */ + ind->cnt++; + } + outd->is_reach = 0; + } + + return; +} + + +/** + * plan_ctr_exe() - ¼Æ»®¿ØÖƵÄÊä³öÖ´ÐÐ + * @activity: ±íʾִÐÐÄÄÒ»¸ö¼Æ»®»î¶¯£¬Ò»¸ö»î¶¯±àºÅ¶ÔÓ¦Ò»¸öÖ²Îµ±activity´óÓÚ + * Ö²ÎïµÄ±àºÅʱ£¬±íʾûÓмƻ®ÈÎÎñÐèÒªÖ´ÐС£ + * + * Ö÷Òª°üÀ¨IOÊä³ö¿ØÖÆÒÔ¼°ÔÆÌ¨Ô¤ÖÃλ¿ØÖÆ + */ +static void plan_ctr_exe(uint8_t activity) +{ + /* + * isnt_firstÊý×éÊÇΪÁ˱ê¼Çÿһ¸ö»î¶¯ÔÚÒ»´Î¼Æ»®Çø¼äÄÚÊDz»ÊǵÚÒ»´ÎÖ´ÐУ¬Ö÷Òª + * ÊÇÒòΪ²»ÄÜÆµ·±µÄ¶à´Îµ÷ÓÃÔÆÌ¨µÄÔ¤ÖÃλ + */ + static uint8_t isnt_first[OBJ_NUM] = { 0 }; + if (activity >= OBJ_NUM) + { + // activity´óÓÚÖ²ÎïµÄ±àºÅµÄ»°£¬´ú±íûÓмƻ®ÈÎÎñÐèÒªÖ´ÐÐ + for (uint8_t i = 0; i < OBJ_NUM; i++) + { + isnt_first[i] = 0; + } + gpio_set(LGRED_PINX, NO_LIGHT); + gpio_set(LGBLUE_PINX, NO_LIGHT); + gpio_set(LGUVB_PINX, NO_LIGHT); + gpio_set(WATER_PINX, NO_LIGHT); + } + else + { + // µ±activity¶ÔÓ¦ÓÚÒ»¸öÖ²Îï±àºÅ²¢ÇÒÊǵÚÒ»´ÎÖ´ÐеÄʱºò£¬¾ÍÖ´Ðмƻ® + if (isnt_first[activity] == 0) + { + orient_presetop(0, PRESET_CALL, activity + 1); + orient_presetop(1, PRESET_CALL, activity + 1); + gpio_set(LGRED_PINX, plan_in[activity].lg_r == 1 ? LIGHT : NO_LIGHT); + gpio_set(LGBLUE_PINX, plan_in[activity].lg_b == 1 ? LIGHT : NO_LIGHT); + gpio_set(LGUVB_PINX, plan_in[activity].lg_uvb == 1 ? LIGHT : NO_LIGHT); + gpio_set(WATER_PINX, plan_in[activity].water == 1 ? LIGHT : NO_LIGHT); + isnt_first[activity] = 1; + } + + } + return; +} + + +/** + * plan_ctr() - ¼Æ»®¿ØÖÆ + * + * Íê³É´Ó¼Æ»®Êý¾Ýµ½Êä³öÖ´ÐеŦÄÜ¡£ + */ +void plan_ctr(void) +{ + // Ê×Ïȳõʼ»¯»î¶¯²»ÎªÈÎÒâÒ»¸öÖ²Îï±àºÅ + uint8_t activity = OBJ_NUM; + + // ÒÀ´Î±éÀúÿһ¸öÖ²ÎµÃµ½ÐèÒªÖ´ÐеĻºÅ£¬¼´¶ÔÓ¦µÄÖ²Îï±àºÅ + for (uint8_t i = 0; i < OBJ_NUM; i++) + { + indata_to_outdata(&plan_in[i], &plan_out[i]); + if (plan_in[i].sw == 1) + { + if (plan_out[i].is_reach == 1) + { + activity = i; + break; + } + } + } + plan_ctr_exe(activity); + return; +} + + +/** + * plan_handle() - ¼Æ»®´¦Àí + * + * Íê³É¼Æ»®Ä£Ê½µÄÊý¾Ý´¦Àí¼°Êä³ö¹¦ÄÜ£¬ÊÖ¶¯Ä£Ê½ÏÂÒòΪ¼òµ¥²»ÐèÒª¸´ÔÓµÄÊý¾ÝÔËË㣬 + * ´Ë´¦´¦ÀíΪ¿Õ£¬Ö±½ÓÔÚÆäÊäÈ벿·ÖÖ´ÐÐ + */ +void plan_handle(void) +{ + if (gpio_get(AMS_KEY_PINX)) + { + plan_ctr(); + } + else + { + manul_ctr(); + } + return; +} + +/** + * key_func() - Íê³ÉÊÖ¶¯ºÍ×Ô¶¯Ä£Ê½Ïµİ´¼üÊäÈ빦ÄÜ + * + * ÔÚ×Ô¶¯Ä£Ê½ÏÂÖ»ÊÇÊý¾ÝµÄÊäÈ룬ÔÚÊÖ¶¯Ä£Ê½ÔÚ°üÀ¨Êý¾ÝµÄÊäÈëºÍ¶ÔÓ¦µÄÊä³öÖ´Ðв¿·Ö¡£ + */ +void key_func(void) +{ + if (gpio_get(AMS_KEY_PINX)) + { + plan_key_func(); + } + else + { + manul_key_func(); + } + return; +} + + +/** + * manul_ctr() - ÊÖ¶¯¿ØÖƲ¿·Ö + * + * Ϊ¿Õº¯Êý + */ +void manul_ctr(void) +{ + return; +} + +/** + * tft_to_plan_input() - ½«tftÏÔʾµÄÊý¾ÝÌáÈ¡µ½¼Æ»®´¦ÀíµÄÊäÈëÊý¾Ý½á¹¹ÖÐ + * @objn: ÌáÈ¡µÄ¶ÔÏóºÅ£¬0~7 + * + * Õâ¸öº¯ÊýÓ¦¸ÃÔÚtftÊäÈëÓиıäÊDZ»µ÷Óᣠ+ */ +void tft_to_plan_input(uint8_t objn) +{ + plan_in[objn].bg_t.year = *get_value_of_kvp("bg_y", objn); + plan_in[objn].bg_t.month = *get_value_of_kvp("bg_mo", objn); + plan_in[objn].bg_t.mday = *get_value_of_kvp("bg_d", objn); + plan_in[objn].bg_t.hour = *get_value_of_kvp("bg_h", objn); + plan_in[objn].bg_t.min = *get_value_of_kvp("bg_mi", objn); + plan_in[objn].bg_t.sec = 0; + + /* + * ½áÊøÊ±¼äÔÚtftÌõĿûÓÐÄê¡¢Ô¡¢ÈÕ£¬¸³ÖµÎªºÍ¿ªÊ¼Ê±¼äÏàͬ + */ + plan_in[objn].ed_t.year = plan_in[objn].bg_t.year; + plan_in[objn].ed_t.month = plan_in[objn].bg_t.month; + plan_in[objn].ed_t.mday = plan_in[objn].bg_t.mday; + plan_in[objn].ed_t.hour = *get_value_of_kvp("ed_h", objn); + plan_in[objn].ed_t.min = *get_value_of_kvp("ed_mi", objn); + plan_in[objn].ed_t.sec = 0; + + plan_in[objn].pd_t.mday = *get_value_of_kvp("pd_d", objn); + plan_in[objn].pd_t.hour = *get_value_of_kvp("pd_h", objn); + plan_in[objn].pd_t.min = *get_value_of_kvp("pd_mi", objn); + + plan_in[objn].lg_r = *get_value_of_kvp("lg_r", objn); + plan_in[objn].lg_b = *get_value_of_kvp("lg_b", objn); + plan_in[objn].lg_uvb = *get_value_of_kvp("lg_uvb", objn); + plan_in[objn].water = *get_value_of_kvp("water", objn); + + plan_in[objn].sw = *get_value_of_kvp("sw", objn); + plan_in[objn].cnt = *get_value_of_kvp("cnt", objn); + + return; +} + + +/* + * plan_inpu_to_tft() - ¼Æ»®Êý¾Ýµ½tft + * + * Õâ¸öº¯ÊýÊÇΪÁËÔÚ³õʼ»¯Ê±½«´ÓflashÖлָ´µÄ¼Æ»®Êý¾ÝÖØÐÂ×°Èëtft + */ +static void plan_inpu_to_tft(void) +{ + for(uint8_t objn = 0; objn < 8; objn++) + { + *get_value_of_kvp("bg_y", objn) = plan_in[objn].bg_t.year; + *get_value_of_kvp("bg_mo", objn) = plan_in[objn].bg_t.month; + *get_value_of_kvp("bg_d", objn) = plan_in[objn].bg_t.mday; + *get_value_of_kvp("bg_h", objn) = plan_in[objn].bg_t.hour; + *get_value_of_kvp("bg_mi", objn) = plan_in[objn].bg_t.min; + + /* + * ½áÊøÊ±¼äÔÚtftÌõĿûÓÐÄê¡¢Ô¡¢ÈÕ + * *get_value_of_kvp("ed_y", objn) = plan_in[objn].ed_t.year; + * *get_value_of_kvp("ed_mo", objn) = plan_in[objn].ed_t.month; + * *get_value_of_kvp("ed_d", objn) = plan_in[objn].ed_t.mday; + */ + *get_value_of_kvp("ed_h", objn) = plan_in[objn].ed_t.hour; + *get_value_of_kvp("ed_mi", objn) = plan_in[objn].ed_t.min; + + *get_value_of_kvp("pd_d", objn) = plan_in[objn].pd_t.mday; + *get_value_of_kvp("pd_h", objn) = plan_in[objn].pd_t.hour; + *get_value_of_kvp("pd_mi", objn) = plan_in[objn].pd_t.min; + + *get_value_of_kvp("lg_r", objn) = plan_in[objn].lg_r; + *get_value_of_kvp("lg_b", objn) = plan_in[objn].lg_b; + *get_value_of_kvp("lg_uvb", objn) = plan_in[objn].lg_uvb; + *get_value_of_kvp("water", objn) = plan_in[objn].water; + + *get_value_of_kvp("sw", objn) = plan_in[objn].sw; + *get_value_of_kvp("cnt", objn) = plan_in[objn].cnt; + } + return; +} + + +/** + * plan_key_func() - ¼Æ»®Ä£Ê½Ï°´¼üµÄ´¦Àí + * + * Ö÷ÒªºÍtftÏÔʾÆÁ¹Ø + */ +static void plan_key_func(void) +{ + /* + * °´¼ü¹¦ÄÜ×¢²á²¿·Ö + */ + switch (get_key_mean(UP_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("UP_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + tft_left(); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("UP_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + tft_up(); + break; + case L_KEY: +#ifdef PM_DEBUG + printf("UP_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(DOWN_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + tft_right(); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + tft_down(); + break; + case L_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(OK_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("OK_KEY µ¥»÷\n"); + tft_ok(); +#endif /* PM_DEBUG */ + break; + case D_KEY: +#ifdef PM_DEBUG + printf("OK_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("OK_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(RET_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("RET_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + tft_ret(); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("RET_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("RET_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MR_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MR_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MR_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MR_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MB_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MB_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MB_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MB_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MUVB_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + return; +} + + +/** + * manul_key_func() - ÊÖ¶¯Ä£Ê½Ïµİ´¼ü¹¦ÄÜ + * + * °üÀ¨Á˰´¼üµÄÊäÈëºÍ¶ÔÓ¦µÄÊä³öÖ´Ðв¿·Ö + */ +static void manul_key_func(void) +{ + /* + * °´¼ü¹¦ÄÜ×¢²á²¿·Ö + */ + static uint8_t mlgr, mlgb, mlguvb; + + switch (get_key_mean(UP_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("UP_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + orient_setspeed(0, ORIENT_LEFT, 100); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("UP_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + orient_setspeed(0, ORIENT_RIGHT, 100); + break; + case L_KEY: +#ifdef PM_DEBUG + printf("UP_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(DOWN_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + orient_setspeed(1, ORIENT_LEFT, 100); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + orient_setspeed(1, ORIENT_RIGHT, 100); + break; + case L_KEY: +#ifdef PM_DEBUG + printf("DOWN_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(OK_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("OK_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + break; + case D_KEY: +#ifdef PM_DEBUG + printf("OK_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("OK_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(RET_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("RET_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + orient_setmode(0, MODE_MANUL); + orient_setmode(1, MODE_MANUL); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("RET_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("RET_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MR_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MR_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + mlgr = !mlgr; + gpio_set(LGRED_PINX, mlgr == 1 ? LIGHT : NO_LIGHT); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MR_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MR_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MB_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MB_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + mlgb = !mlgb; + gpio_set(LGBLUE_PINX, mlgb == 1 ? LIGHT : NO_LIGHT); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MB_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MB_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + switch (get_key_mean(MUVB_KEY)) + { + case N_KEY: + //printf("ÎÞ¼ü\n"); + break; + case S_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY µ¥»÷\n"); +#endif /* PM_DEBUG */ + mlguvb = !mlguvb; + gpio_set(LGUVB_PINX, mlguvb == 1 ? LIGHT : NO_LIGHT); + break; + case D_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY Ë«»÷\n"); +#endif /* PM_DEBUG */ + break; + case L_KEY: +#ifdef PM_DEBUG + printf("MUVB_KEY ³¤°´\n"); +#endif /* PM_DEBUG */ + break; + default: + break; + } + return; +} diff --git a/plan_manage_main/src/app/flash.c b/plan_manage_main/src/app/pm_flash.c similarity index 71% rename from plan_manage_main/src/app/flash.c rename to plan_manage_main/src/app/pm_flash.c index c2b0e4f..08f9352 100644 --- a/plan_manage_main/src/app/flash.c +++ b/plan_manage_main/src/app/pm_flash.c @@ -1,159 +1,171 @@ - - -#include "SSD_FTFx.h" - -#include "pm_flash_cfg.h" - -#define USED_SECTOR_NUM 0x01U - - -FLASH_SSD_CONFIG flashSSDConfig = -{ - FTFx_REG_BASE, /* FTFx control register base */ - PFLASH_BLOCK_BASE, /* base address of PFlash block */ - PBLOCK_SIZE, /* size of PFlash block */ - DEFLASH_BLOCK_BASE, /* base address of DFlash block */ - 0x0U, /* size of DFlash block */ - EERAM_BLOCK_BASE, /* base address of EERAM block */ - 0x0U, /* size of EEE block */ - DEBUGENABLE, /* background debug mode enable bit */ - NULL_CALLBACK /* pointer to callback function */ -}; - -#define LAUNCH_CMD_SIZE 0x80U - -pFLASHCOMMANDSEQUENCE g_FlashLaunchCommand = (pFLASHCOMMANDSEQUENCE)0xFFFFFFFF; - -uint16_t __ram_func[LAUNCH_CMD_SIZE/2]; /* array to copy __Launch_Command func to RAM */ - -void pm_flash_init(void) -{ - uint32_t ret; - - g_FlashLaunchCommand = - (pFLASHCOMMANDSEQUENCE)RelocateFunction((uint32_t)__ram_func , - LAUNCH_CMD_SIZE ,(uint32_t)FlashCommandSequence); - ret = FlashInit(&flashSSDConfig); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - return; -} - -/* - * flash_write() - ½«Êý¾ÝдÈëflash - * @saddr: ҪдÈëµÄÊý¾ÝµÄÆðʼµØÖ· - * @size: дÈëÊý¾ÝµÄ×Ö½ÚÊý - * - * Õâ¸öº¯ÊýµÄÖ´Ðйý³Ì°üÀ¨²Á³ýºÍдÈ룬ĬÈϵÄдÈ뷶ΧΪflashµÄ×îºóÒ»¸öÉÈÇø£¬´óСΪ - * 1KB£¬Èç¹ûÒª¸Ä±ä´óС£¬¸Ä²ÎÊý¾Í¿ÉÒÔÁË£¬×¢Òâ²»Òª¸²¸ÇÁËcode£¬¾ßÌå¿É¿´mapÎļþ¡£ - * ²Á³ýÊÇÒ»´ÎÐÔ²Á³ýÈ«²¿Ñ¡ÔñµÄÉÈÇø·¶Î§£¬ËùÒÔÔÚдÈëµÄʱºòҪעÒâ±£´æÏÈǰдÈëµÄÊý¾Ý - */ -void flash_write(uint8_t *saddr, uint16_t nbyte) -{ - uint32_t ret; - uint32_t dest; - uint32_t size; - uint16_t number; - uint32_t temp; - - /* - * ²Á³ýÉÈÇø - */ - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize - - USED_SECTOR_NUM * FTFx_PSECTOR_SIZE); - while ((dest + BYTE2WORD(FTFx_PSECTOR_SIZE)) <= (flashSSDConfig.PFlashBlockBase - + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) - { - size = FTFx_PSECTOR_SIZE; - ret = FlashEraseSector(&flashSSDConfig, dest, size, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* ¼ìÑé */ - number = FTFx_PSECTOR_SIZE / PRD1SEC_ALIGN_SIZE; - for(uint8_t i = 0x0U; i < 0x2U; i++) - { - ret = FlashVerifySection(&flashSSDConfig, dest, number, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - dest += BYTE2WORD(size); - } - - /* - * дÈëÊý¾Ý - */ - dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize - - (uint32_t)(USED_SECTOR_NUM * FTFx_PSECTOR_SIZE)); - - if ((dest + BYTE2WORD(size)) <= (flashSSDConfig.PFlashBlockBase - + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) - { - ret = FlashProgram(&flashSSDConfig, dest, nbyte, \ - saddr, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - - /* УÑéºÍ¼ìÑé */ - uint32_t sum = temp = 0x0U; - for (uint8_t i = 0x0U; i < nbyte; i++) - { - temp += saddr[i]; - } - ret = FlashCheckSum(&flashSSDConfig, dest, nbyte, &sum); - if ((FTFx_OK != ret) || (temp != sum)) - { - ErrorTrap(ret); - } - - /* ÕýÈ·²âÊÔ */ - uint32_t FailAddr; - for (uint8_t i = 0x1U; i < 0x3U; i ++) - { - ret = FlashProgramCheck(&flashSSDConfig, dest, nbyte, saddr, \ - &FailAddr, i, g_FlashLaunchCommand); - if (FTFx_OK != ret) - { - ErrorTrap(ret); - } - } - } - return; -} - -void flash_read(uint8_t *daddr, uint8_t nbyte) -{ - uint8_t *saddr = (uint8_t *)(flashSSDConfig.PFlashBlockBase + BYTE2WORD(flashSSDConfig.PFlashBlockSize - - (uint32_t)(USED_SECTOR_NUM * FTFx_PSECTOR_SIZE))); - - for (uint16_t i = 0; i < nbyte; i++) - { - daddr[i] = saddr[i]; - } - return; -} - -/********************************************************************* -* -* Function Name : ErrorTrap -* Description : Gets called when an error occurs. -* Arguments : uint32_t -* Return Value : -* -*********************************************************************/ -void ErrorTrap(uint32_t ret) -{ - while (1) - { - printf("flash²Ù×÷´íÎ󣬷µ»ØÂëΪ %d\n", ret); - } - return; -} +/* + * pm_flash.c - flash¶Áдģ¿é + */ + +#include "SSD_FTFx.h" + +#include "pm_flash_cfg.h" + +#define USED_SECTOR_NUM 0x01U + + +FLASH_SSD_CONFIG flashSSDConfig = +{ + FTFx_REG_BASE, /* FTFx control register base */ + PFLASH_BLOCK_BASE, /* base address of PFlash block */ + PBLOCK_SIZE, /* size of PFlash block */ + DEFLASH_BLOCK_BASE, /* base address of DFlash block */ + 0x0U, /* size of DFlash block */ + EERAM_BLOCK_BASE, /* base address of EERAM block */ + 0x0U, /* size of EEE block */ + DEBUGENABLE, /* background debug mode enable bit */ + NULL_CALLBACK /* pointer to callback function */ +}; + +#define LAUNCH_CMD_SIZE 0x80U + +pFLASHCOMMANDSEQUENCE g_FlashLaunchCommand = (pFLASHCOMMANDSEQUENCE)0xFFFFFFFF; + +/* array to copy __Launch_Command func to RAM */ +uint16_t __ram_func[LAUNCH_CMD_SIZE/2]; + +void pm_flash_init(void) +{ + uint32_t ret; + + g_FlashLaunchCommand = + (pFLASHCOMMANDSEQUENCE)RelocateFunction((uint32_t)__ram_func , + LAUNCH_CMD_SIZE ,(uint32_t)FlashCommandSequence); + ret = FlashInit(&flashSSDConfig); + if (FTFx_OK != ret) + { + ErrorTrap(ret); + } + return; +} + +/* + * flash_write() - ½«Êý¾ÝдÈëflash + * @saddr: ҪдÈëµÄÊý¾ÝµÄÆðʼµØÖ· + * @size: дÈëÊý¾ÝµÄ×Ö½ÚÊý£¬×Ö½ÚÊý±ØÐëÒªÒÔ4¶ÔÆë£¡£¡£¡ + * + * Õâ¸öº¯ÊýµÄÖ´Ðйý³Ì°üÀ¨²Á³ýºÍдÈ룬ĬÈϵÄдÈ뷶ΧΪflashµÄ×îºóÒ»¸öÉÈÇø£¬´óСΪ + * 1KB£¬Èç¹ûÒª¸Ä±ä´óС£¬¸Ä²ÎÊý¾Í¿ÉÒÔÁË£¬×¢Òâ²»Òª¸²¸ÇÁËcode£¬¾ßÌå¿É¿´mapÎļþ¡£ + * ²Á³ýÊÇÒ»´ÎÐÔ²Á³ýÈ«²¿Ñ¡ÔñµÄÉÈÇø·¶Î§£¬ËùÒÔÔÚдÈëµÄʱºòҪעÒâ±£´æÏÈǰдÈëµÄÊý¾Ý + * flash¶ÁÈ¡º¯ÊýµÄÆðʼµØÖ·µÈÓÚflashдÈ뺯ÊýµÄдÈëÆðʼµØÖ· + */ +void flash_write(uint8_t *saddr, uint16_t nbyte) +{ + uint32_t ret; + uint32_t dest; + uint32_t size; + uint16_t number; + uint32_t temp; + + /* + * ²Á³ýÉÈÇø + */ + dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD( + flashSSDConfig.PFlashBlockSize + - USED_SECTOR_NUM * FTFx_PSECTOR_SIZE); + while ((dest + BYTE2WORD(FTFx_PSECTOR_SIZE)) <= + (flashSSDConfig.PFlashBlockBase + + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) + { + size = FTFx_PSECTOR_SIZE; + ret = FlashEraseSector(&flashSSDConfig, dest, size, + g_FlashLaunchCommand); + if (FTFx_OK != ret) + { + ErrorTrap(ret); + } + + /* ¼ìÑé */ + number = FTFx_PSECTOR_SIZE / PRD1SEC_ALIGN_SIZE; + for(uint8_t i = 0x0U; i < 0x2U; i++) + { + ret = FlashVerifySection(&flashSSDConfig, dest, number, i, + g_FlashLaunchCommand); + if (FTFx_OK != ret) + { + ErrorTrap(ret); + } + } + dest += BYTE2WORD(size); + } + + /* + * дÈëÊý¾Ý + */ + dest = flashSSDConfig.PFlashBlockBase + BYTE2WORD( + flashSSDConfig.PFlashBlockSize + - (uint32_t)(USED_SECTOR_NUM * FTFx_PSECTOR_SIZE)); + + if ((dest + BYTE2WORD(size)) <= (flashSSDConfig.PFlashBlockBase + + BYTE2WORD(flashSSDConfig.PFlashBlockSize))) + { + ret = FlashProgram(&flashSSDConfig, dest, nbyte, \ + saddr, g_FlashLaunchCommand); + if (FTFx_OK != ret) + { + ErrorTrap(ret); + } + + /* УÑéºÍ¼ìÑé */ + uint32_t sum = temp = 0x0U; + for (uint16_t i = 0x0U; i < nbyte; i++) + { + temp += saddr[i]; + } + ret = FlashCheckSum(&flashSSDConfig, dest, nbyte, &sum); + if ((FTFx_OK != ret) || (temp != sum)) + { + ErrorTrap(ret); + } + + /* ÕýÈ·²âÊÔ */ + uint32_t FailAddr; + for (uint8_t i = 0x1U; i < 0x3U; i ++) + { + ret = FlashProgramCheck(&flashSSDConfig, dest, nbyte, saddr, \ + &FailAddr, i, g_FlashLaunchCommand); + if (FTFx_OK != ret) + { + ErrorTrap(ret); + } + } + } + return; +} + +/* + * flash_read() - ¶ÁÈ¡flashÖÐдÈëµÄÊý¾Ý + * @daddr: ¶ÁÈ¡Êý¾ÝÒª±£´æµÄµØÖ· + * @nbyte: Òª¶ÁÈ¡µÄ×Ö½ÚÊý + * + * flash¶ÁÈ¡º¯ÊýµÄÆðʼµØÖ·µÈÓÚflashдÈ뺯ÊýµÄдÈëÆðʼµØÖ· + */ +void flash_read(uint8_t *daddr, uint16_t nbyte) +{ + uint8_t *saddr = (uint8_t *)(flashSSDConfig.PFlashBlockBase + + BYTE2WORD(flashSSDConfig.PFlashBlockSize + - (uint32_t)(USED_SECTOR_NUM * FTFx_PSECTOR_SIZE))); + + for (uint16_t i = 0; i < nbyte; i++) + { + daddr[i] = saddr[i]; + } + return; +} + +/* + * ErrorTrap() - flash²Ù×÷´íÎó´¦Àí + */ +void ErrorTrap(uint32_t ret) +{ + while (1) + { + printf("flash²Ù×÷´íÎ󣬷µ»ØÂëΪ %d\n", ret); + } + return; +} diff --git a/plan_manage_main/src/app/pm_init.c b/plan_manage_main/src/app/pm_init.c index 0be3dc7..59515db 100644 --- a/plan_manage_main/src/app/pm_init.c +++ b/plan_manage_main/src/app/pm_init.c @@ -11,6 +11,7 @@ #include "include/pm_time.h" #include "include/plan_handle.h" #include "include/pm_flash.h" +#include "include/orient.h" /* @@ -18,13 +19,14 @@ */ void pm_init(void) { + pm_flash_init(); debug_init(); key_init(); knob_init(); st_base_init(); tft_init(); ds1302_init(); - plan_handle_init(); - pm_flash_init(); + plan_handle_init(); // ¼Æ»®´¦Àí³õʼ»¯±ØÐëÔÚflash³õʼ»¯Ö®ºó + orient_init(); return; } diff --git a/plan_manage_main/src/app/pm_time.c b/plan_manage_main/src/app/pm_time.c index 31a97ef..67a5aee 100644 --- a/plan_manage_main/src/app/pm_time.c +++ b/plan_manage_main/src/app/pm_time.c @@ -1,322 +1,394 @@ -/* - * pm_time.c - æ—¶é—´å¤„ç† - */ - -#include "gpio.h" - -#include "include/pm_time.h" -#include "include/config.h" - - - -static calendar_info system_time; - -enum { START_YEAR = 2000, SEC_IN_DAY = 24 * 60 * 60}; -#define DAY_IN_YEAR(nyear) (is_leapyear(nyear) ? 366 : 365) - -static const uint8_t day_leap[] = { - 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 -}; - -static const uint8_t day_noleap[] = { - 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 -}; - - - -static void ds1302_byte_write(uint8_t data); -static uint8_t ds1302_byte_read(void); -static uint8_t ds1302_single_read(uint8_t addr); -static uint8_t ds1302_single_read(uint8_t addr); -static int16_t ymd_to_wday(int16_t year, int16_t month, int16_t mday); - - - - - - -uint8_t is_leapyear(uint16_t year) -{ - return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0; -} - -uint8_t get_month_days(uint16_t year, uint8_t month) -{ - switch (month) - { - case 4: - case 6: - case 9: - case 11: - return 30; - case 2: - if (is_leapyear(year)) - return 29; - else - return 28; - default: - return 31; - } -} - -static void ds1302_byte_write(uint8_t data) -{ - gpio_init(DS1302_IO_PINX, 1, 0); - for (uint8_t mask = 0x01; mask != 0; mask <<= 1) - { - gpio_set(DS1302_CLK_PINX, 0); - if (data & mask) - { - gpio_set(DS1302_IO_PINX, 1); - } - else - { - gpio_set(DS1302_IO_PINX, 0); - } - // tdc,200ns,æ•°æ®å»ºç«‹æ—¶é—´,tcl,1000ns,sclkä½Žç”µå¹³ä¿æŒæ—¶é—´ - for (uint8_t i = 0; i < 50; i++); - gpio_set(DS1302_CLK_PINX, 1); - // tcdh,280ns,æ•°æ®é‡‡é›†æ—¶é—´,tch,1000ns,sclké«˜ç”µå¹³ä¿æŒæ—¶é—´ - for (uint8_t i = 0; i < 50; i++); - } - return; -} - -static uint8_t ds1302_byte_read(void) -{ - uint8_t data = 0; - - //gpio_init(DS1302_IO_PINX, 0, 1); - gpio_Interrupt_init(DS1302_IO_PINX, GPI_UP_PF, GPI_DISAB); - gpio_set(DS1302_CLK_PINX, 1); - // tccz,280ns,sclkåˆ°é«˜é˜»æ€ - for (uint8_t i = 0; i < 50; i++); - for (uint8_t mask = 0x01; mask != 0; mask <<= 1) - { - gpio_set(DS1302_CLK_PINX, 0); // äº§ç”Ÿä¸‹é™æ²¿ - // tcdd,800ns,æ•°æ®è¾“出延迟 - for (uint8_t i = 0; i < 50; i++); - for (uint8_t i = 0; i < 50; i++); - if (gpio_get(DS1302_IO_PINX)) - { - data |= mask; - } - gpio_set(DS1302_CLK_PINX, 1); - // tccz,280ns,sclkåˆ°é«˜é˜»æ€ - for (uint8_t i = 0; i < 50; i++); - } - return data; -} - - - - -static uint8_t ds1302_single_read(uint8_t addr) -{ - uint8_t cmd = 0, - data = 0; - - cmd = (1 << 7) | (addr << 1) | 1; - /* - * åˆå§‹åŒ–ceå’ŒclkçŠ¶æ€ - */ - gpio_set(DS1302_CE_PINX, 0); - for (uint8_t i = 0; i < 50; i++); - gpio_set(DS1302_CLK_PINX, 0); - for (uint8_t i = 0; i < 50; i++); - - gpio_set(DS1302_CE_PINX, 1); - // tcc,ce到时钟建立时间,4us - for (uint8_t i = 0; i < 200; i++); - ds1302_byte_write(cmd); - data = ds1302_byte_read(); - gpio_set(DS1302_CE_PINX, 0); - // tcdz,ceåˆ°é«˜é˜»æ€æ—¶é—´ï¼Œ280ns - for (uint8_t i = 0; i < 20; i++); - return data; -} - -void ds1302_single_write(uint8_t addr, uint8_t data) -{ - uint8_t cmd = 0; - - cmd = (1 << 7) | (addr << 1); - /* - * åˆå§‹åŒ–ceå’ŒclkçŠ¶æ€ - */ - gpio_set(DS1302_CE_PINX, 0); - for (uint8_t i = 0; i < 50; i++); - gpio_set(DS1302_CLK_PINX, 0); - for (uint8_t i = 0; i < 50; i++); - - gpio_set(DS1302_CE_PINX, 1); - // tcc,ce到时钟建立时间,4us - for (uint8_t i = 0; i < 200; i++); - ds1302_byte_write(cmd); - ds1302_byte_write(data); - gpio_set(DS1302_CE_PINX, 0); - return; -} - -void ds1302_set_time(calendar_info *cal) -{ - ds1302_single_write(7, 0x00); - ds1302_single_write(0, cal->sec % 10 + (cal->sec / 10 << 4)); - ds1302_single_write(1, cal->min % 10 + (cal->min / 10 << 4)); - ds1302_single_write(2, cal->hour % 10 + (cal->hour / 10 << 4)); - ds1302_single_write(3, cal->mday % 10 + (cal->mday / 10 << 4)); - ds1302_single_write(4, cal->month % 10 + (cal->month / 10 << 4)); - ds1302_single_write(5, cal->wday); - ds1302_single_write(6, (cal->year - 2000) % 10 + ((cal->year - 2000) / 10 << 4)); - return; -} - -void ds1302_read_time(calendar_info *cal) -{ - uint8_t rval; - - rval = ds1302_single_read(0); - cal->sec = (rval & 0x0f) + ((rval & 0x70) >> 4) * 10; - rval = ds1302_single_read(1); - cal->min = (rval & 0x0f) + ((rval & 0x70) >> 4) * 10; - rval = ds1302_single_read(2); - cal->hour = (rval & 0x0f) + ((rval & 0x30) >> 4) * 10; - rval = ds1302_single_read(3); - cal->mday = (rval & 0x0f) + ((rval & 0x10) >> 4) * 10; - rval = ds1302_single_read(4); - cal->month = (rval & 0x0f) + ((rval & 0x10) >> 4) * 10; - rval = ds1302_single_read(5); - cal->wday = rval & 0x07; - rval = ds1302_single_read(6); - cal->year = (rval & 0x0f) + ((rval & 0xf0) >> 4) * 10 + 2000; - - return; -} - -void ds1302_init(void) -{ - //gpio_Interrupt_init(DS1302_CE_PINX, GPO, GPI_DISAB); - //gpio_Interrupt_init(DS1302_CLK_PINX, GPO, GPI_DISAB); - gpio_init(DS1302_CE_PINX, 1, 0); - gpio_init(DS1302_CLK_PINX, 1, 0); - gpio_Interrupt_init(DS1302_IO_PINX, GPI_UP_PF, GPI_DISAB); - ds1302_single_write(7, 0x00); - return; -} - - - -/* - * è¿™ä¸ªå‡½æ•°éœ€è¦æŒ‰æ‰€éœ€çš„æ—¶é—´ç²¾åº¦æ¥å®šæ—¶è°ƒç”¨ - */ -void maintain_system_time(void) -{ - enter_critical(); - ds1302_read_time(&system_time); - exit_critical(); - return; -} - -calendar_info get_system_time(void) -{ - return system_time; -} - - - -/*************************************************************/ - - -uint32_t calendar_to_sec(calendar_info *cal) -{ - uint32_t sec = cal->sec; - uint32_t year = cal->year; - uint32_t month = cal->month; - - if (year < START_YEAR || year > (START_YEAR + 135)) - return 0; - - sec += (uint32_t)cal->min * 60; - sec += (uint32_t)cal->hour * 3600; - sec += (uint32_t)(cal->mday - 1) * SEC_IN_DAY; - if (is_leapyear(year)) - { - while (month > 1) - { - sec += (uint32_t)day_leap[--month] * SEC_IN_DAY; - } - } - else - { - while (month > 1) - { - sec += (uint32_t)day_noleap[--month] * SEC_IN_DAY; - } - } - while (year > START_YEAR) - { - sec += (uint32_t)DAY_IN_YEAR(--year) * SEC_IN_DAY; - } - return sec; -} - -calendar_info sec_to_calendar(uint32_t sec) -{ - calendar_info cal; - uint32_t day, left; - - cal.year = START_YEAR; - cal.month = 1; - cal.mday = 1; - cal.yday = 1; - cal.wday = ymd_to_wday(START_YEAR, 1, 1); - - day = sec / SEC_IN_DAY; - left = sec % SEC_IN_DAY; - - cal.wday = (day + cal.wday) % 7; - - cal.hour = left / 3600; - cal.min = left / 60 % 60; - cal.sec = left % 60; - - while (day >= DAY_IN_YEAR(cal.year)) - { - day -= DAY_IN_YEAR(cal.year++); - } - cal.yday += day; - - if (is_leapyear(cal.year)) - { - while (day >= day_leap[cal.month]) - { - day -= day_leap[cal.month++]; - } - } - else - { - while (day >= day_noleap[cal.month]) - { - day -= day_noleap[cal.month++]; - } - } - cal.mday += day; - - return cal; -} - - -static int16_t ymd_to_wday(int16_t year, int16_t month, int16_t mday) -{ - if (is_leapyear(year)) - { - for (uint8_t i = 1; i < month; i++) - mday += day_leap[i]; - } - else - { - for (uint8_t i = 1; i < month; i++) - mday += day_noleap[i]; - } - return (year + year / 4 - year / 100 + year / 400 + mday) % 7; -} +/* + * pm_time.c - æ—¶é—´å¤„ç† + */ + +#include "gpio.h" + +#include "include/pm_time.h" +#include "include/config.h" + + +// 被维护的系统时间 +static calendar_info system_time; + +#define DAY_IN_YEAR(nyear) (is_leapyear(nyear) ? 366 : 365) + +static const uint8_t day_leap[] = { + 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 +}; + +static const uint8_t day_noleap[] = { + 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 +}; + + + +/* + * 陿€å‡½æ•°å£°æ˜Ž + */ +static void ds1302_byte_write(uint8_t data); +static uint8_t ds1302_byte_read(void); +static uint8_t ds1302_single_read(uint8_t addr); +void ds1302_single_write(uint8_t addr, uint8_t data); +static int16_t ymd_to_wday(int16_t year, int16_t month, int16_t mday); + + +/** + * ds1302_init() - ds1302çš„åˆå§‹åŒ– + * + * 包括ioçš„åˆå§‹åŒ–以åŠå½“ds1302掉电时对其时间值设置åˆå§‹å€¼ + */ +void ds1302_init(void) +{ + //gpio_Interrupt_init(DS1302_CE_PINX, GPO, GPI_DISAB); + //gpio_Interrupt_init(DS1302_CLK_PINX, GPO, GPI_DISAB); + gpio_init(DS1302_CE_PINX, 1, 0); + gpio_init(DS1302_CLK_PINX, 1, 0); + gpio_Interrupt_init(DS1302_IO_PINX, GPI_UP_PF, GPI_DISAB); + + // 使能写 + ds1302_single_write(7, 0x00); + // 当ds1302掉电时设置时间åˆå§‹å€¼ + if ((ds1302_single_read(0) & 0x80) == 1) + { + calendar_info sys_cal = { 0, 1, 2, 3, 4, 2012, 0, 1 }; + ds1302_set_time(&sys_cal); + } + return; +} + + +/** + * is_leapyear() - 判断是å¦ä¸ºé—°å¹´ + * @year: è¦åˆ¤æ–­çš„年份 + * + * 是闰年返回1ï¼Œä¸æ˜¯é—°å¹´è¿”回0 + */ +uint8_t is_leapyear(uint16_t year) +{ + return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0; +} + +/** + * get_month_days() - 得到给定年份和月份时对应月份的天数 + * @year: 给定年份 + * @month: 给定月份 + * + * 返回值为对应的月份的天数 + */ +uint8_t get_month_days(uint16_t year, uint8_t month) +{ + switch (month) + { + case 4: + case 6: + case 9: + case 11: + return 30; + case 2: + if (is_leapyear(year)) + return 29; + else + return 28; + default: + return 31; + } +} + +/** + * ds1302_byte_write() - å‘ds1302写入一个字节 + * @data: è¦å†™å…¥çš„字节 + */ +static void ds1302_byte_write(uint8_t data) +{ + gpio_init(DS1302_IO_PINX, 1, 0); + for (uint8_t mask = 0x01; mask != 0; mask <<= 1) + { + gpio_set(DS1302_CLK_PINX, 0); + if (data & mask) + { + gpio_set(DS1302_IO_PINX, 1); + } + else + { + gpio_set(DS1302_IO_PINX, 0); + } + // tdc,200ns,æ•°æ®å»ºç«‹æ—¶é—´,tcl,1000ns,sclkä½Žç”µå¹³ä¿æŒæ—¶é—´ + for (uint8_t i = 0; i < 50; i++); + gpio_set(DS1302_CLK_PINX, 1); + // tcdh,280ns,æ•°æ®é‡‡é›†æ—¶é—´,tch,1000ns,sclké«˜ç”µå¹³ä¿æŒæ—¶é—´ + for (uint8_t i = 0; i < 50; i++); + } + return; +} + +/** + * ds1302_byte_read() - 从ds1302读å–一个字节 + * + * 返回读å–到的字节 + */ +static uint8_t ds1302_byte_read(void) +{ + uint8_t data = 0; + + //gpio_init(DS1302_IO_PINX, 0, 1); + gpio_Interrupt_init(DS1302_IO_PINX, GPI_UP_PF, GPI_DISAB); + gpio_set(DS1302_CLK_PINX, 1); + // tccz,280ns,sclkåˆ°é«˜é˜»æ€ + for (uint8_t i = 0; i < 50; i++); + for (uint8_t mask = 0x01; mask != 0; mask <<= 1) + { + gpio_set(DS1302_CLK_PINX, 0); // äº§ç”Ÿä¸‹é™æ²¿ + // tcdd,800ns,æ•°æ®è¾“出延迟 + for (uint8_t i = 0; i < 50; i++); + for (uint8_t i = 0; i < 50; i++); + if (gpio_get(DS1302_IO_PINX)) + { + data |= mask; + } + gpio_set(DS1302_CLK_PINX, 1); + // tccz,280ns,sclkåˆ°é«˜é˜»æ€ + for (uint8_t i = 0; i < 50; i++); + } + return data; +} + + + +/** + * ds1302_single_read() - ds1302在å•字节模å¼ä¸‹è¯»å–一个地å€ä¸Šçš„æ•°æ® + * @addr: è¦è¯»å–çš„åœ°å€ + * + * 返回读å–的到的字节值 + */ +static uint8_t ds1302_single_read(uint8_t addr) +{ + uint8_t cmd = 0, + data = 0; + + cmd = (1 << 7) | (addr << 1) | 1; + /* + * åˆå§‹åŒ–ceå’ŒclkçŠ¶æ€ + */ + gpio_set(DS1302_CE_PINX, 0); + for (uint8_t i = 0; i < 50; i++); + gpio_set(DS1302_CLK_PINX, 0); + for (uint8_t i = 0; i < 50; i++); + + gpio_set(DS1302_CE_PINX, 1); + // tcc,ce到时钟建立时间,4us + for (uint8_t i = 0; i < 200; i++); + ds1302_byte_write(cmd); + data = ds1302_byte_read(); + gpio_set(DS1302_CE_PINX, 0); + // tcdz,ceåˆ°é«˜é˜»æ€æ—¶é—´ï¼Œ280ns + for (uint8_t i = 0; i < 20; i++); + return data; +} + +/** + * ds1302_single_write() - 在å•字节模å¼ä¸‹å‘ds1302的一个地å€ä¸Šå†™å…¥ä¸€ä¸ªå­—èŠ‚çš„æ•°æ® + * @addr: è¦å†™å…¥æ•°æ®çš„åœ°å€ + * @data: è¦å†™å…¥çš„æ•°æ® + */ +void ds1302_single_write(uint8_t addr, uint8_t data) +{ + uint8_t cmd = 0; + + cmd = (1 << 7) | (addr << 1); + /* + * åˆå§‹åŒ–ceå’ŒclkçŠ¶æ€ + */ + gpio_set(DS1302_CE_PINX, 0); + for (uint8_t i = 0; i < 50; i++); + gpio_set(DS1302_CLK_PINX, 0); + for (uint8_t i = 0; i < 50; i++); + + gpio_set(DS1302_CE_PINX, 1); + // tcc,ce到时钟建立时间,4us + for (uint8_t i = 0; i < 200; i++); + ds1302_byte_write(cmd); + ds1302_byte_write(data); + gpio_set(DS1302_CE_PINX, 0); + return; +} + +/** + * ds1302_set_time() - å‘ds1302中写入时间 + * @cal: è¦å†™å…¥çš„æ—¶é—´å€¼åœ°å€ + */ +void ds1302_set_time(calendar_info *cal) +{ + ds1302_single_write(7, 0x00); + ds1302_single_write(0, cal->sec % 10 + (cal->sec / 10 << 4)); + ds1302_single_write(1, cal->min % 10 + (cal->min / 10 << 4)); + ds1302_single_write(2, cal->hour % 10 + (cal->hour / 10 << 4)); + ds1302_single_write(3, cal->mday % 10 + (cal->mday / 10 << 4)); + ds1302_single_write(4, cal->month % 10 + (cal->month / 10 << 4)); + ds1302_single_write(5, cal->wday); + ds1302_single_write(6, (cal->year - 2000) % 10 + ((cal->year - 2000) / 10 << 4)); + return; +} + +/** + * ds1302_read_time() - 从ds1302ä¸­è¯»å–æ—¶é—´ + * @cal: 读å–çš„æ—¶é—´å€¼è¢«å­˜æ”¾çš„åœ°å€ + */ +void ds1302_read_time(calendar_info *cal) +{ + uint8_t rval; + + rval = ds1302_single_read(0); + cal->sec = (rval & 0x0f) + ((rval & 0x70) >> 4) * 10; + rval = ds1302_single_read(1); + cal->min = (rval & 0x0f) + ((rval & 0x70) >> 4) * 10; + rval = ds1302_single_read(2); + cal->hour = (rval & 0x0f) + ((rval & 0x30) >> 4) * 10; + rval = ds1302_single_read(3); + cal->mday = (rval & 0x0f) + ((rval & 0x30) >> 4) * 10; + rval = ds1302_single_read(4); + cal->month = (rval & 0x0f) + ((rval & 0x10) >> 4) * 10; + rval = ds1302_single_read(5); + cal->wday = rval & 0x07; + rval = ds1302_single_read(6); + cal->year = (rval & 0x0f) + ((rval & 0xf0) >> 4) * 10 + 2000; + + return; +} + +/** + * maintain_system_time() - 设置系统时间å˜é‡ + * + * è¿™ä¸ªå‡½æ•°éœ€è¦æŒ‰æ‰€éœ€çš„æ—¶é—´ç²¾åº¦æ¥å®šæ—¶è°ƒç”¨ + */ +void maintain_system_time(void) +{ + enter_critical(); + ds1302_read_time(&system_time); + exit_critical(); + return; +} + +/** + * get_system_time() - 返回系统时间 + */ +calendar_info get_system_time(void) +{ + return system_time; +} + + + + +/** + * calendar_to_sec() - åˆ†è§£æ—¶é—´åˆ°æ—¥åŽ†æ—¶é—´çš„è½¬æ¢ + * @cal: 被转æ¢çš„分解时间 + * + * 返回的是日历时间,å³ä»ŽæŸä¸€ä¸ªæ—¶é—´ç‚¹åˆ°å½“å‰è½¬æ¢æ—¶é—´æ‰€ç»è¿‡çš„ç§’æ•° + */ +uint32_t calendar_to_sec(calendar_info *cal) +{ + uint32_t sec = cal->sec; + uint32_t year = cal->year; + uint32_t month = cal->month; + + if (year < START_YEAR || year > (START_YEAR + 135)) + return 0; + + sec += (uint32_t)cal->min * 60; + sec += (uint32_t)cal->hour * 3600; + sec += (uint32_t)(cal->mday - 1) * SEC_IN_DAY; + if (is_leapyear(year)) + { + while (month > 1) + { + sec += (uint32_t)day_leap[--month] * SEC_IN_DAY; + } + } + else + { + while (month > 1) + { + sec += (uint32_t)day_noleap[--month] * SEC_IN_DAY; + } + } + while (year > START_YEAR) + { + sec += (uint32_t)DAY_IN_YEAR(--year) * SEC_IN_DAY; + } + return sec; +} + +/** + * sec_to_calendar() - æ—¥åŽ†æ—¶é—´åˆ°åˆ†è§£æ—¶é—´çš„è½¬æ¢ + * @cal: 被转æ¢çš„æ—¥åŽ†æ—¶é—´ + * + * 返回的是分解时间,å³ä»¥å¹´æœˆæ—¥æ—¶åˆ†ç§’å½¢å¼è¡¨ç¤ºçš„æ—¶é—´ + */ +calendar_info sec_to_calendar(uint32_t sec) +{ + calendar_info cal; + uint32_t day, left; + + cal.year = START_YEAR; + cal.month = 1; + cal.mday = 1; + cal.yday = 1; + cal.wday = ymd_to_wday(START_YEAR, 1, 1); + + day = sec / SEC_IN_DAY; + left = sec % SEC_IN_DAY; + + cal.wday = (day + cal.wday) % 7; + + cal.hour = left / 3600; + cal.min = left / 60 % 60; + cal.sec = left % 60; + + while (day >= DAY_IN_YEAR(cal.year)) + { + day -= DAY_IN_YEAR(cal.year++); + } + cal.yday += day; + + if (is_leapyear(cal.year)) + { + while (day >= day_leap[cal.month]) + { + day -= day_leap[cal.month++]; + } + } + else + { + while (day >= day_noleap[cal.month]) + { + day -= day_noleap[cal.month++]; + } + } + cal.mday += day; + + return cal; +} + +/** + * ymd_to_wday() - ä»Žå¹´ä»½ã€æœˆä»½ã€å¤©æ•°è¿™ä¸‰ä¸ªæ•°æ®å¾—到对应在一个星期中的天数 + * @year: 年份 + * @month: 月份 + * @mday: 当剿œˆä¸­å·²ç»è¿‡çš„天数 + * + * 返回对应的一个星期中的天数 + */ +static int16_t ymd_to_wday(int16_t year, int16_t month, int16_t mday) +{ + if (is_leapyear(year)) + { + for (uint8_t i = 1; i < month; i++) + mday += day_leap[i]; + } + else + { + for (uint8_t i = 1; i < month; i++) + mday += day_noleap[i]; + } + return (year + year / 4 - year / 100 + year / 400 + mday) % 7; +} diff --git a/plan_manage_main/src/app/simulat_timer.c b/plan_manage_main/src/app/simulat_timer.c index c61ce29..0fc66f1 100644 --- a/plan_manage_main/src/app/simulat_timer.c +++ b/plan_manage_main/src/app/simulat_timer.c @@ -1,160 +1,161 @@ -/* - * simulat_timer.h - ʵÏÖÒ»¸öÄ£ÄⶨʱÆ÷ - */ - -#include "include.h" - -#include "include/simulat_timer.h" -#include "include/config.h" -#include "include/key.h" - -static volatile st_register st_r[SIMULAT_TIMER_NUM]; - - - -/* - * st_init() - ³õʼ»¯ÊµÏÖÄ£ÄⶨʱÆ÷ËùÐèµÄpit¶¨Ê±Æ÷ - * - * »ù´¡¶¨Ê±Îª1ms - */ -void st_base_init(void) -{ - uint32_t cnt; - - cnt = bus_clk_khz * 1; - pit_init(SIMULAT_TIMER_PITX, cnt); // 1msÓ²¼þ¶¨Ê±ÖжÏÖÜÆÚ - return; -} - - -/* - * st_init() - ³õʼ»¯Ò»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ - * @n: ¶¨Ê±Æ÷±àºÅ - * @st_m: ¶¨Ê±Ä£Ê½ - * @cmr_v: ¶¨Ê±Æ÷±È½ÏÖµ£¬ÔڷDZȽÏģʽ¿ÉÒÔΪÈÎÒâÖµ - * - * Õâ¸öº¯Êý·µ»Ø0±íʾÕý³£Íê³ÉÁ˳õʼ»¯ÈÎÎñ£¬·µ»Ø~0±íʾ¶¨Ê±Æ÷ÒÑ´ò¿ª»ò²»´æÔÚ - */ -uint8_t st_init(uint8_t n, st_mode st_m, uint32_t cmr_v) -{ - if (st_r[n].flag.ten == 1 || n >= SIMULAT_TIMER_NUM) - { - return ~0; - } - st_r[n].flag.ten = 1; - switch(st_m) - { - case COMPARE: - st_r[n].flag.tfc = 1; - st_r[n].cmr = cmr_v; - break; - case NO_COMPARE: - st_r[n].flag.tfc = 0; - break; - default: - break; - } - return 0; -} - - -/* - * st_close() - ¹Ø±ÕÒ»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ - * @n: ¶¨Ê±Æ÷±àºÅ - */ -void st_close(uint8_t n) -{ - st_r[n].flag.ten = 0; - return; -} - -/* - * st_tcf() - ²éѯtcfλ·µ»Ø - * @n: ¶¨Ê±Æ÷±àºÅ - * - * Õâ¸öº¯ÊýÔÚûÓйý±È½ÏÖµµÄʱºò·µ»Ø0£¬Òѹý±È½ÏÖµµÃʱºò·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint8_t st_tcf(uint8_t n) -{ - uint8_t temp; - - if (st_r[n].flag.tcf == 1) - { - st_r[n].flag.tcf = 0; - temp = 1; - } - else - { - temp = 0; - } - return temp; -} - -/* - * st_tov() - ²éѯtovλ·µ»Ø - * @n: ¶¨Ê±Æ÷±àºÅ - * - * Õâ¸öº¯ÊýÔÚûÓÐÒç³öʱ·µ»Ø0£¬Ã»ÓÐÒç³öʱ·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint8_t st_tov(uint8_t n) -{ - uint8_t temp; - if (st_r[n].flag.tov == 1) - { - st_r[n].flag.tov = 0; - temp = 1; - } - else - { - temp = 0; - } - return temp; -} - -/* - * st_count() - ²éѯµ±Ç°Ä£Äⶨʱֵ - * @n: ¶¨Ê±Æ÷±àºÅ - * - * ¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª - */ -uint32_t st_count(uint8_t n) -{ - return st_r[n].count; -} - - -/* - * st_base() -¶¨Ê±µ÷ÓÃÒÔÄ£ÄâN·¶¨Ê±Æ÷ - * - * ¶¨Ê±µÄ×îС¼ä¸ôµÈÓÚÕâ¸öº¯Êý±»µ÷ÓõÄÖÜÆÚ - */ -void st_base(void) -{ - uint8_t i; - - for (i = 0; i < SIMULAT_TIMER_NUM; i++) - { - if (st_r[i].flag.ten == 1) // ʹÄÜ - { - if (++st_r[i].count == 0) // Òç³ö - { - st_r[i].flag.tov = 1; - } // Òç³ö - if (st_r[i].flag.tfc == 1) // ±È½Ï - { - if (st_r[i].count == st_r[i].cmr) - { - st_r[i].count = 0; - st_r[i].flag.tcf = 1; - } - } // ±È½Ï - } // ʹÄÜ - } - - if (st_tcf(0) == 1) - { - key_detect(); - } - - return; -} +/* + * simulat_timer.h - ʵÏÖÒ»¸öÄ£ÄⶨʱÆ÷ + */ + +#include "include.h" + +#include "include/config.h" +#include "include/key.h" + +#include "include/simulat_timer.h" + +static volatile st_register st_r[SIMULAT_TIMER_NUM]; + + + +/** + * st_init() - ³õʼ»¯ÊµÏÖÄ£ÄⶨʱÆ÷ËùÐèµÄpit¶¨Ê±Æ÷ + * + * »ù´¡¶¨Ê±Îª1ms + */ +void st_base_init(void) +{ + uint32_t cnt; + + cnt = bus_clk_khz * 1; + pit_init(SIMULAT_TIMER_PITX, cnt); // 1msÓ²¼þ¶¨Ê±ÖжÏÖÜÆÚ + return; +} + + +/** + * st_init() - ³õʼ»¯Ò»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ + * @n: ¶¨Ê±Æ÷±àºÅ + * @st_m: ¶¨Ê±Ä£Ê½ + * @cmr_v: ¶¨Ê±Æ÷±È½ÏÖµ£¬ÔڷDZȽÏģʽ¿ÉÒÔΪÈÎÒâÖµ + * + * Õâ¸öº¯Êý·µ»Ø0±íʾÕý³£Íê³ÉÁ˳õʼ»¯ÈÎÎñ£¬·µ»Ø~0±íʾ¶¨Ê±Æ÷ÒÑ´ò¿ª»ò²»´æÔÚ + */ +uint8_t st_init(uint8_t n, st_mode st_m, uint32_t cmr_v) +{ + if (st_r[n].flag.ten == 1 || n >= SIMULAT_TIMER_NUM) + { + return ~0; + } + st_r[n].flag.ten = 1; + switch(st_m) + { + case COMPARE: + st_r[n].flag.tfc = 1; + st_r[n].cmr = cmr_v; + break; + case NO_COMPARE: + st_r[n].flag.tfc = 0; + break; + default: + break; + } + return 0; +} + + +/** + * st_close() - ¹Ø±ÕÒ»¸ö¸ø¶¨±àºÅµÄÄ£ÄⶨʱÆ÷ + * @n: ¶¨Ê±Æ÷±àºÅ + */ +void st_close(uint8_t n) +{ + st_r[n].flag.ten = 0; + return; +} + +/** + * st_tcf() - ²éѯtcfλ·µ»Ø + * @n: ¶¨Ê±Æ÷±àºÅ + * + * Õâ¸öº¯ÊýÔÚûÓйý±È½ÏÖµµÄʱºò·µ»Ø0£¬Òѹý±È½ÏÖµµÃʱºò·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª + */ +uint8_t st_tcf(uint8_t n) +{ + uint8_t temp; + + if (st_r[n].flag.tcf == 1) + { + st_r[n].flag.tcf = 0; + temp = 1; + } + else + { + temp = 0; + } + return temp; +} + +/** + * st_tov() - ²éѯtovλ·µ»Ø + * @n: ¶¨Ê±Æ÷±àºÅ + * + * Õâ¸öº¯ÊýÔÚûÓÐÒç³öʱ·µ»Ø0£¬Ã»ÓÐÒç³öʱ·µ»Ø1£¬¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª + */ +uint8_t st_tov(uint8_t n) +{ + uint8_t temp; + if (st_r[n].flag.tov == 1) + { + st_r[n].flag.tov = 0; + temp = 1; + } + else + { + temp = 0; + } + return temp; +} + +/** + * st_count() - ²éѯµ±Ç°Ä£Äⶨʱֵ + * @n: ¶¨Ê±Æ÷±àºÅ + * + * ¶ÔÓÚ²»´æÔÚ»òδ´ò¿ª + */ +uint32_t st_count(uint8_t n) +{ + return st_r[n].count; +} + + +/** + * st_base() -¶¨Ê±µ÷ÓÃÒÔÄ£ÄâN·¶¨Ê±Æ÷ + * + * ¶¨Ê±µÄ×îС¼ä¸ôµÈÓÚÕâ¸öº¯Êý±»µ÷ÓõÄÖÜÆÚ + */ +void st_base(void) +{ + uint8_t i; + + for (i = 0; i < SIMULAT_TIMER_NUM; i++) + { + if (st_r[i].flag.ten == 1) // ʹÄÜ + { + if (++st_r[i].count == 0) // Òç³ö + { + st_r[i].flag.tov = 1; + } // Òç³ö + if (st_r[i].flag.tfc == 1) // ±È½Ï + { + if (st_r[i].count == st_r[i].cmr) + { + st_r[i].count = 0; + st_r[i].flag.tcf = 1; + } + } // ±È½Ï + } // ʹÄÜ + } + + if (st_tcf(0) == 1) + { + key_detect(); + } + + return; +} diff --git a/plan_manage_main/src/app/tft.c b/plan_manage_main/src/app/tft.c index 0119c41..1c45e5d 100644 --- a/plan_manage_main/src/app/tft.c +++ b/plan_manage_main/src/app/tft.c @@ -1,1012 +1,1151 @@ -/* - * tft.c - tft ÏÔʾÆÁµÄ½Ó¿Ú - * - * uart hmi·½Ê½ - */ - -#include -#include -#include - -#include "uart.h" - -#include "include/tft.h" -#include "include/knob.h" -#include "include/key.h" -#include "include/config.h" -#include "include/pm_time.h" -#include "include/plan_handle.h" - -typedef struct plan_input_ -{ - calendar_info lgbg_t; - calendar_info lged_t; - calendar_info lgpd_t; - - calendar_info wtbg_t; - calendar_info wted_t; - calendar_info wtpd_t; - - uint8_t x_orient; - uint8_t y_orient; - uint8_t lg_r : 1; - uint8_t lg_b : 1; - uint8_t lg_uvb : 1; - uint8_t water : 1; - uint8_t sw : 1; -} plan_input; - - -extern plan_input plan_in[PLAN_DATA_NUM]; - - -typedef struct kv_pair_ -{ - char *key; - int16_t value; - int8_t attr; -} kv_pair; - -typedef struct tft_state_ -{ - uint8_t pgn; - uint8_t etn; - uint8_t ln; - uint8_t objn; -} tft_state; - -typedef enum page_name_ -{ - ORIGINAL_PG = 0, MENU_PG, OBJ_SET_PG -} page_name; - -typedef enum entry_attr_ -{ - R_NUM = 0, RW_NUM, RW_PIC, SW_PAGE -} entry_attr; - -typedef enum tft_colour_ -{ - TFT_BACK = 65535, TFT_RED = 63488, TFT_PURPLE = 31 -} tft_colour; - - - - - -static tft_state tft_stt = { 0, 0, 0, 0 }; - -static uint8_t original_lyt[] = { 0, 1 }; -static uint8_t menu_lyt[] = { 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; -static uint8_t obj_set_lyt[] = { 0, 4, 7, 11, 13}; - - -static kv_pair kvp_original[] = { {"ori_0", 0, R_NUM} }; -static kv_pair kvp_menu[] = { - { "st_y", 2016, RW_NUM }, { "st_mo", 4, RW_NUM }, { "st_d", 14, RW_NUM }, { "st_h", 0, RW_NUM }, { "st_mi", 0, RW_NUM }, { "st_s", 0, RW_NUM }, - { "obj0", 0, SW_PAGE }, - { "obj1", 1, SW_PAGE }, - { "obj2", 2, SW_PAGE }, - { "obj3", 3, SW_PAGE }, - { "obj4", 4, SW_PAGE }, - { "obj5", 5, SW_PAGE }, - { "obj6", 6, SW_PAGE }, - { "obj7", 7, SW_PAGE }, - { "note", 0, RW_NUM } -}; - -static kv_pair kvp_obj_set[][PLAN_DATA_NUM] = -{ - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, - { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 0 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, - { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 1 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, - { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 2 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, { "bg_h", 14, RW_NUM }, - { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 3 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, { "bg_h", 14, RW_NUM }, - { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 4 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, { "bg_h", 14, RW_NUM }, - { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 5 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, { "bg_h", 14, RW_NUM }, - { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 6 - { - { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, - { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, { "bg_h", 14, RW_NUM }, - { "bg_mi", 0, RW_NUM }, - { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, - { "lg_pd", 3, RW_NUM }, { "lg_cnt", 0, RW_NUM }, - }, // 7 -}; - -static char tft_cmd_str[20]; - -static void tft_send_cmd(const char *cmd); -static void tft_set_color(uint8_t etn, tft_colour tft_col); -static void tft_input(void); - - - - - -/* - * - */ -void tft_init(void) -{ - uart_init(TFT_UARTX, 9600); - tft_send_cmd("page original"); - return; -} - -/* - * - */ -static void tft_send_cmd(const char *cmd) -{ - uart_sendStr(TFT_UARTX, (const uint8_t *)cmd); - - uart_putchar(TFT_UARTX, 0xff); - uart_putchar(TFT_UARTX, 0xff); - uart_putchar(TFT_UARTX, 0xff); -} - -static void tft_set_color(uint8_t etn, tft_colour tft_col) -{ - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - break; - case MENU_PG: - switch (kvp_menu[etn].attr) - { - case R_NUM: - case RW_NUM: - sprintf(tft_cmd_str, "%s.bco=%d", kvp_menu[etn].key, tft_col); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s", kvp_menu[etn].key); - tft_send_cmd(tft_cmd_str); - break; - case RW_PIC: - case SW_PAGE: - sprintf(tft_cmd_str, "%s_sg.bco=%d", kvp_menu[etn].key, tft_col); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s_sg", kvp_menu[etn].key); - tft_send_cmd(tft_cmd_str); - break; - default: - break; - } - break; - case OBJ_SET_PG: - switch (kvp_obj_set[tft_stt.objn][etn].attr) - { - case R_NUM: - case RW_NUM: - sprintf(tft_cmd_str, "%s.bco=%d", kvp_obj_set[tft_stt.objn][etn].key, tft_col); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s", kvp_obj_set[tft_stt.objn][etn].key); - tft_send_cmd(tft_cmd_str); - break; - case RW_PIC: - case SW_PAGE: - sprintf(tft_cmd_str, "%s_sg.bco=%d", kvp_obj_set[tft_stt.objn][etn].key, tft_col); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s_sg", kvp_obj_set[tft_stt.objn][etn].key); - tft_send_cmd(tft_cmd_str); - break; - default: - break; - } - break; - default: - break; - } - return; -} - -/* - * - */ -void tft_up(void) -{ - uint8_t etn_log = tft_stt.etn; - - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - if (tft_stt.ln > 0) - { - tft_stt.ln--; - } - tft_stt.etn = original_lyt[tft_stt.ln]; - break; - case MENU_PG: - if (tft_stt.ln > 0) - { - tft_stt.ln--; - } - tft_stt.etn = menu_lyt[tft_stt.ln]; - - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case OBJ_SET_PG: - if (tft_stt.ln > 0) - { - tft_stt.ln--; - } - tft_stt.etn = obj_set_lyt[tft_stt.ln]; - - - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - default: - break; - } - return; -} - -void tft_down(void) -{ - uint8_t etn_log = tft_stt.etn; - - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - if (tft_stt.ln < sizeof(original_lyt) / sizeof(uint8_t) - 2) - { - tft_stt.ln++; - } - tft_stt.etn = original_lyt[tft_stt.ln]; - break; - case MENU_PG: - if (tft_stt.ln < sizeof(menu_lyt) / sizeof(uint8_t) - 2) - { - tft_stt.ln++; - } - tft_stt.etn = menu_lyt[tft_stt.ln]; - - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case OBJ_SET_PG: - if (tft_stt.ln < sizeof(obj_set_lyt) / sizeof(uint8_t) - 2) - { - tft_stt.ln++; - } - tft_stt.etn = obj_set_lyt[tft_stt.ln]; - - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - default: - break; - } - return; -} - -void tft_left(void) -{ - uint8_t etn_log = tft_stt.etn; - - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - if (tft_stt.etn > 0) - { - if (--tft_stt.etn < original_lyt[tft_stt.ln]) - { - tft_stt.ln--; - } - } - break; - case MENU_PG: - if (tft_stt.etn > 0) - { - if (--tft_stt.etn < menu_lyt[tft_stt.ln]) - { - tft_stt.ln--; - } - } - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case OBJ_SET_PG: - if (tft_stt.etn > 0) - { - if (--tft_stt.etn < obj_set_lyt[tft_stt.ln]) - { - tft_stt.ln--; - } - } - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - default: - break; - } - return; -} - -void tft_right(void) -{ - uint8_t etn_log = tft_stt.etn; - - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - if (tft_stt.etn < original_lyt[sizeof(original_lyt) / sizeof(uint8_t) - 1] - 1) - { - if (++tft_stt.etn >= original_lyt[tft_stt.ln + 1]) - { - tft_stt.ln++; - } - } - break; - case MENU_PG: - if (tft_stt.etn < menu_lyt[sizeof(menu_lyt) / sizeof(uint8_t) - 1] - 1) - { - if (++tft_stt.etn >= menu_lyt[tft_stt.ln + 1]) - { - tft_stt.ln++; - } - } - - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case OBJ_SET_PG: - if (tft_stt.etn < obj_set_lyt[sizeof(obj_set_lyt) / sizeof(uint8_t) - 1] - 1) - { - if (++tft_stt.etn >= obj_set_lyt[tft_stt.ln + 1]) - { - tft_stt.ln++; - } - } - - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - case RW_NUM: - case RW_PIC: - case SW_PAGE: - tft_set_color(etn_log, TFT_BACK); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - default: - break; - } - return; -} - -void refrush_obj(void) -{ - for (int i = 0; i < sizeof(kvp_obj_set[tft_stt.objn]) / sizeof(kv_pair); i++) - { - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - sprintf(tft_cmd_str,"%s.val=%d", - kvp_obj_set[tft_stt.objn][tft_stt.etn].key, - kvp_obj_set[tft_stt.objn][tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - break; - case RW_NUM: - sprintf(tft_cmd_str,"%s.val=%d", - kvp_obj_set[tft_stt.objn][tft_stt.etn].key, - kvp_obj_set[tft_stt.objn][tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - break; - case RW_PIC: - sprintf(tft_cmd_str, "vis %s,%d", - kvp_obj_set[tft_stt.objn][tft_stt.etn].key, - kvp_obj_set[tft_stt.objn][tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - break; - case SW_PAGE: - break; - default: - break; - } - } - return; -} - -void refrush_menu(void) -{ - for (int i = 0; i < sizeof(kvp_obj_set[tft_stt.objn]) / sizeof(kv_pair); i++) - { - - } - return; -} - -void tft_ret(void) -{ - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - break; - case MENU_PG: - tft_stt.pgn = ORIGINAL_PG; - tft_stt.ln = 0; - tft_stt.etn = 0; - tft_send_cmd("page original"); - tft_page_refresh(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - case OBJ_SET_PG: - tft_stt.pgn = MENU_PG; - tft_stt.ln = 0; - tft_stt.etn = 0; - tft_send_cmd("page menu"); - tft_page_refresh(); - // refrush_menu(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - return; -} - - -static void tft_input(void) -{ - input_limit in_lmt; - int16_t in_v, bg_v; - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - break; - case MENU_PG: - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - break; - case RW_NUM: - tft_set_color(tft_stt.etn, TFT_RED); - - in_lmt = tft_input_limit(kvp_menu[tft_stt.etn].key); - bg_v = kvp_menu[tft_stt.etn].value; - knob_enable(); - while (get_key_mean(RET_KEY) == N_KEY) - { - in_v = bg_v + get_knob_val(); - if (in_v < in_lmt.min) - { - kvp_menu[tft_stt.etn].value = in_lmt.min; - bg_v = in_lmt.min; - knob_clear(); - } - else if (in_v > in_lmt.max) - { - kvp_menu[tft_stt.etn].value = in_lmt.max; - bg_v = in_lmt.max; - knob_clear(); - } - else - { - kvp_menu[tft_stt.etn].value = in_v; - } - sprintf(tft_cmd_str, "%s.val=%d", kvp_menu[tft_stt.etn].key, - kvp_menu[tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - } - knob_disable(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - calendar_info cal; - cal.year = *get_value_of_kvp("st_y", 0); - cal.month = *get_value_of_kvp("st_mo", 0); - cal.mday = *get_value_of_kvp("st_d", 0); - cal.hour = *get_value_of_kvp("st_h", 0); - cal.min = *get_value_of_kvp("st_mi", 0); - cal.sec= *get_value_of_kvp("st_s", 0); - ds1302_set_time(&cal); - clear_key_m(); - break; - case RW_PIC: - tft_set_color(tft_stt.etn, TFT_RED); - while (get_key_mean(RET_KEY) == N_KEY) - { - if (get_key_mean(UP_KEY) == S_KEY || get_key_mean(DOWN_KEY) == S_KEY) - { - kvp_menu[tft_stt.etn].value = !kvp_menu[tft_stt.etn].value; - sprintf(tft_cmd_str, "vis %s,%d", kvp_menu[tft_stt.etn].key, - kvp_menu[tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - } - } - tft_set_color(tft_stt.etn, TFT_PURPLE); - clear_key_m(); - break; - case SW_PAGE: - break; - default: - break; - } - break; - case OBJ_SET_PG: - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - break; - case RW_NUM: - tft_set_color(tft_stt.etn, TFT_RED); - in_lmt = tft_input_limit(kvp_obj_set[tft_stt.objn][tft_stt.etn].key); - bg_v = kvp_obj_set[tft_stt.objn][tft_stt.etn].value; - knob_enable(); - while (get_key_mean(RET_KEY) == N_KEY) - { - in_v = bg_v + get_knob_val(); - if (in_v < in_lmt.min) - { - kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_lmt.min; - bg_v = in_lmt.min; - knob_clear(); - } - else if (in_v > in_lmt.max) - { - kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_lmt.max; - bg_v = in_lmt.max; - knob_clear(); - } - else - { - kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_v; - } - sprintf(tft_cmd_str, "%s.val=%d", kvp_obj_set[tft_stt.objn][tft_stt.etn].key, - kvp_obj_set[tft_stt.objn][tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - } - knob_disable(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - //tft_to_plan_input(tft_stt.objn); - clear_key_m(); - break; - case RW_PIC: - tft_set_color(tft_stt.etn, TFT_RED); - - while (get_key_mean(RET_KEY) == N_KEY) - { - if (get_key_mean(UP_KEY) == S_KEY || get_key_mean(DOWN_KEY)) - { - kvp_obj_set[tft_stt.objn][tft_stt.etn].value = - !kvp_obj_set[tft_stt.objn][tft_stt.etn].value; - sprintf(tft_cmd_str, "vis %s,%d", - kvp_obj_set[tft_stt.objn][tft_stt.etn].key, - kvp_obj_set[tft_stt.objn][tft_stt.etn].value); - tft_send_cmd(tft_cmd_str); - } - } - tft_set_color(tft_stt.etn, TFT_PURPLE); - tft_to_plan_input(tft_stt.objn); - clear_key_m(); - break; - case SW_PAGE: - break; - default: - break; - } - break; - default: - break; - } -} - -void tft_ok(void) -{ - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - switch (SW_PAGE) - { - case R_NUM: - break; - case RW_NUM: - break; - case RW_PIC: - break; - case SW_PAGE: - tft_stt.pgn = MENU_PG; - tft_stt.ln = 0; - tft_stt.etn = 0; - tft_send_cmd("page menu"); - tft_page_refresh(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case MENU_PG: - switch (kvp_menu[tft_stt.etn].attr) - { - case R_NUM: - break; - case RW_NUM: - tft_input(); - break; - case RW_PIC: - tft_input(); - break; - case SW_PAGE: - tft_stt.pgn = OBJ_SET_PG; - tft_stt.objn = kvp_menu[tft_stt.etn].value; - tft_stt.ln = 0; - tft_stt.etn = 0; - tft_send_cmd("page obj_set"); - tft_page_refresh(); - tft_set_color(tft_stt.etn, TFT_PURPLE); - break; - default: - break; - } - break; - case OBJ_SET_PG: - switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) - { - case R_NUM: - break; - case RW_NUM: - tft_input(); - break; - case RW_PIC: - tft_input(); - break; - case SW_PAGE: - break; - default: - break; - } - break; - default: - break; - } - return; -} - -void tft_page_refresh(void) -{ - switch (tft_stt.pgn) - { - case ORIGINAL_PG: - for (uint8_t etn = 0; etn < sizeof(kvp_original) / sizeof(kv_pair); etn++) - { - switch (SW_PAGE) - { - case R_NUM: - break; - case RW_NUM: - break; - case RW_PIC: - break; - case SW_PAGE: - break; - default: - break; - } - } - break; - case MENU_PG: - for (int etn = 0; etn < sizeof(kvp_menu) / sizeof(kv_pair); etn++) - { - switch (kvp_menu[etn].attr) - { - case R_NUM: - break; - case RW_NUM: - sprintf(tft_cmd_str, "%s.val=%d", kvp_menu[etn].key, - kvp_menu[etn].value); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s", kvp_menu[etn].key); - tft_send_cmd(tft_cmd_str); - break; - case RW_PIC: - sprintf(tft_cmd_str, "vis %s,%d", kvp_menu[etn].key, - kvp_menu[etn].value); - tft_send_cmd(tft_cmd_str); - break; - case SW_PAGE: - break; - default: - break; - } - } - break; - case OBJ_SET_PG: - for (int etn = 0; etn < sizeof(kvp_obj_set[0]) / sizeof(kv_pair); etn++) - { - switch (kvp_obj_set[tft_stt.objn][etn].attr) - { - case R_NUM: - break; - case RW_NUM: - sprintf(tft_cmd_str, "%s.val=%d", kvp_obj_set[tft_stt.objn][etn].key, - kvp_obj_set[tft_stt.objn][etn].value); - tft_send_cmd(tft_cmd_str); - sprintf(tft_cmd_str, "ref %s", kvp_obj_set[tft_stt.objn][etn].key); - tft_send_cmd(tft_cmd_str); - break; - case RW_PIC: - sprintf(tft_cmd_str, "vis %s,%d", - kvp_obj_set[tft_stt.objn][etn].key, - kvp_obj_set[tft_stt.objn][etn].value); - tft_send_cmd(tft_cmd_str); - break; - case SW_PAGE: - break; - default: - break; - } - } - break; - default: - break; - } - return; -} - - - -int16_t *get_value_of_kvp(char *name, uint8_t objn) -{ - for (int i = 0; i < sizeof(kvp_menu) / sizeof(kv_pair); i++) - { - if (strcmp(name, kvp_menu[i].key) == 0) - { - return &kvp_menu[i].value; - } - } - for (int i = 0; i < sizeof(kvp_obj_set[objn]) / sizeof(kv_pair); i++) - { - if (strcmp(name, kvp_obj_set[objn][i].key) == 0); - { - return &kvp_obj_set[objn][i].value; - } - } - return 0; -} - -input_limit tft_input_limit(char *name) -{ - input_limit in_lmt; - if (strcmp(name, "st_y") == 0) - { - in_lmt.min = 2000; - in_lmt.max = 2100; - } - else if (strcmp(name, "st_mo") == 0) - { - in_lmt.min = 1; - in_lmt.max = 12; - } - else if (strcmp(name, "st_d") == 0) - { - in_lmt.min = 1; - in_lmt.max = get_month_days(*get_value_of_kvp("st_y", 0), *get_value_of_kvp("st_mo", 0)); - } - else if (strcmp(name, "st_h") == 0) - { - in_lmt.min = 0; - in_lmt.max = 23; - } - else if (strcmp(name, "st_mi") == 0) - { - in_lmt.min = 0; - in_lmt.max = 59; - } - else if (strcmp(name, "st_s") == 0) - { - in_lmt.min = 0; - in_lmt.max = 59; - } - else if (strcmp(name, "bg_y") == 0) - { - in_lmt.min = 2000; - in_lmt.max = 2100; - } - else if (strcmp(name, "bg_mo") == 0) - { - in_lmt.min = 1; - in_lmt.max = 12; - } - else if (strcmp(name, "bg_d") == 0) - { - in_lmt.min = 1; - in_lmt.max = get_month_days(*get_value_of_kvp("bg_y", 0), *get_value_of_kvp("bg_mo", 0)); - } - else if (strcmp(name, "bg_h") == 0) - { - in_lmt.min = 0; - in_lmt.max = 23; - } - else if (strcmp(name, "bg_mi") == 0) - { - in_lmt.min = 0; - in_lmt.max = 59; - } - else if (strcmp(name, "bg_mi") == 0) - { - in_lmt.min = 0; - in_lmt.max = 59; - } - else if (strcmp(name, "ed_h") == 0) - { - in_lmt.min = 0; - in_lmt.max = 23; - } - else if (strcmp(name, "ed_mi") == 0) - { - in_lmt.min = 0; - in_lmt.max = 59; - } - else - { - in_lmt.min = 0; - in_lmt.max = 0; - } - return in_lmt; -} - - -//const kv_pair *get_plan_data(uint8_t objn)[][18] -//{ - //return (const kv_pair *[][18])kvp_obj_set; -//} - -uint8_t get_obj_num(void) -{ - return sizeof(kvp_obj_set) / sizeof(kvp_obj_set[0]); -} - - -/* - * ½«tftÏÔʾµÄÊý¾ÝÌáÈ¡µ½¼Æ»®´¦ÀíµÄÊäÈëÊý¾Ý½á¹¹ÖУ¬Õâ¸öº¯ÊýÓ¦¸ÃÔÚtftÊäÈëÓиıäÊDZ»µ÷ - * Óᣠ- */ -void tft_to_plan_input(uint8_t objn) -{ - plan_in[objn].lgbg_t.year = *get_value_of_kvp("bg_y", objn); - plan_in[objn].lgbg_t.month = *get_value_of_kvp("bg_mo", objn); - plan_in[objn].lgbg_t.mday = *get_value_of_kvp("bg_d", objn); - plan_in[objn].lgbg_t.hour = *get_value_of_kvp("bg_h", objn); - plan_in[objn].lgbg_t.min = *get_value_of_kvp("bg_mi", objn); - //plan_in[objn].bg_t.sec = *get_value_kvp("bg_s", objn); - - plan_in[objn].lged_t.year = *get_value_of_kvp("ed_y", objn); - plan_in[objn].lged_t.month = *get_value_of_kvp("ed_mo", objn); - plan_in[objn].lged_t.mday = *get_value_of_kvp("ed_d", objn); - plan_in[objn].lged_t.hour = *get_value_of_kvp("ed_h", objn); - plan_in[objn].lged_t.min = *get_value_of_kvp("ed_mi", objn); - //plan_in[objn].ed_t.sec = *get_value_of_kvp("ed_s", objn); - - plan_in[objn].lgpd_t.hour = *get_value_of_kvp("pd_h", objn); - plan_in[objn].lgpd_t.min = *get_value_of_kvp("pd_mi", objn); - - plan_in[objn].lg_r = *get_value_of_kvp("lg_r", objn); - plan_in[objn].lg_b = *get_value_of_kvp("lg_b)", objn); - plan_in[objn].lg_uvb = *get_value_of_kvp("lg_uvb", objn); - plan_in[objn].water = *get_value_of_kvp("water", objn); - - plan_in[objn].sw = *get_value_of_kvp("obj_sw", objn); - return; -} - - - - - - +/* + * tft.c - tft ÏÔʾÆÁµÄ½Ó¿Ú + * + * uart hmi·½Ê½ + * Õâ¸öÄ£¿éµÄºËÐÄÊÇÒ»¸ö״̬»ú¿ò¼Ü£¬ÈçÏ + * switch (tft_stt.pgn) + * { + * case ORIGINAL_PG: + * switch (kvp_menu[etn].attr) + * { + * case R_NUM: + * break; + * case RW_NUM: + * break; + * case RW_PIC: + * break; + * case SW_PAGE: + * break; + * case R_TXT: + * break; + * default: + * break; + * } + * break; + * case MENU_PG: + * switch (kvp_menu[etn].attr) + * { + * case R_NUM: + * break; + * case RW_NUM: + * break; + * case RW_PIC: + * break; + * case SW_PAGE: + * break; + * case R_TXT: + * break; + * default: + * break; + * } + * break; + * case OBJ_SET_PG: + * switch (kvp_obj_set[tft_stt.objn][etn].attr) + * { + * case R_NUM: + * break; + * case RW_NUM: + * break; + * case RW_PIC: + * break; + * case SW_PAGE: + * break; + * case R_TXT: + * break; + * default: + * break; + * } + * break; + * default: + * break; + * } + * ¹ØÓÚÏÔʾµÄËùÓУ¬×îÖÕ¶¼»áÌåÏÖÔÚÕâ¸ö¿ò¼ÜÀҲ¾ÍÊÇËùνµÄ״̬»úÀÂß¼­¼òµ¥£¬Ï¸½Ú·±Ëö + * + * ½âÊͼ¸¸ö¹Ø¼ü±äÁ¿£º + * tft_stt - °üº¬×´Ì¬»úµ±Ç°µÄ״̬ÐÅÏ¢ + * kvp_* - Êý×飬ÿһ¸öÔªËØ¾ßÓÐÒ»¸öÒ³ÃæÖе¥¸öÔªËØµÄÊý¾ÝÐÅÏ¢£¬ËüµÄ¼¯ºÏ×é³ÉÕû¸öÒ³ + * ÃæµÄÊý¾ÝÐÅÏ¢£¬ËüµÄÔªËØË³ÐòÓ¦¸Ã·ûºÏÒ³ÃæÖеÄʵ¼Ê˳Ðò£¬Ò²¼´ËüµÄÔªËØË³Ðò±íʾÁËÒ³ + * ÃæÔªËØµÄ˳ÐòÐÅÏ¢ + * *_lyt - Êý×飬ÅäºÏkvp_*ÃèÊöÒ»¸öÒ³ÃæµÄ²¼¾Ö£¬Æäÿһ¸öÔªËØ±íÊ¾Ò³ÃæÖжÔÓ¦ÐÐÖеÚÒ» + * ¸öÔªËØÔÚkvp_*Êý×éÖеÄϱê + * ÿһ¶Ô*_lytºÍkvp_*ÍêÕûµÄ±íʾÁËÒ»¸öÒ³Ãæ£¬Ò²¾ÍÊÇÊý¾ÝÐÅÏ¢ºÍ²¼¾ÖÐÅÏ¢ + * ( * ºÅÒâָͨÅä·û£»Ò³ÃæÊǰ´ÐзָîµÄ) + * + * ËùÓÐÈçÉÏ£¬ËùÓÐÈçÏ + */ + +#include +#include +#include + +#include "uart.h" + +#include "include/tft.h" +#include "include/knob.h" +#include "include/key.h" +#include "include/config.h" +#include "include/plan_handle.h" +#include "include/tft_plan_internal.h" +#include "include/pm_flash.h" +#include "include/orient.h" + + + + + + +/* + * tft_state - ÔÚtft²Ù×÷ÖУ¬±íʾµ±Ç°×´Ì¬»úµÄ״̬µÄÀàÐÍ + * pgn±íÊ¾Ò³Ãæ±àºÅ£¬etn¡¢ln·Ö±ðÒ»¸öÒ³ÃæÖеÄÔªËØºÅ¡¢Ðкţ¬objn±íʾ¶ÔÏóºÅ¡£ + */ +typedef struct tft_state_ +{ + uint8_t pgn; + uint8_t etn; + uint8_t ln; + uint8_t objn; +} tft_state; + +/* + * Ò³Ãæ±êÖ¾ + * ORIGINAL_PG±íʾ¿ª»ú½çÃæ£¬MENU_PG±íʾÖ÷½çÃæ£¬OBJ_SET_PG±íʾֲÎïÊôÐÔÉèÖýçÃæ + */ +typedef enum page_name_ +{ + ORIGINAL_PG = 0, MENU_PG, OBJ_SET_PG +} page_name; + +/* + * Ò³ÃæÊôÐÔ±êÖ¾ + * ö¾ÙµÄÿ¸ö³ÉÔ±µÄº¬ÒåͬÆä±êʶ·û + */ +typedef enum entry_attr_ +{ + R_NUM = 0, RW_NUM, RW_PIC, SW_PAGE, R_TXT, RW_TXT +} entry_attr; + +/* + * tftÉèÖÃÑÕɫʱÐèÒªµÄÖµ + */ +typedef enum tft_colour_ +{ + TFT_BACK = 65535, TFT_RED = 63488, TFT_PURPLE = 31 +} tft_colour; + + + + + +// tftÏÔʾÆÁµ±Ç°×´Ì¬±äÁ¿¶¨Òå +static tft_state tft_stt = { 0, 0, 0, 0 }; + +/* + * original_lytÊý×é´æ´¢µÄÊÇ¿ª»ú½çÃæµÄÿһÐеÚÒ»¸öÓÐÐ§ÔªËØµÄÔªËØ±àºÅ + * menu_lytÊý×é´æ´¢µÄÊÇÖ÷½çÃæµÄÿһÐеÚÒ»¸öÓÐÐ§ÔªËØµÄÔªËØ±àºÅ + * obj_set_lytÊý×é´æ´¢µÄÊÇÖ²ÎïÊôÐÔÉèÖýçÃæµÄÿһÐеÚÒ»¸öÓÐÐ§ÔªËØµÄÔªËØ±àºÅ + */ +static uint8_t original_lyt[] = { 0, 1 }; +static uint8_t menu_lyt[] = { 0, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; +static uint8_t obj_set_lyt[] = { 0, 2, 5, 9, 13, 16, 18, 19}; + + +/* + * kvp_originalÊý×éÖÐÿһ¸öÔªËØ°´Ë³ÐòÒÀ´Î¶ÔÓ¦×Å¿ª»ú½çÃæÖеÄÿһ¸öÓÐÐ§ÔªËØ¡£ + * kvp_menuÊý×é¶ÔÓ¦Ö÷½çÃæ¡£ + * kvp_obj_set¶ÔÓ¦°Ë¸öÖ²ÎïÊôÐÔ½çÃæ£¬Õâ¸öÊý×éÖÐÓа˸öÏàͬÐÎʽµÄÊý×飬¶ÔÓ¦°Ë¸ö²» + * ͬµÄÖ²Îï¡£ + * + * ÐèҪ˵Ã÷µÄµØ·½ÓÐÁ½¸ö£¬Ò»ÊÇÊý×éÖеÄÿһ¸öÔªËØ¶¼ÊÇÓÐÐòµÄ£¬ÊǺÍÏÔÊ¾Ò³ÃæÖеÄÓÐЧ + * ÔªËØË³Ðò¶ÔÓ¦µÄ£»¶þÊÇÊý×éÖеÄÿһ¸öÔªËØ°üº¬µÄÐÅÏ¢ÓÐÒ»¸ö×Ö·û´®£¬Ò»¸öÕûÐÍÖµ£¬ + * Ò»¸öö¾ÙÖµ£¬×Ö·û´®¶ÔÓ¦×ÅÒ³ÃæÔªËØµÄID£¬ÕûÐÍÖµÔÚ²»Í¬µÄÇé¿öÏÂÓв»Í¬µÄº¬Ò壬ö¾Ù + * Öµ±íʾÁËÔªËØµÄÀàÐÍ¡£ + */ +static kv_pair kvp_original[] = { {"ori_0", 0, R_NUM} }; +static kv_pair kvp_menu[] = { + { "st_y", 2016, RW_NUM }, { "st_mo", 4, RW_NUM }, { "st_d", 14, RW_NUM }, { "st_h", 0, RW_NUM }, { "st_mi", 0, RW_NUM }, { "st_s", 0, RW_NUM }, + { "obj0", 0, SW_PAGE }, + { "obj1", 1, SW_PAGE }, + { "obj2", 2, SW_PAGE }, + { "obj3", 3, SW_PAGE }, + { "obj4", 4, SW_PAGE }, + { "obj5", 5, SW_PAGE }, + { "obj6", 6, SW_PAGE }, + { "obj7", 7, SW_PAGE }, + { "note", 0, R_TXT } +}; +kv_pair kvp_obj_set[][PLAN_DATA_NUM] = +{ + { + { "ob", 1, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 0 + { + { "ob", 2, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 1 + { + { "ob", 3, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 2 + { + { "ob", 4, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 3 + { + { "ob", 5, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 4 + { + { "ob", 6, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 5 + { + { "ob", 7, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 6 + { + { "ob", 8, R_NUM}, { "sw", 1, RW_PIC },// 0~1 + { "bg_y", 2016, RW_NUM }, { "bg_mo", 4, RW_NUM }, { "bg_d", 14, RW_NUM }, // 2~4 + { "bg_h", 14, RW_NUM }, { "bg_mi", 0, RW_NUM }, { "ed_h", 14, RW_NUM }, { "ed_mi", 0, RW_NUM }, // 5~8 + { "lg_r", 0, RW_PIC}, { "lg_b", 0, RW_PIC }, { "lg_uvb", 0, RW_PIC }, { "water", 0, RW_PIC }, // 9~12 + { "pd_d", 3, RW_NUM }, { "pd_h", 3, RW_NUM }, { "pd_mi", 3, RW_NUM }, // 13~15 + { "x", 0, RW_TXT }, { "y", 1, RW_TXT }, // 16~17 + { "cnt", 0, RW_NUM } //18 + }, // 7 +}; + +static char tft_cmd_str[20]; + +/* + * ¾²Ì¬º¯ÊýÉùÃ÷ + */ +static void tft_send_cmd(const char *cmd); +static void tft_set_color(uint8_t etn, tft_colour tft_col); +static void tft_input(void); +static void sw_to_obj(void); + + + + +/** + * tft_init() - tftÄ£¿é³õʼ»¯ + * + * °üÀ¨´®¿Ú³õʼ»¯ºÍ³õʼ»¯ÏÔʾÆÁΪ¿ª»ú½çÃæ + */ +void tft_init(void) +{ + uart_init(TFT_UARTX, 9600); + tft_send_cmd("page original"); + return; +} + +/** + * tft_send_cmd() - Ïò´®¿ÚÆÁ·¢ËÍÃüÁî + */ +static void tft_send_cmd(const char *cmd) +{ + uart_sendStr(TFT_UARTX, (const uint8_t *)cmd); + + uart_putchar(TFT_UARTX, 0xff); + uart_putchar(TFT_UARTX, 0xff); + uart_putchar(TFT_UARTX, 0xff); +} + +/** + * tft_set_color() - ÉèÖÃtftÏÔʾÆÁÒ³ÃæÖÐÒ»¸öÔªËØÇøÓòµÄÑÕÉ« + * @etn: ÒªÉèÖÃÑÕÉ«µÄÇøÓò¶ÔÓ¦µÄÔªËØºÅ + * @tft_col: ÒªÉèÖõÄÑÕÉ« + * + * ÉèÖÃÑÕɫʱ£¬Ê×Ïȵõ½¶ÔÓ¦µÄÔªËØID£¬½Ó×ŲúÉúÒ»¸ö¶Ô´ËIDÉèÖÃÑÕÉ«ÊôÐÔµÄ×Ö·û´®ÐÎʽ + * µÄÃüÁȻºóͨ¹ý´®¿Ú½«Õâ¸ö×Ö·û´®·¢Ë͸ø´®¿ÚÆÁ£¬×îºó»¹Òª·¢ËÍˢдËIDµÄÃüÁîÒÔʹ + * ÑÕÉ«±ä»¯ÏÔʾ³öÀ´ + */ +static void tft_set_color(uint8_t etn, tft_colour tft_col) +{ + //¶ÔÓÚ²»Í¬µÄÒ³ÃæÓв»Í¬µÄ´¦Àí + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + break; + case MENU_PG: + // ¶ÔÍ¬Ò»Ò³ÃæÖв»Í¬ÊôÐÔµÄÔªËØ×ö²»Í¬µÄ´¦Àí + switch (kvp_menu[etn].attr) + { + case R_NUM: + case RW_NUM: + case R_TXT: + case RW_TXT: + // ¸ü¸Ä´ËÔªËØµÄÑÕÉ«ÊôÐÔ + sprintf(tft_cmd_str, "%s.bco=%u", kvp_menu[etn].key, tft_col); + tft_send_cmd(tft_cmd_str); + // ˢдËÔªËØ + sprintf(tft_cmd_str, "ref %s", kvp_menu[etn].key); + tft_send_cmd(tft_cmd_str); + break; + case RW_PIC: + case SW_PAGE: + sprintf(tft_cmd_str, "%s_sg.bco=%u", kvp_menu[etn].key, tft_col); + tft_send_cmd(tft_cmd_str); + sprintf(tft_cmd_str, "ref %s_sg", kvp_menu[etn].key); + tft_send_cmd(tft_cmd_str); + break; + default: + break; + } + break; + case OBJ_SET_PG: + switch (kvp_obj_set[tft_stt.objn][etn].attr) + { + case R_NUM: + case RW_NUM: + case R_TXT: + case RW_TXT: + sprintf(tft_cmd_str, "%s.bco=%u", + kvp_obj_set[tft_stt.objn][etn].key, tft_col); + tft_send_cmd(tft_cmd_str); + sprintf(tft_cmd_str, "ref %s", kvp_obj_set[tft_stt.objn][etn].key); + tft_send_cmd(tft_cmd_str); + break; + case RW_PIC: + case SW_PAGE: + sprintf(tft_cmd_str, "%s_sg.bco=%u", + kvp_obj_set[tft_stt.objn][etn].key, tft_col); + tft_send_cmd(tft_cmd_str); + sprintf(tft_cmd_str, "ref %s_sg", + kvp_obj_set[tft_stt.objn][etn].key); + tft_send_cmd(tft_cmd_str); + break; + default: + break; + } + break; + default: + break; + } + return; +} + +/** + * tft_up() - Ñ¡ÔñtftÏÔʾÆÁµ±Ç°Ò³Ã浱ǰÐеÄÉÏÒ»ÐеĵÚÒ»¸öÔªËØ + * + * µ±Ç°±»Ñ¡ÖеÄÔªËØ½«ÒÔÏÔÖøµÄÑÕÉ«±êʾ³öÀ´ + */ +void tft_up(void) +{ + // ¼Ç¼µ±Ç°ÔªËغŠ+ uint8_t etn_log = tft_stt.etn; + + // ¶ÔÍ¬Ò»Ò³Ãæ×ö²»Í¬µÄ´¦Àí + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + // µ±Ç°ÐкŴóÓÚÁã¾Í¼õÒ»±íʾÉÏÒ»ÐÐ + if (tft_stt.ln > 0) + { + tft_stt.ln--; + } + // ÉèÖÃÔªËØºÅΪ´ËʱÐкŶÔÓ¦ÐеĵÚÒ»¸öÔªËØµÄÔªËØºÅ + tft_stt.etn = original_lyt[tft_stt.ln]; + + // È¡Ïû֮ǰµÄÔªËØµÄÑÕÉ«±ê¼Ç£¬²¢±ê¼Çµ±Ç°ÔªËØ + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case MENU_PG: + if (tft_stt.ln > 0) + { + tft_stt.ln--; + } + tft_stt.etn = menu_lyt[tft_stt.ln]; + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case OBJ_SET_PG: + if (tft_stt.ln > 0) + { + tft_stt.ln--; + } + tft_stt.etn = obj_set_lyt[tft_stt.ln]; + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + return; +} + +/** + * tft_down() - Ñ¡ÔñtftÏÔʾÆÁµ±Ç°Ò³Ã浱ǰÐеÄÏÂÒ»ÐеĵÚÒ»¸öÔªËØ + * + * µ±Ç°±»Ñ¡ÖеÄÔªËØ½«ÒÔÏÔÖøµÄÑÕÉ«±êʾ³öÀ´ + */ +void tft_down(void) +{ + uint8_t etn_log = tft_stt.etn; + + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + // Èç¹ûµ±Ç°ÐкÅСÓÚ×î´óÐкŵϰ£¬µ±Ç°ÐкżÓÒ» + if (tft_stt.ln < sizeof(original_lyt) / sizeof(uint8_t) - 2) + { + tft_stt.ln++; + } + tft_stt.etn = original_lyt[tft_stt.ln]; + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case MENU_PG: + if (tft_stt.ln < sizeof(menu_lyt) / sizeof(uint8_t) - 2) + { + tft_stt.ln++; + } + tft_stt.etn = menu_lyt[tft_stt.ln]; + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case OBJ_SET_PG: + if (tft_stt.ln < sizeof(obj_set_lyt) / sizeof(uint8_t) - 2) + { + tft_stt.ln++; + } + tft_stt.etn = obj_set_lyt[tft_stt.ln]; + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + return; +} + +/** + * tft_left() - Ñ¡ÔñtftÏÔʾÆÁµ±Ç°Ò³ÃæÖе±Ç°ÔªËصÄÏÂÒ»¸öÔªËØ + * + * µ±Ç°±»Ñ¡ÖеÄÔªËØ½«ÒÔÏÔÖøµÄÑÕÉ«±êʾ³öÀ´ + */ +void tft_left(void) +{ + uint8_t etn_log = tft_stt.etn; + + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + if (tft_stt.etn > 0) + { + if (--tft_stt.etn < original_lyt[tft_stt.ln]) + { + tft_stt.ln--; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case MENU_PG: + if (tft_stt.etn > 0) + { + if (--tft_stt.etn < menu_lyt[tft_stt.ln]) + { + tft_stt.ln--; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case OBJ_SET_PG: + if (tft_stt.etn > 0) + { + if (--tft_stt.etn < obj_set_lyt[tft_stt.ln]) + { + tft_stt.ln--; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + return; +} + +/** + * tft_left() - Ñ¡ÔñtftÏÔʾÆÁµ±Ç°Ò³ÃæÖе±Ç°ÔªËصÄÉÏÒ»¸öÔªËØ + * + * µ±Ç°±»Ñ¡ÖеÄÔªËØ½«ÒÔÏÔÖøµÄÑÕÉ«±êʾ³öÀ´ + */ +void tft_right(void) +{ + uint8_t etn_log = tft_stt.etn; + + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + if (tft_stt.etn < original_lyt[sizeof(original_lyt) + / sizeof(uint8_t) - 1] - 1) + { + if (++tft_stt.etn >= original_lyt[tft_stt.ln + 1]) + { + tft_stt.ln++; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case MENU_PG: + if (tft_stt.etn < menu_lyt[sizeof(menu_lyt) / sizeof(uint8_t) - 1] - 1) + { + if (++tft_stt.etn >= menu_lyt[tft_stt.ln + 1]) + { + tft_stt.ln++; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case OBJ_SET_PG: + if (tft_stt.etn < obj_set_lyt[sizeof(obj_set_lyt) + / sizeof(uint8_t) - 1] - 1) + { + if (++tft_stt.etn >= obj_set_lyt[tft_stt.ln + 1]) + { + tft_stt.ln++; + } + } + + tft_set_color(etn_log, TFT_BACK); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + return; +} + + + +/** + * tft_ret() - ´®¿ÚÆÁ·µ»ØÉÏÒ»¸öÒ³Ãæ + */ +void tft_ret(void) +{ + // ¶ÔÓÚ²»Í¬µÄÒ³Ãæ×ö²»Í¬µÄ´¦Àí + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + break; + case MENU_PG: + /* + * ¸üÐÂ״̬ + * ·¢ËÍÏÔʾÉÏÒ»¸öÒ³ÃæµÄÃüÁ + * ÉèÖôËÊ±Ò³ÃæÑ¡Öбê¼ÇΪµ±Ç°Ò³ÃæÖеĵÚÒ»¸öÔªËØ + */ + tft_stt.pgn = ORIGINAL_PG; + tft_stt.ln = 0; + tft_stt.etn = 0; + tft_send_cmd("page original"); + tft_page_refresh(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + case OBJ_SET_PG: + tft_stt.pgn = MENU_PG; + tft_stt.ln = 0; + tft_stt.etn = 0; + tft_send_cmd("page menu"); + tft_page_refresh(); + + sw_to_obj(); + tft_to_plan_input(tft_stt.objn); + enter_critical(); + flash_write((uint8_t *)plan_in, sizeof(plan_in)); + exit_critical(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + return; +} + +/** + * tft_ok() - ´®¿ÚÆÁ½øÈëÏÂÒ»¸öÒ³Ãæ»òÕ߱༭״̬ + */ +void tft_ok(void) +{ + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + switch (SW_PAGE) + { + case R_NUM: + break; + case RW_NUM: + break; + case RW_PIC: + break; + case SW_PAGE: + tft_stt.pgn = MENU_PG; + tft_stt.ln = 0; + tft_stt.etn = 0; + tft_send_cmd("page menu"); + tft_page_refresh(); + sw_to_obj(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + break; + case MENU_PG: + switch (kvp_menu[tft_stt.etn].attr) + { + case R_NUM: + break; + // ½øÐÐRW_NUMÊôÐÔÔªËØµÄ±à¼­ + case RW_NUM: + tft_input(); + break; + // ½øÐÐRW_TXTÊôÐÔÔªËØµÄ±à¼­ + case RW_TXT: + tft_input(); + break; + // ½øÐÐRW_PICÊôÐÔÔªËØµÄ±à¼­ + case RW_PIC: + tft_input(); + break; + // ½øÈëÏÂÒ»¸öÒ³Ãæ + case SW_PAGE: + tft_stt.pgn = OBJ_SET_PG; + tft_stt.objn = kvp_menu[tft_stt.etn].value; + tft_stt.ln = 0; + tft_stt.etn = 0; + tft_send_cmd("page obj_set"); + tft_page_refresh(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + break; + default: + break; + } + break; + case OBJ_SET_PG: + switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) + { + case R_NUM: + break; + case RW_TXT: + tft_input(); + break; + case RW_NUM: + tft_input(); + break; + case RW_PIC: + tft_input(); + break; + case SW_PAGE: + break; + default: + break; + } + break; + default: + break; + } + return; +} + +/** + * tft_input() - ʵÏÖ´®¿ÚÆÁµÄ±à¼­ÊäÈ빦ÄÜ + * + * µ±Ñ¡ÖÐÒ»¸öÔªËØ±à¼­Ê±£¬Ó¦¸Ä±äÆäÑÕÉ«ÒÔ±ê¼Ç½øÈë±à¼­×´Ì¬ + * ±à¼­ÊäÈëʱÓÐÐýÅ¥ÊäÈëºÍ°´¼üÊäÈëÁ½ÖÖÇé¿ö + */ +static void tft_input(void) +{ + input_limit in_lmt; + int16_t in_v, bg_v; + + // ²»Í¬Ò³Ãæ + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + break; + case MENU_PG: + // ²»Í¬ÊôÐÔ + switch (kvp_menu[tft_stt.etn].attr) + { + case R_NUM: + break; + // ÐýÅ¥ÊäÈë + case RW_NUM: + // ÉèÖÃÑÕÉ« + tft_set_color(tft_stt.etn, TFT_RED); + + // µÃµ½µ±Ç°±à¼­µÄÔªËØÊäÈëÇø¼ä·¶Î§ + in_lmt = tft_input_limit(kvp_menu[tft_stt.etn].key); + // ¼Ç¼µ±Ç°ÔªËصijõʼֵ + bg_v = kvp_menu[tft_stt.etn].value; + knob_enable(); + // ÔÚûÓа´RET°´¼üµÄʱºò£¬Ò»Ö±±£³ÖÔڱ༭״̬ + while (get_key_mean(RET_KEY) == N_KEY) + { + in_v = bg_v + get_knob_val(); + if (in_v < in_lmt.min) + { + kvp_menu[tft_stt.etn].value = in_lmt.min; + bg_v = in_lmt.min; + knob_clear(); + } + else if (in_v > in_lmt.max) + { + kvp_menu[tft_stt.etn].value = in_lmt.max; + bg_v = in_lmt.max; + knob_clear(); + } + else + { + kvp_menu[tft_stt.etn].value = in_v; + } + sprintf(tft_cmd_str, "%s.val=%u", kvp_menu[tft_stt.etn].key, + kvp_menu[tft_stt.etn].value); + tft_send_cmd(tft_cmd_str); + } + knob_disable(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + // Èç¹ûÊǶÔϵͳʱ¼äÉèÖõϰ£¬ÒªÍ¬Ê±¸üÐÂϵͳʱ¼ä + calendar_info cal; + cal.year = *get_value_of_kvp("st_y", 0); + cal.month = *get_value_of_kvp("st_mo", 0); + cal.mday = *get_value_of_kvp("st_d", 0); + cal.hour = *get_value_of_kvp("st_h", 0); + cal.min = *get_value_of_kvp("st_mi", 0); + cal.sec= *get_value_of_kvp("st_s", 0); + ds1302_set_time(&cal); + clear_key_m(); + break; + // °´¼üÊäÈëµÄÇé¿ö + case RW_PIC: + tft_set_color(tft_stt.etn, TFT_RED); + while (get_key_mean(RET_KEY) == N_KEY) + { + if (get_key_mean(UP_KEY) == S_KEY + || get_key_mean(DOWN_KEY) == S_KEY) + { + kvp_menu[tft_stt.etn].value = !kvp_menu[tft_stt.etn].value; + sprintf(tft_cmd_str, "vis %s,%u", kvp_menu[tft_stt.etn].key, + kvp_menu[tft_stt.etn].value); + tft_send_cmd(tft_cmd_str); + } + } + tft_set_color(tft_stt.etn, TFT_PURPLE); + clear_key_m(); + break; + case SW_PAGE: + break; + default: + break; + } + break; + case OBJ_SET_PG: + switch (kvp_obj_set[tft_stt.objn][tft_stt.etn].attr) + { + case R_NUM: + break; + case RW_NUM: + tft_set_color(tft_stt.etn, TFT_RED); + in_lmt = + tft_input_limit(kvp_obj_set[tft_stt.objn][tft_stt.etn].key); + bg_v = kvp_obj_set[tft_stt.objn][tft_stt.etn].value; + knob_enable(); + while (get_key_mean(RET_KEY) == N_KEY) + { + in_v = bg_v + get_knob_val(); + if (in_v < in_lmt.min) + { + kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_lmt.min; + bg_v = in_lmt.min; + knob_clear(); + } + else if (in_v > in_lmt.max) + { + kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_lmt.max; + bg_v = in_lmt.max; + knob_clear(); + } + else + { + kvp_obj_set[tft_stt.objn][tft_stt.etn].value = in_v; + } + sprintf(tft_cmd_str, "%s.val=%u", + kvp_obj_set[tft_stt.objn][tft_stt.etn].key, + kvp_obj_set[tft_stt.objn][tft_stt.etn].value); + tft_send_cmd(tft_cmd_str); + } + knob_disable(); + tft_set_color(tft_stt.etn, TFT_PURPLE); + clear_key_m(); + break; + case RW_PIC: + tft_set_color(tft_stt.etn, TFT_RED); + + while (get_key_mean(RET_KEY) == N_KEY) + { + if (get_key_mean(UP_KEY) == S_KEY || get_key_mean(DOWN_KEY)) + { + kvp_obj_set[tft_stt.objn][tft_stt.etn].value = + !kvp_obj_set[tft_stt.objn][tft_stt.etn].value; + sprintf(tft_cmd_str, "vis %s,%u", + kvp_obj_set[tft_stt.objn][tft_stt.etn].key, + kvp_obj_set[tft_stt.objn][tft_stt.etn].value); + tft_send_cmd(tft_cmd_str); + } + } + tft_set_color(tft_stt.etn, TFT_PURPLE); + clear_key_m(); + break; + // ÉèÖ÷½Ïò + case RW_TXT: + tft_set_color(tft_stt.etn, TFT_RED); + while (get_key_mean(RET_KEY) == N_KEY) + { + if (get_key_mean(UP_KEY) == S_KEY) + { + orient_setspeed( + kvp_obj_set[tft_stt.objn][tft_stt.etn].value, + ORIENT_LEFT, 100); + sprintf(tft_cmd_str, "%s.txt=\"%s\"", + kvp_obj_set[tft_stt.objn][tft_stt.etn].key, "×óת"); + tft_send_cmd(tft_cmd_str); + } + else if (get_key_mean(DOWN_KEY)) + { + orient_setspeed( + kvp_obj_set[tft_stt.objn][tft_stt.etn].value, + ORIENT_RIGHT, 100); + sprintf(tft_cmd_str, "%s.txt=\"%s\"", + kvp_obj_set[tft_stt.objn][tft_stt.etn].key, "ÓÒת"); + tft_send_cmd(tft_cmd_str); + } + else + { + // ±£³ÖÉÏÒ»´ÎÑ­»· + } + } + orient_setmode(kvp_obj_set[tft_stt.objn][tft_stt.etn].value, + MODE_MANUL); + orient_presetop(kvp_obj_set[tft_stt.objn][tft_stt.etn].value, + PRESET_SET, tft_stt.objn + 1); + tft_set_color(tft_stt.etn, TFT_PURPLE); + clear_key_m(); + break; + case SW_PAGE: + break; + default: + break; + } + break; + default: + break; + } +} + + +/* + * tft_page_refresh() - ÔÚÒ³ÃæÐÅÏ¢Óиıäʱµ÷ÓÃÒÔË¢ÐÂÒ³Ãæ + * + * ʵÏÖµÄÖ÷ÒªÒÀ¾ÝÊÇ´®¿ÚÆÁÖпؼþµÄË¢ÐÂÃüÁî + */ +void tft_page_refresh(void) +{ + switch (tft_stt.pgn) + { + case ORIGINAL_PG: + for (uint8_t etn = 0; etn < sizeof(kvp_original) / sizeof(kv_pair); + etn++) + { + switch (SW_PAGE) + { + case R_NUM: + break; + case RW_NUM: + break; + case RW_PIC: + break; + case SW_PAGE: + break; + default: + break; + } + } + break; + case MENU_PG: + for (int etn = 0; etn < sizeof(kvp_menu) / sizeof(kv_pair); + etn++) + { + switch (kvp_menu[etn].attr) + { + case R_NUM: + case RW_NUM: + sprintf(tft_cmd_str, "%s.val=%u", kvp_menu[etn].key, + kvp_menu[etn].value); + tft_send_cmd(tft_cmd_str); + sprintf(tft_cmd_str, "ref %s", kvp_menu[etn].key); + tft_send_cmd(tft_cmd_str); + break; + case RW_PIC: + sprintf(tft_cmd_str, "vis %s,%u", kvp_menu[etn].key, + kvp_menu[etn].value); + tft_send_cmd(tft_cmd_str); + break; + case SW_PAGE: + break; + default: + break; + } + } + break; + case OBJ_SET_PG: + for (int etn = 0; etn < sizeof(kvp_obj_set[0]) / sizeof(kv_pair); + etn++) + { + switch (kvp_obj_set[tft_stt.objn][etn].attr) + { + case R_NUM: + case RW_NUM: + sprintf(tft_cmd_str, "%s.val=%u", + kvp_obj_set[tft_stt.objn][etn].key, + kvp_obj_set[tft_stt.objn][etn].value); + tft_send_cmd(tft_cmd_str); + sprintf(tft_cmd_str, "ref %s", + kvp_obj_set[tft_stt.objn][etn].key); + tft_send_cmd(tft_cmd_str); + break; + case RW_PIC: + sprintf(tft_cmd_str, "vis %s,%u", + kvp_obj_set[tft_stt.objn][etn].key, + kvp_obj_set[tft_stt.objn][etn].value); + tft_send_cmd(tft_cmd_str); + break; + case SW_PAGE: + break; + default: + break; + } + } + break; + default: + break; + } + return; +} + +/** + * sw_to_obj() - ½«Ö²ÎïÊôÐÔÉèÖýçÃæÖеÄÊÇ·ñ¼ÓÈë¼Æ»®ÕâÒ»ÊôÐÔ¶ÔÓ¦·´À¡µ½Ö÷½çÃæÖÐ + * + * ÔÚ´ÓÖ²ÎïÊôÐÔÉèÖýçÃæ·µ»ØÖ÷½çÃæÊ±µ÷Óà + */ +static void sw_to_obj(void) +{ + for(uint8_t i = 0; i < 8; i++) + { + sprintf(tft_cmd_str, "vis obj%u,%u", i, + *get_value_of_kvp("sw", i)); + tft_send_cmd(tft_cmd_str); + } + return; +} + + + + +/** + * get_value_of_kvp() - µÃµ½Ò»¸öÒ³ÃæÔªËØµÄID¶ÔÓ¦µÄvlaueµÄµØÖ· + */ +int16_t *get_value_of_kvp(char *name, uint8_t objn) +{ + // ±éÀúÖ÷½çÃæ + for (int i = 0; i < sizeof(kvp_menu) / sizeof(kv_pair); i++) + { + if (strcmp(name, kvp_menu[i].key) == 0) + { + return &kvp_menu[i].value; + } + } + // ±éÀúÖ²ÎïÊôÐÔÉèÖýçÃæ + for (int i = 0; i < sizeof(kvp_obj_set[objn]) / sizeof(kv_pair); i++) + { + if (strcmp(name, kvp_obj_set[objn][i].key) == 0) + { + return &kvp_obj_set[objn][i].value; + } + } + return 0; +} + +/** + * tft_input_limit() - È·¶¨Ò»¸öÔªËØÊäÈëµÄÇø¼ä + * @name: ÔªËØID + */ +input_limit tft_input_limit(char *name) +{ + input_limit in_lmt; + if (strcmp(name, "st_y") == 0) + { + in_lmt.min = 2000; + in_lmt.max = 2100; + } + else if (strcmp(name, "st_mo") == 0) + { + in_lmt.min = 1; + in_lmt.max = 12; + } + else if (strcmp(name, "st_d") == 0) + { + in_lmt.min = 1; + in_lmt.max = get_month_days(*get_value_of_kvp("st_y", 0), + *get_value_of_kvp("st_mo", 0)); + } + else if (strcmp(name, "st_h") == 0) + { + in_lmt.min = 0; + in_lmt.max = 23; + } + else if (strcmp(name, "st_mi") == 0) + { + in_lmt.min = 0; + in_lmt.max = 59; + } + else if (strcmp(name, "st_s") == 0) + { + in_lmt.min = 0; + in_lmt.max = 59; + } + else if (strcmp(name, "bg_y") == 0) + { + in_lmt.min = 2000; + in_lmt.max = 2100; + } + else if (strcmp(name, "bg_mo") == 0) + { + in_lmt.min = 1; + in_lmt.max = 12; + } + else if (strcmp(name, "bg_d") == 0) + { + in_lmt.min = 1; + in_lmt.max = get_month_days(*get_value_of_kvp("bg_y", 0), + *get_value_of_kvp("bg_mo", 0)); + } + else if (strcmp(name, "bg_h") == 0) + { + in_lmt.min = 0; + in_lmt.max = 23; + } + else if (strcmp(name, "bg_mi") == 0) + { + in_lmt.min = 0; + in_lmt.max = 59; + } + else if (strcmp(name, "ed_h") == 0) + { + in_lmt.min = 0; + in_lmt.max = 23; + } + else if (strcmp(name, "ed_mi") == 0) + { + in_lmt.min = 0; + in_lmt.max = 59; + } + else if (strcmp(name, "pd_d") == 0) + { + in_lmt.min = 1; + in_lmt.max = 30; + } + else if (strcmp(name, "pd_h") == 0) + { + in_lmt.min = 0; + in_lmt.max = 23; + } + else if (strcmp(name, "pd_mi") == 0) + { + in_lmt.min = 0; + in_lmt.max = 59; + } + else if (strcmp(name, "x") == 0) + { + in_lmt.min = 0; + in_lmt.max = 359; + } + else if (strcmp(name, "y") == 0) + { + in_lmt.min = 0; + in_lmt.max = 359; + } + else if (strcmp(name, "cnt") == 0) + { + in_lmt.min = 0; + in_lmt.max = 1000; + } + else + { + in_lmt.min = 0; + in_lmt.max = 0; + } + return in_lmt; +} + + + + + + + + + + + diff --git a/plan_manage_main/src/app/water.c b/plan_manage_main/src/app/water.c new file mode 100644 index 0000000..b33480d --- /dev/null +++ b/plan_manage_main/src/app/water.c @@ -0,0 +1,41 @@ +#include + +#include "adc.h" + +#include "config.h" +#include "water.h" + + + + + +void water_init(void) +{ + gpio_init(WATER_PINX, 1, 1); + adc_init(MOISTURE_ADC0_CHN); + return; +} + + +uint16_t get_moisture(void) +{ + uint16_t res; + + res = adc_ave(MOISTURE_ADC0_CHN, ADC_16bit, 3); + return (uint16_t)((float)res / 0xffff * MOISTURE_RATIO + MOISTURE_MIN); +} + +void water_ctr(uint16_t sv_moist) +{ + uint16_t crt_moist = get_moisture(); + + if (sv_moist > crt_moist) + { + gpio_set(WATER_PINX, 0); + } + else + { + gpio_set(WATER_PINX, 1); + } + return; +} diff --git a/plan_manage_main/src/include/drivers/mcg.h b/plan_manage_main/src/include/drivers/mcg.h index e553ba6..051d9ad 100644 --- a/plan_manage_main/src/include/drivers/mcg.h +++ b/plan_manage_main/src/include/drivers/mcg.h @@ -18,7 +18,7 @@ * OSCILLATO_50 50MH¾§Õñ * OSCILLATO_8 8MH¾§Õñ */ -#define OSCILLATO_8 +#define OSCILLATO_50 diff --git a/settings/plan_manage.wsdt b/settings/plan_manage.wsdt index b6e7c3c..a2caf85 100644 --- a/settings/plan_manage.wsdt +++ b/settings/plan_manage.wsdt @@ -1,63 +1,63 @@ - - - - - - plan_manage_main/Debug - - - - - - - - - 189272727 - - - - - - - 3002091524461 - - - - - - 300BuildDebug-LogFind-All-References37762566251 - - 300BuildFind-All-ReferencesFind-in-Files201244300BuildDebug-LogFind-in-Files44062754300BuildFind-in-FilesDebug-LogFind-All-References44062754 - - - - - - - TabID-27328-1563 - Workspace - Workspace - - - plan_manage_mainplan_manage_main/srcplan_manage_main/src/appplan_manage_main/src/app/includeplan_manage_main/src/cpuplan_manage_main/src/includeplan_manage_main/src/include/platformsplan_manage_main/src/other - - - - 0TabID-30694-24148BuildBuildTabID-18378-24174Debug LogDebug-LogTabID-31998-6412Find in FilesFind-in-FilesTabID-20624-12561ReferencesFind-All-References0 - - - - - - TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\CopyToRam.c000002537893789TextEditor$WS_DIR$\plan_manage_main\src\include\cpu\arm_cm0.h000005419131913TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashCheckSum.c000007045954595TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Internal.h0000011784268426TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\user_cfg.h000000350350TextEditor$WS_DIR$\plan_manage_main\src\app\include\config.h0000018158158TextEditor$WS_DIR$\plan_manage_main\src\app\tft.c0000098400TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\demo_cfg.h000003429892989TextEditor$WS_DIR$\plan_manage_main\src\drivers\uart.c0000029789758975TextEditor$WS_DIR$\plan_manage_main\src\common\io.c0000011715715TextEditor$WS_DIR$\plan_manage_main\src\common\printf.c000005721619616196TextEditor$WS_DIR$\plan_manage_main\src\cpu\vectors.c000008021472147TextEditor$WS_DIR$\plan_manage_main\src\cpu\start.c000000425425TextEditor$WS_DIR$\plan_manage_main\src\app\include\knob.h0000012341341TextEditor$WS_DIR$\plan_manage_main\src\app\knob.c000000246246TextEditor$WS_DIR$\plan_manage_main\src\app\plan_handle.c0000011916831683TextEditor$WS_DIR$\plan_manage_main\src\cpu\arm_cm0.c000003347764776TextEditor$WS_DIR$\plan_manage_main\src\cpu\crt0.s000002515515TextEditor$WS_DIR$\plan_manage_main\src\cpu\sysinit.c00000812481248TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_Types.h0000015049424942TextEditor$WS_DIR$\plan_manage_main\src\app\NormalDemo_Flash.c0000201951089410894TextEditor$WS_DIR$\plan_manage_main\src\common\uif.c0000005858TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashProgramOnce.c000005035383538TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashReadResource.c000003732853285TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\PFlashSwap.c000008450485048TextEditor$WS_DIR$\plan_manage_main\src\app\flash.c0000011140334033TextEditor$WS_DIR$\plan_manage_main\src\app\pm_init.c000000286317TextEditor$WS_DIR$\plan_manage_main\src\app\main.c00000551777177727TextEditor$WS_DIR$\plan_manage_main\src\app\key.c00000269805980590100000010000001 - - - - - - - iaridepm.enu1-2-2638280-2-2200199156250202648220313651731-2-22991282-2-212843011003125306517156250203666 - - - - + + + + + + plan_manage_main/Debug + + + + + + + + + 239272727 + + + + + + + 3002091524461 + + + + + + 300BuildDebug-LogFind-All-ReferencesSelect-Ambiguous-Definitions37762566251 + + 300BuildFind-in-FilesFind-All-ReferencesSelect-Ambiguous-Definitions2012443004406275430044062754 + + + + + + + TabID-27328-1563 + Workspace + Workspace + + + plan_manage_mainplan_manage_main/srcplan_manage_main/src/appplan_manage_main/src/app/include + + + + 0TabID-15184-4818BuildBuildTabID-29948-5360Debug LogDebug-Log0 + + + + + + TextEditor$WS_DIR$\plan_manage_main\src\common\io.c000000715715TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashCommandSequence.c000003744644464TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx.h000005649194919TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\FTFx_KX_(256_128_64_32_16_8)K_0K_0K_1K_0K.h000006256895689TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Common.h000001961795717957TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\FlashProgram.c000006540954095TextEditor$WS_DIR$\plan_manage_main\src\common\memtest.c00000000TextEditor$WS_DIR$\plan_manage_main\src\common\printf.c0000009090TextEditor$WS_DIR$\plan_manage_main\src\drivers\mcg.c000000435435TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\fire_drivers_cfg.h000000868876TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\mcg.h0000024463463TextEditor$WS_DIR$\plan_manage_main\src\app\include\orient.h000000175184TextEditor$WS_DIR$\plan_manage_main\src\drivers\gpio.c000006543004300TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\gpio.h000001421452145TextEditor$WS_DIR$\plan_manage_main\src\drivers\pit.c0000061785785TextEditor$WS_DIR$\plan_manage_main\src\drivers\adc.c0000012037113711TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\adc.h000005750750TextEditor$WS_DIR$\plan_manage_main\src\cpu\crt0.s000000242242TextEditor$WS_DIR$\plan_manage_main\src\cpu\sysinit.c00000000TextEditor$WS_DIR$\plan_manage_main\src\cpu\start.c000000690690TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_Types.h000009963806380TextEditor$WS_DIR$\plan_manage_main\src\drivers\FTFx\source\CopyToRam.c000002439083908TextEditor$WS_DIR$\plan_manage_main\src\include\drivers\FTFx\SSD_FTFx_Internal.h000001521219312193TextEditor$WS_DIR$\plan_manage_main\src\drivers\uart.c0000030491079107TextEditor$WS_DIR$\plan_manage_main\src\drivers\SPI.c000000479479TextEditor$WS_DIR$\plan_manage_main\src\app\isr.c0000019642642TextEditor$WS_DIR$\plan_manage_main\src\app\pm_init.c000000517517TextEditor$WS_DIR$\plan_manage_main\src\app\pm_time.c0000036660086008TextEditor$WS_DIR$\plan_manage_main\src\app\water.c0000013548548TextEditor$WS_DIR$\plan_manage_main\src\app\debug.c000000187187TextEditor$WS_DIR$\plan_manage_main\src\app\include\isr.h000000577577TextEditor$WS_DIR$\plan_manage_main\src\app\plan_handle.c00000014781478TextEditor$WS_DIR$\plan_manage_main\src\app\tft.c0000011133319433194TextEditor$WS_DIR$\plan_manage_main\src\app\knob.c000005912311231TextEditor$WS_DIR$\plan_manage_main\src\app\key.c000006437437TextEditor$WS_DIR$\plan_manage_main\src\app\orient.c000005615501550TextEditor$WS_DIR$\plan_manage_main\src\app\output.c00000000TextEditor$WS_DIR$\plan_manage_main\src\app\pm_flash.c0000013312641264TextEditor$WS_DIR$\plan_manage_main\src\app\simulat_timer.c0000012326342634TextEditor$WS_DIR$\plan_manage_main\src\app\include\pm_flash_cfg.h000004128742874TextEditor$WS_DIR$\plan_manage_main\src\app\include\pm_flash.h000000121121TextEditor$WS_DIR$\plan_manage_main\src\app\include\plan_handle.h000000211211TextEditor$WS_DIR$\plan_manage_main\src\app\include\output.h00000000TextEditor$WS_DIR$\plan_manage_main\src\app\include\knob.h000000130130TextEditor$WS_DIR$\plan_manage_main\src\app\include\debug.h0000015441441TextEditor$WS_DIR$\plan_manage_main\src\app\include\config.h0000045951951TextEditor$WS_DIR$\plan_manage_main\src\app\include\key.h000002305305TextEditor$WS_DIR$\plan_manage_main\src\app\include\pm_init.h000000179179TextEditor$WS_DIR$\plan_manage_main\src\app\include\tft.h000000437437TextEditor$WS_DIR$\plan_manage_main\src\app\include\tft_plan_internal.h000002711341134TextEditor$WS_DIR$\plan_manage_main\src\app\include\water.h000000232232TextEditor$WS_DIR$\plan_manage_main\src\app\main.c000007025562556TextEditor$WS_DIR$\plan_manage_main\src\app\include\pm_time.h00000013813852TextEditor$WS_DIR$\plan_manage_main\src\app\include\simulat_timer.h0000001921920100000010000001 + + + + + + + iaridepm.enu1-2-2517330-2-22332617881835813254797714876-2-21641305-2-213071661003070228650155794282369 + + + + diff --git a/settings/plan_manage.wspos b/settings/plan_manage.wspos index d274c93..948abcb 100644 --- a/settings/plan_manage.wspos +++ b/settings/plan_manage.wspos @@ -1,2 +1,2 @@ -[MainWindow] -WindowPlacement=_ 129 165 1154 691 3 +[MainWindow] +WindowPlacement=_ 139 121 1164 647 3