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

📄 mf.lst

📁 IO口模仿串口,,,,c语言编程.........
💻 LST
字号:
C51 COMPILER V7.02b   MF                                                                   03/08/2009 15:39:43 PAGE 1   


C51 COMPILER V7.02b, COMPILATION OF MODULE MF
OBJECT MODULE PLACED IN mf.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE mf.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          //用31来模拟串口,向PC发送数据
   2          //波特率4800 bit/s 每一位208us
   3          #include<reg51.h>
   4          #define uchar unsigned char
   5          
   6          uchar c1;//分别用来存储K1-K4
   7          sbit led=P1^0;
   8          
   9          sbit k1=P2^4;//按钮K1
  10          sbit k2=P2^5;//按钮K2
  11          
  12          sbit tx=P3^1;//模拟串口的数据发送引脚
  13          
  14          void yanshi()//208us延时子函数
  15            {
  16   1        uchar x=29;//207us
  17   1        while(x--);
  18   1        }
  19          
  20          void longyanshi(uchar x)//长延时
  21          {
  22   1        uchar y;
  23   1          for(;x>0;x--)
  24   1           for(y=100;y>0;y--);
  25   1      
  26   1      }
  27          
  28          void fasong(uchar d)//发送数据子函数
  29          {
  30   1       uchar i,temp;
  31   1      
  32   1      
  33   1       tx=0;//起始信号开始
  34   1       yanshi();//起始信号结束
  35   1      
  36   1        for(i=0;i<8;i++)//发送8位数据
  37   1        {
  38   2          temp=d&0x01;
  39   2          if(temp==1)
  40   2          {
  41   3            tx=1;
  42   3             }
  43   2           else//否则要发送的位是0
  44   2             {
  45   3               tx=0;
  46   3           }
  47   2          yanshi();
  48   2      
  49   2          d=d>>1;//移除所发送的位
  50   2         }
  51   1      
  52   1              tx=1;//停止信号开始
  53   1          yanshi();//停止信号结束
  54   1      
  55   1      }
C51 COMPILER V7.02b   MF                                                                   03/08/2009 15:39:43 PAGE 2   

  56          
  57          void key()//按钮
  58          {
  59   1        if(k1!=1)//k1按下了
  60   1        {
  61   2          longyanshi(200);
  62   2          if(k1==0)//再次确认k1的状态
  63   2           {
  64   3            fasong('A');//发送A到PC
  65   3            c1++;
  66   3            if(c1==10)
  67   3              {
  68   4              c1=0;
  69   4              }
  70   3            
  71   3             while(k1==0);//等待放手
  72   3               
  73   3             longyanshi(200);//放手去抖动
  74   3           }
  75   2         }
  76   1      }
  77          void key()//
  78          {
  79   1         if(k2==0)//
  80   1         longyanshi(200);
  81   1         if(k2==0)
  82   1         fasong('B');
  83   1         {
  84   2         c1++;
  85   2            
  86   2         }
  87   1      
  88   1      }
*** ERROR C237 IN LINE 88 OF MF.C: 'key': function already has a body
  89          {
*** ERROR C141 IN LINE 89 OF MF.C: syntax error near '{'
  90          
  91           led=0;
*** ERROR C231 IN LINE 91 OF MF.C: 'led': redefinition
*** ERROR C231 IN LINE 91 OF MF.C: 'led': redefinition
  92           while(c1<2)
*** ERROR C141 IN LINE 92 OF MF.C: syntax error near 'while'
*** ERROR C141 IN LINE 92 OF MF.C: syntax error near '<', expected ')'
  93            {
  94             if(k1==0)
*** ERROR C141 IN LINE 94 OF MF.C: syntax error near '==', expected ')'
  95              {
  96              c1++;
*** ERROR C129 IN LINE 96 OF MF.C: missing ';' before '++'
  97              }
  98            }
  99             led=1;
 100          
 101          while(1)
 102          
 103                 {
 104                  key()2;
 105                  
 106                  }
 107          }  
 108          
 109           
C51 COMPILER V7.02b   MF                                                                   03/08/2009 15:39:43 PAGE 3   

 110          

C51 COMPILATION COMPLETE.  0 WARNING(S),  8 ERROR(S)

⌨️ 快捷键说明

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