bloodthrons 2022-08-22 23:59 采纳率: 100%
浏览 229
已结题

error C141: syntax error near 'void', expected '__asm'

img

#include <STC89C5xRC.H>//使用线反转扫描法 检测按键按下 按下后在数码管上显示音调 并调动蜂鸣器发声 

typedef unsigned char u8;
typedef unsigned int u16;

#define GPIO_key P1
#define GPIO_smg P0

sbit buzzer = P2^0;//蜂鸣器

u8 keyvalue;//存键值

u8 code smgduan[16]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E};//显示0-9、A-F。 

u16 code buzzerbeep[16]={100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600};
//用来产生各频率延时信号

void delay(u16 i)        //约10us
{
  while(i--);
}


void keypros()//检测是否有按键按下并输出键值
{
    u8 i;
    GPIO_key=0xF0;   //检测行
    if(GPIO_key!=0xF0)
    {
        delay(1000);
        if(GPIO_key!=0xF0)
        {
            switch(GPIO_key)
            {
                case(0x70):keyvalue=0;break;
                case(0xB0):keyvalue=4;break;
                case(0xD0):keyvalue=8;break;
                case(0xE0):keyvalue=12;break;
                default:break;
            }
        GPIO_key=0x0F;   //检测列
        switch(GPIO_key)
          {
               case(0x07):keyvalue=keyvalue;break;
               case(0x0B):keyvalue=keyvalue+1;break;
               case(0x0D):keyvalue=keyvalue+2;break;
              case(0x0E):keyvalue=keyvalue+3;break;
               default:break;
          }
            while((i<50)&&(GPIO_key!=0x0F))
            {
                i++;
              delay(1000);
            }
        }

}
    
void smgdisplay()//静态数码管显示0~F表示音调高低
{

        GPIO_smg=smgduan[keyvalue];
}    

void BEEP()//蜂鸣器发声
{
    u8 i=50;
  buzzer=1;
    while(i--)
    {
        delay(buzzerbeep[keyvalue]);
        buzzer=~buzzer;
    }
}

void main()
{
  while(1)
    {
        keypros();
        smgdisplay();
        BEEP();
    }
}

img

  • 写回答

2条回答 默认 最新

  • qllaoda 2022-08-23 00:32
    关注

    void smgdisplay()这个函数的前面那个函数,少了一个后花括号
    if(GPIO_key!=0xF0)这句话对应的后花括号漏掉了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月31日
  • 已采纳回答 8月23日
  • 创建了问题 8月22日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测