搜索
bottom↓
回复: 3

错误 C187 这不是一个左值。没有发现错在哪里啊?

[复制链接]

出0入0汤圆

发表于 2013-11-23 10:42:58 | 显示全部楼层 |阅读模式
#include <REGX52.H>
#define key_state_0        0 //初始
#define key_state_1        1 //按下
#define key_state_2        2 //释放
sbit key_1=P3^4;
sbit key_2=P3^5;
sbit key_3=P3^6;
sbit key_4=P3^7;
void read_key( )
{
  unsigned char aa,bb,cc,dd,s2a,fun,mfen,mshi;
  static unsigned char key_state=0;
  switch (key_state)
{
  case key_state_0:  // 按键初始态
  if (!key_1||!key_2||!key_3||!key_4)
  key_state=key_state_1;// 键被按下,状态转换到键确认态
  break;
  case key_state_1: // 按键确认态
  if(!key_1||!key_2||!key_3||!key_4)
{
    if(!key_1)//功能键.0:时钟运行1:时钟调整
       fun++;
    if(!key_2)//时分切换键.0:分钟调整1:小时调整
{
     s2a++;
     if(s2a==2)
     s2a=0;
}
    if(!key_3)//向上调整键
{
    if((fun==1)&&(s2a==0))//时钟分加
    {
     Write1302(WRITE_PROTECT,0X00);//关写保护
     mfen++;
     if(mfen==60)
        mfen=0;
            }
     if((fun==1)&&(s2a==1))//时钟时加
     {
      Write1302(WRITE_PROTECT,0X00);//关写保护
      mshi++;
      if(mshi==24)
      mshi=0;
                 }
                                  }
       if(!key_4)//向下调整键
{
      if((fun==1)&&(s2a==0))//时钟分减
{
     Write1302(WRITE_PROTECT,0X00);
     mfen--;
     if(mfen==0)
     mfen=60--;
                  }
     if((fun==1)&&(s2a==1))//时钟时减
{
      Write1302(WRITE_PROTECT,0X00);
      mshi--;
      if(mshi==0)
      mshi=24--;
              }
                                    }
     Write1302(WRITE_PROTECT,0X00);//关写保护
     aa=mfen/10;//进制转换
     bb=mfen%10;
     aa<<=4;
     mfen=aa+bb;
     Write1302(WRITE_MINUTE,mfen);//写入分数据
     cc=mshi/10;
     dd=mshi%10;
     cc<<=4;
     mshi=cc+dd;     
     Write1302(WRITE_HOUR,mshi);//写入时数据
     Write1302(WRITE_PROTECT,0x80);//允许写保护                                                                  
     key_state=key_state_2;// 状态转换到键释放态 ;       
                         }
     else
     key_state=key_state_0;// 按键已抬起,转换到按键初始态
     break;
     case key_state_2:
     if(key_1&&key_2&&key_3&&key_4)
     key_state=key_state_0;//按键已释放,转换到按键初始态
     break;
}
}
提示mfen=60--和mshi=24--那两行

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入93汤圆

发表于 2013-11-23 10:52:13 | 显示全部楼层
坐直是说的60和24

出0入0汤圆

发表于 2013-11-25 21:12:47 来自手机 | 显示全部楼层
还能这样用啊! 60--?

出70入0汤圆

发表于 2013-11-29 10:09:03 | 显示全部楼层
楼主的C语言怎么学的?!好好补补吧!c语言功底必须要扎实!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 14:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表