找回密码
 注册
关于网站域名变更的通知
查看: 565|回复: 1
打印 上一主题 下一主题

Keil编译错误怎么处理

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-5-11 14:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
编译时这么多错误该怎么处理,我也是网上复制的,如下图:请麻烦给看看- N2 R, L3 w3 y

% O/ K) d$ w; r. U* y: i/*程序说明*/' R# u% k8 \$ k) ^
//P3.3-P3.5输出3路频率500hz占空比1%-99%可调方波//
2 |9 R4 K3 Y, r; N' Q0 y//P3.0-P3.2有3个按键单独控制3路占空比输出长按加5%
6 a+ v2 {" R/ K- o! B; t- I//短按加1%占空比
1 k; ], U" E$ R5 `#include <STC15F2K60S2.H>
; H! I2 D: D5 h6 O- }- L#include <intrins.h>
$ K" o5 n; k  Q9 O, Z  p#define uchar unsigned char3 U) e) D; C: ?2 _8 u. [/ G% B
#define uint unsigned int
1 I) C2 A- }6 P4 g0 q+ Isbit red=P3^3;   //红色LED输出口3 i: ]( p+ O4 [% K0 h& a
sbit green=P3^4; //绿色LED输出口
2 q- l7 J5 ^: ~0 D8 C, Xsbit blue=P3^5;     //蓝色LED输出口
; s6 j' F# B2 D* Qsbit k1=P3^0;     //红色LEDpwm控制
* o: }& T; p4 i; g. @sbit k2=P3^1;     //绿色LEDpwm控制
) L& u& p7 ]" b% M$ a; m! z0 Nsbit k3=P3^2;     //蓝色LEDpwm控制
" B" W( p4 y% @$ f5 Puchar r_temp=1,g_temp=1,b_temp=1;  //三色占空比数值缓存2 s, P+ _* T+ G) W; Y' p
uchar flag;                          //定时器T2定时次数标志: c9 T* ~* r3 X/ S4 S
//延时函数,大约延时10ms.: r7 b% C* h( q* g4 x. ?1 w, z5 W

  z+ h5 _7 Y9 @$ l# e  g& t2 e7 svoid Delay10ms()        //@11.0592MHz
! r- |, P" K: a' H  g' ^- R{
2 t9 r/ l+ i; L# J% K    unsigned char i, j;! s# Y/ u7 A& _4 A7 P+ W

0 Z; d* b; R1 [, c9 \* x7 ?    i = 108;
. A5 I7 ?" N8 k& V8 [8 F% Y    j = 145;
. J( x; W+ C4 T1 m8 M; j    do& ~: ?: Q7 @# z* z- ^
    {1 M# b2 C$ `! |. U$ O( R8 b  d
        while (--j);5 x+ p/ C4 z1 Y/ r! b" Y8 h
    } while (--i);# F2 B: Z0 }, ]1 ]5 }5 Q
}9 D% v0 S. B1 l; s: @( y3 }
# O# E* H& v+ \0 o9 j2 H
//按键扫描程序
0 M1 i8 y2 D0 w4 K) E4 {8 G1 mvoid key()4 j& e: Z7 k% F$ X2 F+ o8 J
{* O$ v. u; {0 z
  uchar    num1=0,num2=0,num3=0;
6 S; K+ O. f$ N. T, d  if(k1==0)               //按键K1处理程序- T2 q% b. }8 r
   {
8 I- o# {, o' u9 ~' ?6 D     Delay10ms();
" [* ^( l" p2 g5 t0 c, m) @     if(k1==0)1 @$ T- i3 E) c6 @! v% e# B0 q0 i4 X+ ^
       {2 T, ]% ?9 r9 A9 Y( E& Z1 `7 c  y
        if(r_temp<99)
5 \  u; o0 t& N& m: _) ]             {     
4 M6 `0 g+ x! j* e1 k% V              r_temp++;
$ @2 j- O' q( `$ d              while(!k1)         
  R* N) F3 P: n( \                 {
. \6 R4 }8 t0 H# N" w) I                  num1++;      //长按标志位加到10约100ms4 f+ P2 V) J) K& c1 j! K3 `
                  Delay10ms();. `6 D5 L% J8 F+ U
                  if(num1==10&&r_temp<95)
, T0 A# U( L; y                     {
2 T) L# E# M( _  N7 n                     r_temp+=5;
" b) l( X9 o7 N" d; F! f                     num1=0;
; D; B  s* W) \& K; u+ Q1 c                     }
( K) `5 M, P$ E$ ^  @( }                  if(r_temp>=95) r_temp=1;9 Z  P! o  t; n$ e& e- ^
                 }( e* p) ]& y# x) z1 Q
            }
1 l+ u4 s3 \# m; Z% u( j- ?        else r_temp=1;         / M3 d2 P: V3 B
        }
