欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1739|回復: 5
收起左側(cè)

keil的報錯main_plas.c(87): error C141: syntax error near 'P2'

[復制鏈接]
ID:806369 發(fā)表于 2020-7-21 16:34 | 顯示全部樓層 |閱讀模式
附上源程序

  1. #include "reg52.h"
  2. #define KEY P3
  3. #define key_state_0 0
  4. #define key_state_1 1
  5. #define key_state_2 2
  6. char read_KBD(void)
  7. {
  8.   static char key_state=0;
  9. unsigned char key_press,key_return=0;
  10. unsigned char key1,key2;
  11. KEY=0xf0;
  12. key1=KEY&0xf0;
  13. KEY=0x0f;
  14. key2=KEY&0x0f;
  15. key_press=key1|key2;

  16. switch(key_state)
  17. {
  18.    case key_state_0:
  19.    if(key_press!=0xff) key_state=key_state_1;
  20.   break;
  21.   
  22.   case key_state_1:
  23.    if(key_press!=0xff)
  24.    {
  25.      if(key_press==0x7e) key_return = 7;   //S7
  26.       if(key_press==0x7d) key_return = 6;   //S6
  27.      if(key_press==0xde) key_return = 15;  //S15  
  28.      if(key_press==0xdd) key_return = 14;  //S14
  29.    }
  30.    else
  31.     key_state=key_state_0;
  32.    break;
  33.    
  34.   case key_state_2:
  35.    if(key_press==0xff) key_state=key_state_0;
  36.    break;
  37. }
  38. return key_return;
  39. }
  40. typedef unsigned char BYTE;
  41. typedef unsigned int WORD;


  42. #define FOSC 18432000L
  43. #define T1MS (65536-FOSC/12/1000)   //1ms timer calculation method in 12T mode

  44. sbit TEST_LED = P1^0;               //work LED, flash once per second

  45. WORD count;                         //1000 times counter
  46. WORD key_count;

  47. unsigned char code T_display[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
  48. unsigned char code T_COM[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  49. unsigned char key_val;
  50. unsigned char key_table[2];
  51. void tm0_isr() interrupt 1 using 1
  52. {
  53.    static char i;
  54.     TL0 = T1MS;                     //reload timer0 low byte
  55.     TH0 = T1MS >> 8;                //reload timer0 high byte
  56.    if (key_count-- == 0)
  57.   {
  58.     key_count = 10;                //10ms
  59.    key_val=read_KBD();
  60.    if(key_val!=0)
  61.    {
  62.      key_table[0] = key_val/10;   //ʮλ
  63.     key_table[1] = key_val%10;    //¸öλ
  64.    }
  65.   }
  66.     if (count-- == 0)               //1ms * 1000 -> 1s
  67.     {
  68.         count = 1               //1ms
  69.         P2=0xe0;P0=~T_display[key_table[i]];P2=0x00;
  70.      P2=0xc0;P0=T_COM[i];P2=0x00;
  71.      i++;
  72.      if(i==2) i=0;
  73.     }
  74. }

  75. void main()
  76. {
  77.     TMOD = 0x01;                    //set timer0 as mode1 (16-bit)
  78.     TL0 = T1MS;                     //initial timer0 low byte
  79.     TH0 = T1MS >> 8;                //initial timer0 high byte
  80.     TR0 = 1;                        //timer0 start running
  81.     ET0 = 1;                        //enable timer0 interrupt
  82.     EA = 1;                         //open global interrupt switch
  83.     count = 0;                      //initial counter
  84.     while (1);                      //loop
  85. }
復制代碼

求大佬解答一下,就是找不到哪里出錯了
回復

使用道具 舉報

ID:332444 發(fā)表于 2020-7-21 17:00 | 顯示全部樓層
  1. void tm0_isr() interrupt 1 using 1
  2. {
  3.    static char i;
  4.     TL0 = T1MS;                     //reload timer0 low byte
  5.     TH0 = T1MS >> 8;                //reload timer0 high byte
  6.    if (key_count-- == 0)
  7.   {
  8.     key_count = 10;                //10ms
  9.    key_val=read_KBD();
  10.    if(key_val!=0)
  11.    {
  12.      key_table[0] = key_val/10;   //ê???
  13.     key_table[1] = key_val%10;    //????
  14.    }
  15.   }
  16.     if (count-- == 0)               //1ms * 1000 -> 1s
  17.     {
  18.         count = 1;               //1ms
  19.         P2=0xe0;
  20.                         P0=~T_display[key_table[0]];
  21.                         P2=0x00;
  22.      P2=0xc0;
  23.                         P0=T_COM;
  24.                         P2=0x00;
  25.      i++;
  26.      if(i==2) i=0;
  27.     }
  28. }
復制代碼
回復

使用道具 舉報

ID:452950 發(fā)表于 2020-7-21 17:26 | 顯示全部樓層
count = 1               //1ms
這一句后面沒有分號,改為
count = 1;               //1ms
回復

使用道具 舉報

ID:808700 發(fā)表于 2020-7-28 16:57 | 顯示全部樓層
沒有分號。其實這種你直接百度就出來了的
回復

使用道具 舉報

ID:636538 發(fā)表于 2020-7-28 17:09 | 顯示全部樓層
第74行count = 1 沒有分號
回復

使用道具 舉報

ID:808700 發(fā)表于 2020-7-29 11:14 | 顯示全部樓層
語法問題,沒分號
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表