- void main()
- {
- u16 SqureWaveCkh = 0;
- u16 SqureWaveOut = 0;
- while(1)
- {
- if(Flag1ms)//1ms标志位
- {
- Flag1ms=0;
- if(P31 != P31_Old)//电平变化
- {
- SqureWaveCkh = 0;
- SqureWaveEn = 1;
- }else{
- if(SqureWaveCkh<500)
- {
- SqureWaveCkh++;
- if(SqureWaveCkh==500)
- SqureWaveEn = 0;
- }
- }
- P31_Old = P31;
- if(SqureWaveEn)
- {
- if(P30)
- {
- if(++SqureWaveOut>=2500)
- {
- SqureWaveOut = 0;
- P55 = !P55;
- }
- }else{
- if(++SqureWaveOut>=5000)
- {
- SqureWaveOut = 0;
- P55 = !P55;
- }
- }
- }else{
- P55 = !P31;
- SqureWaveOut = 0;
- }
- }
- }
- }
复制代码
|