+ u: Q9 z6 ]0 L& x/ V; M% f    }
2 X. F" E, I8 b( B
3 \" X! `7 m& u% Y, V0 M  if(k2==0)               //按键K2处理程序0 O) I1 d- ]4 C/ r
   {" D( C9 Q* J: k
     Delay10ms();- I! k  E+ N) [0 s
     if(k2==0)
& c) c  e- M9 J' h6 e       {2 l6 v9 O' n0 L+ k- d9 F
         if(g_temp<99)
: K4 e' i- y  ?& Z4 K) |: }           {
# l, O$ M3 g9 h& ^  |' z             g_temp++;
) X7 M, ^7 M6 Q5 a  T             while(!k2)4 N. \, P" v9 u8 A
                 {; B9 ^1 ]' c# y. S5 P' \' c7 c
                   num2++;          //长按标志位加到10约100ms
/ b! Y# @3 f0 X3 V7 S                   Delay10ms();
) g) l3 w, Y8 M1 u) _" Y                   if(num2==10&&g_temp<95)
, ~/ I" ]8 i' P3 Z3 F! V                        {
$ D/ ?) G7 N7 l  X                          g_temp+=5;9 l3 h5 z( u$ u, k
                          num2=0;
6 P2 @8 T7 \  w7 y& D/ @0 m                        }& ~1 B# v8 z, u: g' u2 d: F: e
                   if (g_temp>=95) g_temp=1;
& X2 z8 q1 r6 r  N# B" ?( B- R( ^                  }1 V, N" q8 q2 {( }8 t, O
            }
0 e: o- _, N- `          else g_temp =1;
1 ?1 n( E- c: K( G- o  K) \: @       }3 N* d3 W: U2 a, W' c; X
    }
# ~2 x. U6 i8 F! w+ z2 h) m  if(k3==0)                       //按键K3处理程序
- O* S# ~# f) v8 Q4 I( ?    {
! ^9 `& x# `* Y    Delay10ms();
% q* W/ L. h4 }) t  v3 k     if(k3==0)
) [4 ~& |; \) q3 c. n7 d     {7 G4 R# P* J. a, s! ~2 x
       if(b_temp<99)
  _: {$ U+ Q6 U: ]# A           {
- i2 t. G4 q: I- J( Z            b_temp++;
+ p8 i; z. j; o( _  b+ \5 @+ [            while(!k3)
! V% i* c: U& D# `0 ^                {: g$ ~2 s, n. M4 K3 m2 E# |
                 num3++;         //长按标志位加到10约100ms) L% S' ?5 m; i3 h$ `; _- C
                 Delay10ms();
7 @% B/ Z7 N3 Z' @                 if(num3==10&&b_temp<95)& G! Q& Z) s- R2 E( y2 [+ F& V6 j
                    {
% X8 N1 ]7 ^4 O! S- F                     b_temp+=5;; }0 x0 }/ S# q+ x
                     num3=0;( A2 Y( o9 s7 q  A
                    }
& }: P: Y$ C4 p; j, v- t* s                 if(b_temp>=95) b_temp=1;/ E" S$ J9 [/ k- @# G0 r8 Q
                }8 ]% y  f+ @, p2 K; h
           }4 c+ @8 n1 B2 d* S
     else b_temp =1;, G/ u1 O$ Y7 \( f; d& l
      }0 u8 r+ X; m) Z
    }8 R$ N( l) m, L' E+ I" P
}
  _2 Z% W5 [& N( c% {' r% n8 g3 g3 a- R
//定时器T0 16位自动模式定时1ms 控制灯灭时间+ }& k* |6 y) p; P- V
) f$ h$ |0 R# H' F5 z! o
void InitTimer0() interrupt 1  // 1毫秒@11.0592MHz! @  V  f7 j0 g6 W  q! b2 O
{   
1 i$ e4 ]( R8 \3 D/ ^* F' e+ P  T    IE2 = 0x00;   //关闭定时器2中断
: V" w: C5 U' y    AUXR=0XE4;    //关闭定时器2计数
! j  v3 ~8 e5 Y' O) _+ c$ d    TL0 = 0xCD;
5 I% [0 h" N( n8 @! s* s  `: q) }    TH0 = 0xD4;6 Q3 V) S- L! x6 A
    red=1;
3 B+ l' _. Z  o# ]3 J    green=1;
7 y3 c8 k. m' \2 b2 g7 Q& f    blue=1;
- }- V2 e( a) _$ C4 Q. q3 ]    flag=1;
, }; B, s+ H/ W" [6 {' w& J    AUXR=0xF4;        //开启定时器2计数, G2 ~6 i2 P/ Q& @0 `
    IE2=0x04;       //开启定时器2中断允许
& j/ D7 R# g3 F# o; O! Q: i$ i, w! o% F* I% g}& ^; b. B" p2 `
//定时器T2 16位自动模式定时10us    控制等亮时间6 h5 ^% s2 }$ c
void InitTimer2() interrupt 12    //     10微秒@11.0592MHz' m9 u' b$ O: q: C
{    ' ]& E0 _$ V- W1 j
    flag++;( j: c" U1 n8 P# L0 R' K
    T2L = 0x91;        //设置定时初值5 K) `; m+ [3 c1 x
    T2H = 0xFF;        //设置定时初值5 J" k4 U  E% {7 ]7 L2 _
    if(r_temp==flag) red=0;
6 l( ?' X1 J# G' A    if(g_temp==flag) green=0;
; H7 f5 q5 g9 r* V    if(b_temp==flag) blue=0;1 r9 x3 N  A' E
}$ b- E" ?; B  F1 A3 m: h
void init()
9 p( I7 ^0 u2 n5 r+ s* z; _. _% @{
/ {. z* v# j/ `    AUXR =0XE4;//设置定时器0和2为1T模式2 B: P9 S, y  h* l* j& _- Z6 Z
    TMOD= 0x00;
5 r1 Y5 I. n% M) h9 n8 u5 N0 W    TL0 = 0xCD;
- F0 i& Q( C. H3 B    TH0 = 0xD4;9 `  o$ l" l% Q' \
    T2L = 0x91;        //设置定时初值
$ d3 N4 f; D4 c7 D2 A+ N3 a3 P& o    T2H = 0xFF;        //设置定时初值
' B2 w. J' V" u! J% V7 K    EA = 1;
( ~0 @) R( I' ~# J    ET0 = 1;- }/ R! R  [  H& }
    TR0 = 1;" @) X) D! O# B' C* u" r1 \
}   
+ w9 F6 K( E" Wvoid main()
( _8 M( @) O# V* i/ K( I  ]& T{   
1 c+ b+ [1 Y  _0 xinit();0 V8 Y6 @9 ^* v1 ^
while(1)6 Y" @$ `, I) P
   {
, a# r9 q, |1 N5 Z+ t8 w   key();9 v/ ?. O1 |7 a7 ^: Y/ I9 W/ t
   }2 f) @% P; j5 a  }) ~
}
8 f& s; \) X8 z
' g7 C7 N  A! h, I. F% z" a0 ]. P( k; X1 a, I  {' Z* w

QQ截图20190511140111.png (76.59 KB, 下载次数: 1)

QQ截图20190511140111.png

该用户从未签到

2#
 楼主| 发表于 2019-5-16 09:48 | 只看该作者
那位大神帮看看,在线等
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-27 15:05 , Processed in 0.093750 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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