; Generated: Tue Nov 23 21:58:48 2004 ; Using: ./throttle.pl ; Version: 1.9 ; ; **** DO NOT EDIT THIS FILE BY HAND **** ; **** THIS IS COMPUTER GENERATED CODE **** ; ; mapthrottle = 3 ; roundscale = 1 ; ; throttle_calidle = 3 ; ; min_motor_off = 128 ; throttle_steps = 64 ; minfrequency = 0 ; ; instruction_clock = 1000000 ; timer0_prescale = 2 ; max_delay = 512 ; ; int_in_ohead = 8 ; int_out_ohead = 7 ; int_tm0_ohead = 2 ; int_std_pre = 5 ; int_std_post = 3 ; int_spc_pre = 2 ; int_spc_mid = 2 ; int_spc_post = 5 ; min_int_std = 25 ; ; Trottle Mapped ---- Target PWM ----- ---- Actual PWM ---- ERROR ; #:%age %age on:off PWM Details on:off PWM Details ; 0:0.000 -> 0.000B 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ; 1:0.016 -> 0.000 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ; 2:0.031 -> 0.000 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ;> 3:0.047 -> 0.000 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ; 4:0.062 -> 0.000 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ; 5:0.078 -> 0.000 0:512 0.000 @ 1953Hz 0:513 0.000 @ 1949Hz ( 0.00%) ; 6:0.094 -> 0.131 19:128 0.129 @ 6802Hz 19:129 0.128 @ 6756Hz (-2.23%) ; 7:0.109 -> 0.186 29:128 0.185 @ 6369Hz 30:128 0.190 @ 6329Hz ( 2.25%) ; 8:0.125 -> 0.227 37:128 0.224 @ 6060Hz 38:128 0.229 @ 6024Hz ( 0.65%) ; 9:0.141 -> 0.263 45:128 0.260 @ 5780Hz 46:128 0.264 @ 5747Hz ( 0.67%) ; 10:0.156 -> 0.294 53:128 0.293 @ 5524Hz 54:128 0.297 @ 5494Hz ( 1.05%) ; 11:0.172 -> 0.322 60:128 0.319 @ 5319Hz 60:128 0.319 @ 5319Hz (-0.77%) ; 12:0.188 -> 0.347 68:128 0.347 @ 5102Hz 68:128 0.347 @ 5102Hz (-0.13%) ; 13:0.203 -> 0.371 75:128 0.369 @ 4926Hz 76:128 0.373 @ 4901Hz ( 0.31%) ; 14:0.219 -> 0.394 83:128 0.393 @ 4739Hz 84:128 0.396 @ 4716Hz ( 0.59%) ; 15:0.234 -> 0.415 90:128 0.413 @ 4587Hz 90:128 0.413 @ 4587Hz (-0.57%) ; 16:0.250 -> 0.435 98:128 0.434 @ 4424Hz 98:128 0.434 @ 4424Hz (-0.43%) ; 17:0.266 -> 0.455 106:128 0.453 @ 4273Hz 106:128 0.453 @ 4273Hz (-0.41%) ; 18:0.281 -> 0.473 115:128 0.473 @ 4115Hz 116:128 0.475 @ 4098Hz ( 0.42%) ; 19:0.297 -> 0.491 123:128 0.490 @ 3984Hz 124:128 0.492 @ 3968Hz ( 0.15%) ; 20:0.312 -> 0.509 132:128 0.508 @ 3846Hz 132:128 0.508 @ 3846Hz (-0.17%) ; 21:0.328 -> 0.525 141:128 0.524 @ 3717Hz 142:128 0.526 @ 3703Hz ( 0.13%) ; 22:0.344 -> 0.541 151:128 0.541 @ 3584Hz 152:128 0.543 @ 3571Hz ( 0.27%) ; 23:0.359 -> 0.557 160:128 0.556 @ 3472Hz 160:128 0.556 @ 3472Hz (-0.27%) ; 24:0.375 -> 0.572 171:128 0.572 @ 3344Hz 172:128 0.573 @ 3333Hz ( 0.17%) ; 25:0.391 -> 0.587 182:128 0.587 @ 3225Hz 182:128 0.587 @ 3225Hz (-0.02%) ; 26:0.406 -> 0.602 193:128 0.601 @ 3115Hz 194:128 0.602 @ 3105Hz ( 0.13%) ; 27:0.422 -> 0.616 205:128 0.616 @ 3003Hz 206:128 0.617 @ 2994Hz ( 0.14%) ; 28:0.438 -> 0.630 217:128 0.629 @ 2898Hz 218:128 0.630 @ 2890Hz ( 0.05%) ; 29:0.453 -> 0.643 230:128 0.642 @ 2793Hz 230:128 0.642 @ 2793Hz (-0.13%) ; 30:0.469 -> 0.657 244:128 0.656 @ 2688Hz 244:128 0.656 @ 2688Hz (-0.09%) ; 31:0.484 -> 0.670 259:128 0.669 @ 2583Hz 260:128 0.670 @ 2577Hz ( 0.08%) ; 32:0.500 -> 0.682 274:128 0.682 @ 2487Hz 274:128 0.682 @ 2487Hz (-0.10%) ; 33:0.516 -> 0.695 291:128 0.695 @ 2386Hz 292:128 0.695 @ 2380Hz ( 0.06%) ; 34:0.531 -> 0.707 309:128 0.707 @ 2288Hz 310:128 0.708 @ 2283Hz ( 0.09%) ; 35:0.547 -> 0.719 327:128 0.719 @ 2197Hz 328:128 0.719 @ 2192Hz ( 0.01%) ; 36:0.562 -> 0.731 347:128 0.731 @ 2105Hz 348:128 0.731 @ 2100Hz ( 0.00%) ; 37:0.578 -> 0.743 369:128 0.742 @ 2012Hz 370:128 0.743 @ 2008Hz ( 0.03%) ; 38:0.594 -> 0.754 392:128 0.754 @ 1923Hz 392:128 0.754 @ 1923Hz (-0.06%) ; 39:0.609 -> 0.766 418:128 0.766 @ 1831Hz 418:128 0.766 @ 1831Hz (-0.01%) ; 40:0.625 -> 0.777 445:128 0.777 @ 1745Hz 446:128 0.777 @ 1742Hz ( 0.02%) ; 41:0.641 -> 0.788 475:128 0.788 @ 1658Hz 476:128 0.788 @ 1655Hz ( 0.03%) ; 42:0.656 -> 0.799 507:128 0.798 @ 1574Hz 508:128 0.799 @ 1572Hz ( 0.00%) ; 43:0.672 -> 0.809 512:120 0.810 @ 1582Hz 512:120 0.810 @ 1582Hz ( 0.09%) ; 44:0.688 -> 0.820 512:112 0.821 @ 1602Hz 512:112 0.821 @ 1602Hz ( 0.06%) ; 45:0.703 -> 0.830 512:104 0.831 @ 1623Hz 512:104 0.831 @ 1623Hz ( 0.09%) ; 46:0.719 -> 0.841 512: 96 0.842 @ 1644Hz 512: 96 0.842 @ 1644Hz ( 0.16%) ; 47:0.734 -> 0.851 512: 89 0.852 @ 1663Hz 512: 90 0.850 @ 1661Hz (-0.05%) ; 48:0.750 -> 0.861 512: 82 0.862 @ 1683Hz 512: 82 0.862 @ 1683Hz ( 0.11%) ; 49:0.766 -> 0.871 512: 75 0.872 @ 1703Hz 512: 76 0.871 @ 1700Hz (-0.03%) ; 50:0.781 -> 0.881 512: 69 0.881 @ 1721Hz 512: 70 0.880 @ 1718Hz (-0.13%) ; 51:0.797 -> 0.891 512: 62 0.892 @ 1742Hz 512: 62 0.892 @ 1742Hz ( 0.16%) ; 52:0.812 -> 0.900 512: 56 0.901 @ 1760Hz 512: 56 0.901 @ 1760Hz ( 0.14%) ; 53:0.828 -> 0.910 512: 50 0.911 @ 1779Hz 512: 50 0.911 @ 1779Hz ( 0.14%) ; 54:0.844 -> 0.919 512: 45 0.919 @ 1795Hz 512: 46 0.918 @ 1792Hz (-0.17%) ; 55:0.859 -> 0.928 512: 39 0.929 @ 1814Hz 512: 40 0.928 @ 1811Hz (-0.10%) ; 56:0.875 -> 0.938 512: 34 0.938 @ 1831Hz 512: 34 0.938 @ 1831Hz ( 0.00%) ; 57:0.891 -> 0.947 512: 28 0.948 @ 1851Hz 512: 28 0.948 @ 1851Hz ( 0.14%) ; 58:0.906 -> 0.956 512: 23 0.957 @ 1869Hz 513: 23 0.957 @ 1865Hz ( 0.12%) ; 59:0.922 -> 0.965 512: 18 0.966 @ 1886Hz 513: 18 0.966 @ 1883Hz ( 0.12%) ; 60:0.938 -> 0.974 512: 13 0.975 @ 1904Hz 513: 13 0.975 @ 1901Hz ( 0.15%) ; 61:0.953 -> 0.983 512: 9 0.983 @ 1919Hz 513: 9 0.983 @ 1915Hz ( 0.02%) ; 62:0.969 -> 0.991 512: 4 0.992 @ 1937Hz 513: 4 0.992 @ 1934Hz ( 0.09%) ; 63:0.984 -> 1.000 512: 0 1.000 @ 1953Hz 513: 0 1.000 @ 1949Hz ( 0.00%) throttlesteps equ 64 throttlenonidle equ 6 throttlecalidle equ 3 int_0brake movfw pwmOFFio movwf GPIO ; Delay 0 goto rearm_OFFt0 int_0on movfw pwmOFFio movwf GPIO ; Delay 0 goto rearm_OFFt0 int_19on movfw pwmONio movwf GPIO int_on17off ; Delay 17 call emptyreturn call emptyreturn call emptyreturn call emptyreturn nop movfw pwmOFFio movwf GPIO goto rearm_OFFt0 int_0off movfw pwmONio movwf GPIO ; Delay 0 goto rearm_ONt0 int_4off movfw pwmOFFio movwf GPIO int_off2on ; Delay 2 goto $+1 movfw pwmONio movwf GPIO goto rearm_ONt0 int_9off movfw pwmOFFio movwf GPIO int_off7on ; Delay 3 goto $+1 nop int_off4on goto int_off2on int_13off movfw pwmOFFio movwf GPIO int_off11on ; Delay 2 goto $+1 int_off9on goto int_off7on int_18off movfw pwmOFFio movwf GPIO int_off16on ; Delay 3 goto $+1 nop int_off13on goto int_off11on int_23off movfw pwmOFFio movwf GPIO int_off21on ; Delay 3 goto $+1 nop int_off18on goto int_off16on ; Ensure correct alignment of this table for a computed goto if ($ & ~0FFh) != (($+64-1) & ~0FFh) org ($+64) & ~0FFh endif pwmtype_tbl retlw int_0brake - int_refpoint retlw int_0on - int_refpoint retlw int_0on - int_refpoint retlw int_0on - int_refpoint retlw int_0on - int_refpoint retlw int_0on - int_refpoint retlw int_19on - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_std - int_refpoint retlw int_23off - int_refpoint retlw int_18off - int_refpoint retlw int_13off - int_refpoint retlw int_9off - int_refpoint retlw int_4off - int_refpoint retlw int_0off - int_refpoint ; Ensure correct alignment of this table for a computed goto if ($ & ~0FFh) != (($+64-1) & ~0FFh) org ($+64) & ~0FFh endif pwmONt0_tbl retlw -0 retlw -0 retlw -0 retlw -0 retlw -0 retlw -0 retlw -0 retlw -6 retlw -10 retlw -14 retlw -18 retlw -21 retlw -25 retlw -29 retlw -33 retlw -36 retlw -40 retlw -44 retlw -49 retlw -53 retlw -57 retlw -62 retlw -67 retlw -71 retlw -77 retlw -82 retlw -88 retlw -94 retlw -100 retlw -106 retlw -113 retlw -121 retlw -128 retlw -137 retlw -146 retlw -155 retlw -165 retlw -176 retlw -187 retlw -200 retlw -214 retlw -229 retlw -245 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -247 retlw -248 retlw -248 retlw -248 retlw -248 retlw -248 retlw -248 ; Ensure correct alignment of this table for a computed goto if ($ & ~0FFh) != (($+64-1) & ~0FFh) org ($+64) & ~0FFh endif pwmOFFt0_tbl retlw -248 retlw -248 retlw -248 retlw -248 retlw -248 retlw -248 retlw -56 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -55 retlw -51 retlw -47 retlw -43 retlw -39 retlw -36 retlw -32 retlw -29 retlw -26 retlw -22 retlw -19 retlw -16 retlw -14 retlw -11 retlw -8 retlw -5 retlw -0 retlw -0 retlw -0 retlw -0 retlw -0 retlw -0