- /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - // pms150g   ________   _________
 
 - //       5v-|1 vdd   \_/    gnd 8|
 
 - //         -|2 pa7          pa0 7|-
 
 - //         -|3 pa6          pa4 6|-pwm
 
 - //       k1-|4 pa5__________pa3 5|-
 
 - #include        "extern.h"
 
 - k1                bit                pa.5;
 
 - led                bit                pa.4;
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - void        FPPA0 (void)
 
 - {
 
 - .ADJUST_IC        SYSCLK=IHRC/16                //        SYSCLK=IHRC/4//系统时钟1MHZ
 
 - //.ADJUST_IC        SYSCLK=ILRC (IHRC/16), IHRC=16MHz;//, VDD=5V;
 
  
- $                k1                in,ph;                        //输入,上拉电阻
 
 - $                led                out,Low;                //输出,低
 
 - byte        a1                =0;                                //状态机,0停,1全亮,2半亮,3闪
 
 - .delay        500000;
 
 - while (1)
 
 - {
 
 - if(a1 ==0)                                        //停机模式
 
 -         {
 
 -         $                led                out,Low;//输出,低
 
 -         CLKMD                =0xf4;                //系统时钟从ICRC切换ILRC
 
 -         CLKMD.4                =0;                        //IHRC停用
 
 -                 while(1)
 
 -                 {
 
 -                 STOPSYS;                        //进入掉电模式
 
 -                 if(k1 ==0){break;}
 
 -                 }
 
 -         CLKMD                =0b0001_1100;//切换到IHRC/16
 
 -         .delay                100;
 
 -         a1                        =1;                        //切换为开机状态
 
 -         }
 
 - .delay 1000000;
 
  
- if(a1 ==1)                                        //开机模式
 
 -         {
 
 -         $        led                out,high;        //输出,高
 
 -         CLKMD                =0xf4;                //系统时钟从IHCRC切换ILRC
 
 -         CLKMD.4                =0;                        //IHRC停用
 
 -         while(1)
 
 -                 {
 
 -                 STOPSYS;                        //进入掉电模式
 
 -                 if(k1 ==0){break;}
 
 -                 }
 
 -         CLKMD                =0b0001_1100;//切换到IHRC/16
 
 -         .delay                100;
 
 -         a1                        =0;                        //切换为关机状态
 
 -         }
 
  
- .delay 1000000;
 
  
- }
 
 - }
 
  
- /*
 
 - void        Interrupt (void)
 
 - {
 
 -         pushaf;
 
  
-         if (Intrq.T16)
 
 -         {        //        T16 Trig
 
 -                 //        User can add code
 
 -                 Intrq.T16        =        0;
 
 -                 //...
 
 -         }
 
  
-         popaf;
 
 - }
 
  
- */
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
 - /**************************************************/
 
  
 
  |