⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.p1

📁 PSOC 电动自行车代码 器件采用CYPRESS新电动自行车器件CY8C245
💻 P1
📖 第 1 页 / 共 5 页
字号:

[; ;main.c: 332: }

[; ;main.c: 333: }

[e $U 85  ]
"334
[e :U 70 ]
[; ;main.c: 334: else

[; ;main.c: 335: st->msg.st0&=~0x10;

"335
[e =& . . *U _st 0 0 -> ~ -> 16 `i `uc ]
[e :U 85 ]
"336
[; ;main.c: 336: }

[e :UE 69 ]
}
"337
[v _spcmdindx `Cuc -> 47 `i e ]
[i _spcmdindx
:U ..
-> -> 8 `i `uc
-> -> 8 `i `uc
-> -> 12 `i `uc
-> -> 16 `i `uc
-> -> 20 `i `uc
-> -> 24 `i `uc
-> -> 28 `i `uc
-> -> 32 `i `uc
-> -> 36 `i `uc
-> -> 40 `i `uc
-> -> 44 `i `uc
-> -> 48 `i `uc
-> -> 52 `i `uc
-> -> 56 `i `uc
-> -> 60 `i `uc
-> -> 65 `i `uc
-> -> 70 `i `uc
-> -> 75 `i `uc
-> -> 83 `i `uc
-> -> 90 `i `uc
-> -> 97 `i `uc
-> -> 104 `i `uc
-> -> 112 `i `uc
-> -> 120 `i `uc
-> -> 128 `i `uc
-> -> 136 `i `uc
-> -> 144 `i `uc
-> -> 152 `i `uc
-> -> 160 `i `uc
-> -> 168 `i `uc
-> -> 176 `i `uc
-> -> 184 `i `uc
-> -> 192 `i `uc
-> -> 199 `i `uc
-> -> 205 `i `uc
-> -> 211 `i `uc
-> -> 217 `i `uc
-> -> 222 `i `uc
-> -> 226 `i `uc
-> -> 230 `i `uc
-> -> 234 `i `uc
-> -> 240 `i `uc
-> -> 245 `i `uc
-> -> 250 `i `uc
-> -> 255 `i `uc
-> -> 255 `i `uc
-> -> 255 `i `uc
..
][; ;main.c: 337: const unsigned char spcmdindx[47]={ 0x08 , 0x08 , 0x0c , 0x10 , 0x14 , 0x18 , 0x1C , 0x20 , 0x24 , 0x28 , 0x2C , 0x30 , 0x34 , 0x38 , 0x3C , 0x41 , 0x46 , 0x4B , 0x53 , 0x5A , 0x61 , 0x68 , 0x70 , 0x78 , 0x80 , 0x88 , 0x90 , 0x98 , 0xA0 , 0xA8 , 0xB0
"346
[v _process_speed_command `(v 1 ef3`*S3`*S5`*S1 ]
{
[; ;main.c: 345: void process_speed_command(SYSSTAT *st,PROC_PROCESS *ppc,ADC *adres)

[; ;main.c: 346: {

[e :U _process_speed_command ]
[v _st `*S3 1 r1 ]
[v _ppc `*S5 1 r2 ]
[v _adres `*S1 1 r3 ]
[f ]
"347
[v _Vts `uc 1 a ]
[v _indx `uc 1 a ]
[v _spcmd `uc 1 a ]
[; ;main.c: 347: unsigned char Vts,indx,spcmd;

[; ;main.c: 348: if(st->msg.st1&4)

"348
[e $ ! != & -> . . *U _st 0 1 `i -> 4 `i -> 0 `i 87  ]
[; ;main.c: 349: {

[; ;main.c: 350: st->msg.st0&=~0x10;

"350
[e =& . . *U _st 0 0 -> ~ -> 16 `i `uc ]
[; ;main.c: 351: st->msg.st1&=~1;

"351
[e =& . . *U _st 0 1 -> ~ -> 1 `i `uc ]
[; ;main.c: 352: ppc->msg.speed_command=0;

"352
[e = . . *U _ppc 0 6 -> -> 0 `i `uc ]
"353
[; ;main.c: 353: }

[e $U 88  ]
"354
[e :U 87 ]
[; ;main.c: 354: else

[; ;main.c: 355: {

[; ;main.c: 356: if(!(st->msg.st0&0x40))

"356
[e $ ! ! != & -> . . *U _st 0 0 `i -> 64 `i -> 0 `i 89  ]
[; ;main.c: 357: {

[; ;main.c: 358: if(!(st->msg.st0&0x10))

"358
[e $ ! ! != & -> . . *U _st 0 0 `i -> 16 `i -> 0 `i 90  ]
[; ;main.c: 359: {

[; ;main.c: 360: Vts=adres->msg.ts_voltage;

"360
[e = _Vts . . *U _adres 0 3 ]
[; ;main.c: 361: if((Vts>=0x3b)&&(Vts<0xe0))

"361
[e $ ! && >= -> _Vts `i -> 59 `i < -> _Vts `i -> 224 `i 91  ]
[; ;main.c: 362: {

[; ;main.c: 363: if(Vts>=0x95) spcmd=0xff;

"363
[e $ ! >= -> _Vts `i -> 149 `i 92  ]
[e = _spcmd -> -> 255 `i `uc ]
[e $U 93  ]
"364
[e :U 92 ]
[; ;main.c: 364: else

[; ;main.c: 365: {

[; ;main.c: 366: indx=(Vts-0x3b)/2;

"366
[e = _indx -> / - -> _Vts `i -> 59 `i -> 2 `i `uc ]
[; ;main.c: 367: spcmd=spcmdindx[indx];

"367
[e = _spcmd *U + &U _spcmdindx * -> _indx `ux -> -> # `Cuc `ui `ux ]
"369
[e :U 93 ]
[; ;main.c: 369: }

[; ;main.c: 370: if(st->msg.st1&0x40)

"370
[e $ ! != & -> . . *U _st 0 1 `i -> 64 `i -> 0 `i 94  ]
[; ;main.c: 371: { st->msg.st1&=~2;

"371
[e =& . . *U _st 0 1 -> ~ -> 2 `i `uc ]
[; ;main.c: 372: if(!(st->msg.st2&8))

"372
[e $ ! ! != & -> . . *U _st 0 2 `i -> 8 `i -> 0 `i 95  ]
[; ;main.c: 373: {

[; ;main.c: 374: check_mosfet(&sysstat,&proc_process,&adc,1);

"374
[e ( _check_mosfet (4
 , , , &U _sysstat &U _proc_process &U _adc -> -> 1 `i `uc ]
"375
[e :U 95 ]
"376
[e :U 94 ]
[; ;main.c: 375: }

[; ;main.c: 376: }

[; ;main.c: 377: st->msg.st1&=~0x40;

"377
[e =& . . *U _st 0 1 -> ~ -> 64 `i `uc ]
[; ;main.c: 378: if(st->msg.st1&0x20)

"378
[e $ ! != & -> . . *U _st 0 1 `i -> 32 `i -> 0 `i 96  ]
[; ;main.c: 379: {

[; ;main.c: 380: ppc->msg.speed_command=0;

"380
[e = . . *U _ppc 0 6 -> -> 0 `i `uc ]
[; ;main.c: 381: st->msg.st1&=~1;

"381
[e =& . . *U _st 0 1 -> ~ -> 1 `i `uc ]
"382
[; ;main.c: 382: }

[e $U 97  ]
"383
[e :U 96 ]
[; ;main.c: 383: else

[; ;main.c: 384: {

[; ;main.c: 385: ppc->msg.speed_command=spcmd;

"385
[e = . . *U _ppc 0 6 _spcmd ]
[; ;main.c: 387: st->msg.st1|=1;

"387
[e =| . . *U _st 0 1 -> -> 1 `i `uc ]
"388
[e :U 97 ]
"389
[; ;main.c: 388: }

[; ;main.c: 389: }

[e $U 98  ]
"390
[e :U 91 ]
[; ;main.c: 390: else

[; ;main.c: 391: {

[; ;main.c: 392: st->msg.st0&=~0x10;

"392
[e =& . . *U _st 0 0 -> ~ -> 16 `i `uc ]
[; ;main.c: 393: st->msg.st1|=0x40;

"393
[e =| . . *U _st 0 1 -> -> 64 `i `uc ]
[; ;main.c: 394: st->msg.st1&=~1;

"394
[e =& . . *U _st 0 1 -> ~ -> 1 `i `uc ]
[; ;main.c: 395: ppc->msg.speed_command=0;

"395
[e = . . *U _ppc 0 6 -> -> 0 `i `uc ]
[; ;main.c: 396: st->msg.st2&=~4;

"396
[e =& . . *U _st 0 2 -> ~ -> 4 `i `uc ]
[; ;main.c: 397: ppc->msg.block_run_timer=0;

"397
[e = . . *U _ppc 0 22 -> -> 0 `i `uc ]
[; ;main.c: 398: st->msg.st2&=~2;

"398
[e =& . . *U _st 0 2 -> ~ -> 2 `i `uc ]
"399
[e :U 98 ]
"400
[e :U 90 ]
"401
[; ;main.c: 399: }

[; ;main.c: 400: }

[; ;main.c: 401: }

[e $U 99  ]
"402
[e :U 89 ]
[; ;main.c: 402: else

[; ;main.c: 403: {

[; ;main.c: 404: st->msg.st0&=~0x10;

"404
[e =& . . *U _st 0 0 -> ~ -> 16 `i `uc ]
[; ;main.c: 405: st->msg.st1|=0x40;

"405
[e =| . . *U _st 0 1 -> -> 64 `i `uc ]
[; ;main.c: 406: st->msg.st1&=~1;

"406
[e =& . . *U _st 0 1 -> ~ -> 1 `i `uc ]
[; ;main.c: 407: ppc->msg.speed_command=0;

"407
[e = . . *U _ppc 0 6 -> -> 0 `i `uc ]
[; ;main.c: 408: st->msg.st2&=~4;

"408
[e =& . . *U _st 0 2 -> ~ -> 4 `i `uc ]
[; ;main.c: 409: ppc->msg.block_run_timer=0;

"409
[e = . . *U _ppc 0 22 -> -> 0 `i `uc ]
[; ;main.c: 410: st->msg.st2&=~2;

"410
[e =& . . *U _st 0 2 -> ~ -> 2 `i `uc ]
"412
[e :U 99 ]
"413
[e :U 88 ]
"415
[; ;main.c: 412: }

[; ;main.c: 413: }

[; ;main.c: 415: }

[e :UE 86 ]
}
"418
[v _battery_voltage_restore `(v 1 ef2`*S9`*S3 ]
{
[; ;main.c: 417: void battery_voltage_restore(BATVCHK *bv,SYSSTAT *st)

[; ;main.c: 418: {

[e :U _battery_voltage_restore ]
[v _bv `*S9 1 r1 ]
[v _st `*S3 1 r2 ]
[f ]
[; ;main.c: 419: bv->msg.FUL_BATTERY_CHK_ONTIMER++;

"419
[e ++ . . *U _bv 0 1 -> -> 1 `i `uc ]
[; ;main.c: 420: if(bv->msg.FUL_BATTERY_CHK_ONTIMER>0X3D)

"420
[e $ ! > -> . . *U _bv 0 1 `i -> 61 `i 101  ]
[; ;main.c: 421: {

[; ;main.c: 422: bv->msg.FUL_BATTERY_CHK_ONTIMER--;

"422
[e -- . . *U _bv 0 1 -> -> 1 `i `uc ]
[; ;main.c: 423: bv->msg.LOW_BATTERY_CHK_ONTIMER=0;

"423
[e = . . *U _bv 0 2 -> -> 0 `i `uc ]
[; ;main.c: 424: st->msg.st1&=~4;

"424
[e =& . . *U _st 0 1 -> ~ -> 4 `i `uc ]
"425
[e :U 101 ]
"426
[; ;main.c: 425: }

[; ;main.c: 426: }

[e :UE 100 ]
}
"428
[v _battery_voltage_detect `(v 1 ef4`*S1`*S9`*S3`*S5 ]
{
[; ;main.c: 427: void battery_voltage_detect(ADC *adr,BATVCHK *bv,SYSSTAT *st,PROC_PROCESS *ppc)

[; ;main.c: 428: {

[e :U _battery_voltage_detect ]
[v _adr `*S1 1 r1 ]
[v _bv `*S9 1 r2 ]
[v _st `*S3 1 r3 ]
[v _ppc `*S5 1 r4 ]
[f ]
[; ;main.c: 429: if(adr->msg.battery_voltage>0x88)

"429
[e $ ! > -> . . *U _adr 0 2 `i -> 136 `i 103  ]
[; ;main.c: 430: {

[; ;main.c: 431: bv->msg.IERR_BY_BATDOWN=0;

"431
[e = . . *U _bv 0 0 -> -> 0 `i `uc ]
[; ;main.c: 432: battery_voltage_restore(bv,st);

"432
[e ( _battery_voltage_restore (2
 , _bv _st ]
"433
[; ;main.c: 433: }

[e $U 104  ]
"434
[e :U 103 ]
[; ;main.c: 434: else

[; ;main.c: 435: {

[; ;main.c: 436: bv->msg.IERR_BY_BATDOWN=0x88-adr->msg.battery_voltage;

"436
[e = . . *U _bv 0 0 -> - -> 136 `i -> . . *U _adr 0 2 `i `uc ]
[; ;main.c: 437: if(bv->msg.IERR_BY_BATDOWN>0x15){

"437
[e $ ! > -> . . *U _bv 0 0 `i -> 21 `i 105  ]
[; ;main.c: 438: bv->msg.IERR_BY_BATDOWN=0X1E;

"438
[e = . . *U _bv 0 0 -> -> 30 `i `uc ]
"439
[; ;main.c: 439: }else

[e $U 106  ]
[e :U 105 ]
[; ;main.c: 440: bv->msg.IERR_BY_BATDOWN=(bv->msg.IERR_BY_BATDOWN>>1)+bv->msg.IERR_BY_BATDOWN;

"440
[e = . . *U _bv 0 0 -> + >> -> . . *U _bv 0 0 `i -> 1 `i -> . . *U _bv 0 0 `i `uc ]
[e :U 106 ]
[; ;main.c: 441: if(adr->msg.battery_voltage>(0x88-0x10))

"441
[e $ ! > -> . . *U _adr 0 2 `i - -> 136 `i -> 16 `i 107  ]
[; ;main.c: 442: {

[; ;main.c: 443: if(st->msg.st1&4)

"443
[e $ ! != & -> . . *U _st 0 1 `i -> 4 `i -> 0 `i 108  ]
[; ;main.c: 444: {

[; ;main.c: 445: if(adr->msg.battery_voltage>((0x88-0x10)+3))

"445
[e $ ! > -> . . *U _adr 0 2 `i + - -> 136 `i -> 16 `i -> 3 `i 109  ]
[; ;main.c: 446: battery_voltage_restore(bv,st);

"446
[e ( _battery_voltage_restore (2
 , _bv _st ]
[e :U 109 ]
"447
[e :U 108 ]
"448
[; ;main.c: 447: }

[; ;main.c: 448: }

[e $U 110  ]
"449
[e :U 107 ]
[; ;main.c: 449: else{

[; ;main.c: 450: bv->msg.LOW_BATTERY_CHK_ONTIMER++;

"450
[e ++ . . *U _bv 0 2 -> -> 1 `i `uc ]
[; ;main.c: 451: if(ppc->msg.OV_MINRATEDI_ERR>0x0b){

"451
[e $ ! > -> . . *U _ppc 0 16 `i -> 11 `i 111  ]
[; ;main.c: 452: if(bv->msg.LOW_BATTERY_CHK_ONTIMER>=0x30){

"452
[e $ ! >= -> . . *U _bv 0 2 `i -> 48 `i 112  ]
[; ;main.c: 453: bv->msg.FUL_BATTERY_CHK_ONTIMER=0;

"453
[e = . . *U _bv 0 1 -> -> 0 `i `uc ]
[; ;main.c: 454: bv->msg.LOW_BATTERY_CHK_ONTIMER=0;

"454
[e = . . *U _bv 0 2 -> -> 0 `i `uc ]
[; ;main.c: 455: st->msg.st1|=4;

"455
[e =| . . *U _st 0 1 -> -> 4 `i `uc ]
"456
[e :U 112 ]
"457
[; ;main.c: 456: }

[; ;main.c: 457: }else if(bv->msg.LOW_BATTERY_CHK_ONTIMER>=0X0F){

[e $U 113  ]
[e :U 111 ]
[e $ ! >= -> . . *U _bv 0 2 `i -> 15 `i 114  ]
[; ;main.c: 458: bv->msg.FUL_BATTERY_CHK_ONTIMER=0;

"458
[e = . . *U _bv 0 1 -> -> 0 `i `uc ]
[; ;main.c: 459: bv->msg.LOW_BATTERY_CHK_ONTIMER=0;

"459
[e = . . *U _bv 0 2 -> -> 0 `i `uc ]
[; ;main.c: 460: st->msg.st1|=4;

"460
[e =| . . *U _st 0 1 -> -> 4 `i `uc ]
"461
[e :U 114 ]
"462
[e :U 113 ]
[e :U 110 ]
"463
[e :U 104 ]
"464
[; ;main.c: 461: }

[; ;main.c: 462: }

[; ;main.c: 463: }

[; ;main.c: 464: }

[e :UE 102 ]
}
"467
[v _block_run_process `(uc 1 ef2`*S3`*S5 ]
{
[; ;main.c: 466: unsigned char block_run_process(SYSSTAT *st,PROC_PROCESS *ppc)

[; ;main.c: 467: {

[e :U _block_run_process ]
[v _st `*S3 1 r1 ]
[v _ppc `*S5 1 r2 ]
[f ]
[; ;main.c: 468: ppc->msg.block_run_timer++;

"468
[e ++ . . *U _ppc 0 22 -> -> 1 `i `uc ]
[; ;main.c: 469: if(st->msg.st1&1)

"469
[e $ ! != & -> . . *U _st 0 1 `i -> 1 `i -> 0 `i 116  ]
[; ;main.c: 470: {

[; ;main.c: 471: if(!(st->msg.st0&0x20))

"471
[e $ ! ! != & -> . . *U _st 0 0 `i -> 32 `i -> 0 `i 117  ]
[; ;main.c: 472: {

[; ;main.c: 474: if(ppc->msg.OV_MINRATEDI_ERR>8)

"474
[e $ ! > -> . . *U _ppc 0 16 `i -> 8 `i 118  ]
[; ;main.c: 476: {

[; ;main.c: 478: if(ppc->msg.position_change_cnt<=0x04)

"478
[e $ ! <= . . *U _ppc 0 31 -> -> 4 `i `ui 119  ]
[; ;main.c: 479: {

[; ;main.c: 481: ppc->msg.pos_alt_acccounter+=ppc->msg.position_change_cnt;

"481
[e =+ . . *U _ppc 0 20 -> . . *U _ppc 0 31 `uc ]
[; ;main.c: 482: ppc->msg.position_change_cnt=0;

"482
[e = . . *U _ppc 0 31 -> -> 0 `i `ui ]
[; ;main.c: 483: if(ppc->msg.pos_alt_acccounter<0X14)

"483
[e $ ! < -> . . *U _ppc 0 20 `i -> 20 `i 120  ]
[; ;main.c: 484: {

[; ;main.c: 485: if(ppc->msg.block_run_timer>0x04){

"485
[e $ ! > -> . . *U _ppc 0 22 `i -> 4 `i 121  ]
[; ;main.c: 486: st->msg.st2|=4;

"486
[e =| . . *U _st 0 2 -> -> 4 `i `uc ]
[; ;main.c: 487: st->msg.st0&=~0x10;

"487
[e =& . . *U _st 0 0 -> ~ -> 16 `i `uc ]
"488
[; ;main.c: 488: }else if(ppc->msg.block_run_timer>0x02)

[e $U 122  ]
[e :U 121 ]
[e $ ! > -> . . *U _ppc 0 22 `i -> 2 `i 123  ]
[; ;main.c: 489: st->msg.st2|=2;

"489
[e =| . . *U _st 0 2 -> -> 2 `i `uc ]
[e :U 123 ]
"490
[e :U 122 ]
[; ;main.c: 490: return(0);

[e ) -> -> 0 `i `uc ]
[e $UE 115  ]
"491
[e :U 120 ]
"494
[e :U 119 ]
"497
[e :U 118 ]
"500
[e :U 117 ]
"501
[e :U 116 ]
[; ;main.c: 491: }

[; ;main.c: 494: }

[; ;main.c: 497: }

[; ;main.c: 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -