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

Keil编译错误怎么处理

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
编译时这么多错误该怎么处理,我也是网上复制的,如下图:请麻烦给看看
3 a/ W: @+ M( v- |5 L9 A1 E  A, x1 `  ^
/*程序说明*/2 Z! J3 t; A$ m* D; c( x
//P3.3-P3.5输出3路频率500hz占空比1%-99%可调方波//
* G1 @( i0 _5 M/ `0 F# X) S//P3.0-P3.2有3个按键单独控制3路占空比输出长按加5%
2 Q/ B# S; [) ~//短按加1%占空比6 Q" E% R7 x: o, U. T5 {7 C
#include <STC15F2K60S2.H> & [. _( o( L( ]
#include <intrins.h>
: Q, a, h1 J8 w) j0 c#define uchar unsigned char
' y, ~" I9 s# q1 s#define uint unsigned int' y% P) V: f  K9 O' n8 `
sbit red=P3^3;   //红色LED输出口
" C0 l/ D! X* P& @) y) dsbit green=P3^4; //绿色LED输出口# P0 ~% g/ g7 x
sbit blue=P3^5;     //蓝色LED输出口! g/ z1 a) b7 o; n- z
sbit k1=P3^0;     //红色LEDpwm控制3 d  u" m. G9 ?5 Y' B  Q3 y
sbit k2=P3^1;     //绿色LEDpwm控制4 P# l7 @& l, Y) U
sbit k3=P3^2;     //蓝色LEDpwm控制
3 ?( Y0 r% T4 }) `! R4 ~uchar r_temp=1,g_temp=1,b_temp=1;  //三色占空比数值缓存- t8 r$ {1 G. W9 C* N$ M6 H
uchar flag;                          //定时器T2定时次数标志
( V7 m! W; O1 }5 E3 m//延时函数,大约延时10ms.
; k6 K# `( d( Y) V9 B5 M0 L2 c, r' o
* c2 M/ e7 O" h+ M6 T* kvoid Delay10ms()        //@11.0592MHz5 r5 t$ V7 n, O- u) ~. T, f
{
: N2 `6 _& g1 C# [. A    unsigned char i, j;
8 J; C4 i, c  x, l  k
. _% I7 w, h7 M" B    i = 108;' p$ K# Q4 P# j; j5 H' i3 i
    j = 145;
! J( u: w4 K+ U4 [0 T    do
! \* }6 w. Y5 @; ~. a    {. K! |' \1 C2 l' q6 T: W( `, x1 a
        while (--j);
2 G) a8 M8 [7 K0 F8 ^    } while (--i);
" ^: Y0 f* y5 L* [5 G}( ^6 k: \6 S) A4 x' f7 \
) w+ V, y! m, Y
//按键扫描程序2 N+ X2 B: b. w
void key()
! _; ?# p% i' y{
/ R! @8 e- _! C. a' X. D" p( o  uchar    num1=0,num2=0,num3=0;
* p+ E% G& f' u  if(k1==0)               //按键K1处理程序4 K, Z* P7 m; K2 Q, ]
   {
: _% {( F( l! L- l, }& w     Delay10ms();
* e3 K' n7 r: N     if(k1==0)6 ]/ g7 w) U' ^  u  E/ [
       {4 Q! U' w  v; w* G: @
        if(r_temp<99), F$ x9 U# W0 W0 }+ a
             {     
, H1 a2 S7 e! L1 J              r_temp++;
' w0 |" u% |. s  c% ~, d: W              while(!k1)         
6 o- |9 B% [6 ^3 N- H4 O                 {
: Z+ Q9 {. {9 K/ M3 x                  num1++;      //长按标志位加到10约100ms& o  i# G! u; ^" |: E
                  Delay10ms();: I8 v2 k6 e/ _! C6 W" _8 d
                  if(num1==10&&r_temp<95)
$ }: P5 a$ C  v+ [- z( S                     {
3 _# p  l$ k2 |+ L  Q                     r_temp+=5;' v/ o# I1 N. E/ h& S( [
                     num1=0;
) v) k" ]5 S- ~  ?                     }
' j. J3 y+ u) C, i2 H) |                  if(r_temp>=95) r_temp=1;% L7 K9 j, U: f0 r! @7 m  f
                 }
& H: P9 z& i+ A- ?1 |( A            }
& W. H, u8 l/ y9 M        else r_temp=1;         / D* d8 V$ P2 j8 t. i
        }
! m. g* t. v( O, R! W    }
* d' w2 q8 E' n+ A3 |
' m. M' \/ ]2 S- P% ]* _7 ^  if(k2==0)               //按键K2处理程序* K6 l6 J& M2 D
   {% [) U9 I5 _' {, k" x" V5 S
     Delay10ms();
. J$ ~) z* l# R8 s     if(k2==0)* Q- M% L! o. M0 C, v
       {# o0 n* J/ `  l3 N7 `8 C' s
         if(g_temp<99)* F8 E  L$ }. M4 H' d
           {: D5 U7 k, s: H7 }: t8 h
             g_temp++;$ n. h) F# Z" ]/ C: x% R: Q% ^
             while(!k2)! [9 d$ t5 B+ a+ f  X% E
                 {
* o) d4 L% T+ {2 I                   num2++;          //长按标志位加到10约100ms$ Z( z, w5 {3 c9 l" J
                   Delay10ms();
3 }: e% \  ^; `' ~' d' X                   if(num2==10&&g_temp<95)" X9 [; H8 F$ s. M9 I; |
                        {0 E3 x' v3 n( h+ a7 Q( _" s
                          g_temp+=5;
6 a8 }. C" T9 J: B& l, w                          num2=0;* @2 n3 C5 ~1 r4 ^
                        }* C+ e+ Z& Z& e% K* _2 n
                   if (g_temp>=95) g_temp=1;
* ?$ E7 C. Y$ |1 Q  _4 u* }8 z! J                  }4 z- w9 m* P* H+ h7 R; d: j5 c
            }
( Q- ]0 J! j! V0 G: {* b          else g_temp =1;7 Q! @' {: Y) Y( m$ G/ u8 |7 @9 E
       }7 ?: s" ]4 u& x- I
    }
4 N. Q, w" S9 f  if(k3==0)                       //按键K3处理程序, Q# ~& u' {+ p; b) w
    {
! ]: t# b* s& e* ?# Z' L# b    Delay10ms();3 G0 R2 z1 e0 D* U* S4 Y
     if(k3==0)' n# ^3 d5 p# ~0 |
     {) g( B5 E$ Y& e, e: j
       if(b_temp<99)
* w$ v& L% v& U$ [5 E+ g           {0 K# e( M9 S0 J! u9 I
            b_temp++;
) P2 X  N% }  d1 H) W            while(!k3)
& h; W$ z4 g0 R                {
' F0 `$ P3 b: t- f9 y  L: w                 num3++;         //长按标志位加到10约100ms
5 K( u9 S& B6 B9 U7 D7 ^                 Delay10ms();# M: |; C; ~# H* g; }) T; S! K8 i9 t
                 if(num3==10&&b_temp<95)+ |0 ~1 z& q9 ~' a8 N2 |  v0 o
                    {
8 C! b1 h: i" y; d: E                     b_temp+=5;3 J2 o8 }2 p0 @" ?  H& ?
                     num3=0;  m/ Y/ t! g, R7 D
                    }
# I" I( b* D2 ?" b7 c) S                 if(b_temp>=95) b_temp=1;
. X- p& w: S) h  I9 D( [: p                }
  z$ N" N/ {( S) j           }) @6 ]1 m* [( o. n* c
     else b_temp =1;
: ^' ]7 z( W  H      }
4 @2 j4 I# z) p  S* _3 L7 E+ e    }
8 S  {) Q# n$ q2 {}
5 Q. I( Q1 O/ Q$ n$ _
; f% m6 t2 j  g: Q' B//定时器T0 16位自动模式定时1ms 控制灯灭时间2 ]2 n1 Z- W1 W( V- h$ G
% y: o6 L6 R0 `: P! B3 F3 }  t$ s
void InitTimer0() interrupt 1  // 1毫秒@11.0592MHz5 J9 Z9 _& x6 H3 h
{    / Q. u2 `0 ^4 |! X. l( \
    IE2 = 0x00;   //关闭定时器2中断
( _- J! `: U& D" p( R    AUXR=0XE4;    //关闭定时器2计数
: s  T* P7 d# K/ s! L    TL0 = 0xCD;1 _; D5 B% ?6 n
    TH0 = 0xD4;
9 Q. ~/ @! V" W  i1 w    red=1;
. b+ y$ Y$ d2 u. W8 l    green=1;" q7 t8 H. J* s9 e/ u$ I
    blue=1;& K$ X& s; g# `
    flag=1;
1 a1 G; @, i! A' m) u    AUXR=0xF4;        //开启定时器2计数
: t# [! t( `* ^7 b) m8 v: U    IE2=0x04;       //开启定时器2中断允许
0 f( r. m' D9 L: _& g$ H+ e, `}. Q2 B  Z) o, x2 V  ]
//定时器T2 16位自动模式定时10us    控制等亮时间
; v- l1 O& n% o; {( |4 W4 rvoid InitTimer2() interrupt 12    //     10微秒@11.0592MHz
- ~: _7 ]$ t! A  \6 N{    & q) \: }* l# t4 J2 [% o
    flag++;
! N3 ?. U: h1 f, m0 G7 W9 F    T2L = 0x91;        //设置定时初值8 i7 [3 I/ j4 B0 g; L. Y$ b
    T2H = 0xFF;        //设置定时初值
$ S, r9 b: A- w3 j; H    if(r_temp==flag) red=0;6 K% R1 d  L2 j* |; M# X
    if(g_temp==flag) green=0;
) z9 D( [, d% g! h; ~    if(b_temp==flag) blue=0;
2 V$ u8 _. k0 [  A8 H/ a/ R}6 a* ^$ q8 G$ p! t
void init()
; @$ I1 o  Y* o{
2 a% D7 d5 E6 [/ s; o    AUXR =0XE4;//设置定时器0和2为1T模式
9 ~- p: t2 A# Z: e7 [    TMOD= 0x00;, g6 k4 A9 A3 E4 {  n/ |
    TL0 = 0xCD;
& y) _5 ^: _7 T9 P( k7 @  j5 h1 W    TH0 = 0xD4;- j+ I$ |+ Y, I6 V' ~. e
    T2L = 0x91;        //设置定时初值
4 G9 d  P6 l0 V7 c+ C    T2H = 0xFF;        //设置定时初值. c, k6 e/ k2 s6 D* C2 ~
    EA = 1;5 ~" _: [8 z# k2 s0 d! U& n9 ]+ V0 D5 m
    ET0 = 1;! ~. U! I2 |5 P2 A
    TR0 = 1;" B& t7 U7 T: S8 D
}   
9 y: U% D. M3 G) J! l7 uvoid main()
; R1 p, L7 ^6 z4 p+ \! o" m7 q3 Z{   
! A: y. k0 E/ I" b0 R) a# e3 Hinit();
# K9 ]) z3 ?+ @+ @+ Pwhile(1)
3 @6 Q. A, h. e+ @, r( Z1 w   {
8 {$ J7 _* B4 w3 J   key();' l9 h' i/ N3 {, `0 Z# F9 V
   }: Z  `5 A- F6 G5 u6 G0 F, Q8 x
}
: g" q' @: v& N4 D% x
4 C) {; J" m; o0 |% L# z/ b& n; K3 {& c/ S& u. f

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

QQ截图20190511140111.png

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-9-7 13:08 , Processed in 0.125000 second(s), 26 queries , Gzip On.

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

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

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