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

Keil编译错误怎么处理

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
编译时这么多错误该怎么处理,我也是网上复制的,如下图:请麻烦给看看/ `0 U0 o4 j7 z
9 p' M# K) H& S0 x4 M
/*程序说明*/
4 g8 a# a5 J4 s! j//P3.3-P3.5输出3路频率500hz占空比1%-99%可调方波//, l( L' ]- ~2 W# ^/ f  i/ D: l
//P3.0-P3.2有3个按键单独控制3路占空比输出长按加5%
9 h1 h  t, X9 [. _- w( J# M//短按加1%占空比- E' H; @, n9 N( Z4 S7 l5 {
#include <STC15F2K60S2.H> 7 v3 f: l/ i2 v5 I( p9 i4 T  N
#include <intrins.h>
0 l" Z3 `' n) R! k/ _" ^#define uchar unsigned char
5 r( U( q- R. x# V#define uint unsigned int/ z# N! ]& Z; Z3 Y  _
sbit red=P3^3;   //红色LED输出口
" M0 f5 F: ]2 c2 Asbit green=P3^4; //绿色LED输出口
6 v; _4 b$ |% A2 C4 z# B6 lsbit blue=P3^5;     //蓝色LED输出口
0 |# k  D* T5 t7 h) Rsbit k1=P3^0;     //红色LEDpwm控制  u( H0 C% x% R
sbit k2=P3^1;     //绿色LEDpwm控制
& f0 D, E* u. N' H7 L2 B$ Psbit k3=P3^2;     //蓝色LEDpwm控制. Z6 ]& f$ u1 u: b
uchar r_temp=1,g_temp=1,b_temp=1;  //三色占空比数值缓存- P5 H* b5 Z3 z; q
uchar flag;                          //定时器T2定时次数标志" V# x4 B4 M" _: a0 V/ {
//延时函数,大约延时10ms., I6 w0 l0 b6 Z/ f2 b2 B
4 d: v! b  j8 B, g5 q
void Delay10ms()        //@11.0592MHz
  @: K5 a: G  T' `: Y1 {{5 Y. i* c0 z- E; Y4 ?+ b( ]
    unsigned char i, j;
' N( n$ H* w" G: H; s' x0 L- I: v5 _# q. E% j# K/ b6 ]
    i = 108;$ x7 F" `" U$ k& m/ l- Q! J
    j = 145;% {! Y2 }2 H1 m/ k
    do, b9 Y8 h" S9 N. x' B+ q2 o% a; Z; \
    {
9 N& J- P# ?! E# m" w: z% T        while (--j);
/ W1 I  C: a4 b! L2 Z. L. H    } while (--i);- i3 [8 s/ n. {0 n) N8 _2 i
}
3 T7 c- y+ G; F
* K6 K0 s& j+ l# u4 @$ r# B//按键扫描程序
! r+ \$ ?; i- ~/ U! A! E, j! U% Bvoid key()! J4 K# @6 F. u8 l$ a
{
; d. y! S: `$ @5 B; M  uchar    num1=0,num2=0,num3=0;- w, T) H% `8 Z+ ~% _
  if(k1==0)               //按键K1处理程序+ l4 k9 H: h9 X& b9 g. x# W" G
   {, y$ n. g3 E; o+ W
     Delay10ms();
" L, c; v3 Z7 D( s     if(k1==0)* y: Y5 {; S% e  a" D
       {, @" L+ l) @4 \$ Q+ V
        if(r_temp<99)
$ O! W& ~, e, n2 \2 m3 p% P: p, Z# L             {     
; _4 _* a9 L  G# R* |2 G              r_temp++;6 J% ~  U% c* M) n, b4 V0 F+ n
              while(!k1)         7 B# K% S4 Y/ T+ G$ k2 s
                 {
. p6 z+ r8 p( d6 x4 E1 w1 o                  num1++;      //长按标志位加到10约100ms) f$ U7 T$ H' B; o1 |2 B. V8 T
                  Delay10ms();8 N9 g  G5 _7 y3 L/ z& S2 O
                  if(num1==10&&r_temp<95)
& q; V( D2 Z' \4 P* G# r8 u/ |4 E9 r                     {
# {+ @# j6 D5 W: q; K- M% I                     r_temp+=5;: d5 C, M) c) J4 R1 i
                     num1=0;) x) g, w$ \9 g, f3 ]
                     }& M, m$ W. M. S! ?+ e5 z& Q+ u
                  if(r_temp>=95) r_temp=1;& W" @5 ?' H! e8 g" p/ r9 Q
                 }
3 r: b# b: u' Q9 Z7 n, G* [. @            }
3 X6 T) z/ K# E        else r_temp=1;         
( F& O, o1 a: ]3 c' A6 Q        }
4 U. o, N+ M3 I  S& _4 G& S' a) n    }
$ w8 D! f) H5 w! }; J/ J; Z( ?5 V/ E4 d3 ^) f" k
  if(k2==0)               //按键K2处理程序
2 T% E3 O! _7 t: t0 D   {  u" i+ w* }4 j1 B4 C
     Delay10ms();
( B3 ^. q5 h2 Q% M     if(k2==0)
$ d, l8 d! g' k3 P       {' b* F: H2 b6 d& b5 v$ O) b
         if(g_temp<99)
; m. e9 ]* B7 |# q8 I           {) g/ z2 n6 A* s; E" K# _
             g_temp++;1 L8 m& ?3 m4 l7 q6 v9 e8 }
             while(!k2)
, S& p7 d. A2 |! b+ q0 N                 {: [# w( Q( Z* w
                   num2++;          //长按标志位加到10约100ms" F& |, R8 w. \! |( g/ I
                   Delay10ms();
( d" T; H! \2 f; L                   if(num2==10&&g_temp<95)
5 ?! e' X/ R  z3 K$ e: a                        {& P# U$ r; {  f, ?1 O, x# l8 u* M
                          g_temp+=5;. R/ r& c. D$ Z$ J# e. {4 u$ ^
                          num2=0;0 N- `/ c3 l/ f1 B9 J* e5 {
                        }0 w' D- C3 X5 P# G
                   if (g_temp>=95) g_temp=1;) Q8 s3 s& S' V1 L0 ~& u
                  }
0 ?) U1 F) k0 o( x9 ]            }
; _: F  V2 H$ o  ]9 x2 Z1 [          else g_temp =1;& K. b2 B6 P/ k: o/ n. T% n! E
       }: |/ Z9 a1 ]6 {3 Z' z( W
    }( j$ x7 |& \, C; p/ v1 X8 v
  if(k3==0)                       //按键K3处理程序" ^# o- Y) b7 _
    {
! k# [7 k$ U, B6 ?    Delay10ms();! F' Q; e' P4 _" L. m: k
     if(k3==0)
% P) v( B+ G  G& t4 G+ Z     {
0 |9 q, ?/ g4 Q; W. b       if(b_temp<99)5 h3 x8 w" b2 R' e- n, w2 ?
           {# R3 C) a$ J- N' Q; n4 a: G& b9 {
            b_temp++;
; G. _& L& `- H" o            while(!k3): `5 N6 K( _/ p: B* H& m. D
                {4 O, g) U. Z% M8 K! E7 [* h$ I
                 num3++;         //长按标志位加到10约100ms) }, l; C; i, a4 L
                 Delay10ms();: X. M, n# o9 D# f6 }' Z! }
                 if(num3==10&&b_temp<95)
. t& g: J9 }0 L                    {
$ K7 Z! p2 M, O) e1 a                     b_temp+=5;
8 D& n: N' D6 R7 S+ r% t$ n3 T                     num3=0;
. C( y4 h* ^+ T                    }5 U/ c4 L$ }4 M5 M: \- Z
                 if(b_temp>=95) b_temp=1;7 F$ o! e# P* U# ^( Q9 A* a1 d
                }% G$ `$ [1 W+ F& H
           }5 L) o: v6 I6 h# f$ k! }4 P
     else b_temp =1;" n9 O1 }- j/ {, Z0 T
      }
# k( |) j: m. M- I: |0 m    }
! h2 @6 c8 K7 ^) _% q}9 D. ]. ?$ H; k! J

) @* m! z8 w5 y& ?) Z//定时器T0 16位自动模式定时1ms 控制灯灭时间0 K5 x7 m/ z3 P. Y

0 o5 W4 U' L* ]) ?" Gvoid InitTimer0() interrupt 1  // 1毫秒@11.0592MHz" h5 R% e4 G& K( B
{   
8 S7 Z5 s' Z: n! a8 ?/ [    IE2 = 0x00;   //关闭定时器2中断
! B# Z* s" y- A3 V& S  \    AUXR=0XE4;    //关闭定时器2计数5 U$ f4 g$ r# z
    TL0 = 0xCD;+ @% \1 K) P0 B
    TH0 = 0xD4;. R  {: p8 s* S( F, m1 M
    red=1;
2 ~; c8 g* a& Z/ s" v    green=1;
2 y, _6 L" T' [9 Q    blue=1;- f5 f( H  z7 p5 ], g) }6 g- i
    flag=1; 5 ^- N* ?; k/ W) W
    AUXR=0xF4;        //开启定时器2计数9 N+ `) T* ^3 |6 a2 u- D
    IE2=0x04;       //开启定时器2中断允许4 r. r2 }" |$ z
}
+ h) g8 I! ]" u4 E: S' I! c4 e9 ~//定时器T2 16位自动模式定时10us    控制等亮时间
( C' ^5 X) @* l+ evoid InitTimer2() interrupt 12    //     10微秒@11.0592MHz
6 V5 Y- a  f; c4 ?{   
* p! e' {6 W1 T    flag++;
# n1 M+ e7 y  y2 Q: g7 t: X    T2L = 0x91;        //设置定时初值9 [0 T6 h$ O7 R
    T2H = 0xFF;        //设置定时初值
$ }3 n5 H, S# n6 U" f    if(r_temp==flag) red=0;
0 U6 G0 t8 r" D0 F9 h4 r    if(g_temp==flag) green=0;$ |$ S, [3 e/ Z8 ~. z" r, N5 n
    if(b_temp==flag) blue=0;
0 @" N' F, |# Y3 U/ j% x}& ]) N" L4 w* E. }5 Y
void init(), O) {# y( O8 o4 F/ {8 R# n$ l' a, I
{" P, I3 ]: h) z' o$ u8 s. p5 n
    AUXR =0XE4;//设置定时器0和2为1T模式
1 V# q- w! B: C* q  ?* l, _    TMOD= 0x00;
: ?  a; ~+ y/ A5 r0 N" _  A    TL0 = 0xCD;
+ k  y# x# w2 A% k, W    TH0 = 0xD4;
0 i- u' Z6 W. M0 o  p' X/ ~9 ]' g    T2L = 0x91;        //设置定时初值
& L* ]( `- ]( g: p7 E) L& D8 _    T2H = 0xFF;        //设置定时初值- N* W6 f! ?% e5 Y* n
    EA = 1;
, J8 i' Q5 B  U6 \    ET0 = 1;3 O" W; t& z1 E  i8 n
    TR0 = 1;9 E# k9 N& n6 p8 ]5 t7 [9 Q7 V
}    / [: _8 a0 Q7 L# `( Z0 R
void main()3 o1 H; N6 a3 H
{   " P. [* ]$ a3 L
init();
6 P- u9 J& s  I' `- bwhile(1)7 N0 ?; y$ A, W8 `2 K/ G
   {/ G- O9 g; F* r$ n( `
   key();9 T" `0 w5 J. J$ [1 t0 b
   }
6 i; v+ B4 n6 K2 Z7 M! S}- }" O# g+ m8 B' e' `
/ L! Z) c! H, R; `( \

( v% ]1 t. ^* `$ c5 o! H

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

QQ截图20190511140111.png

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2026-4-18 21:25 , Processed in 0.093750 second(s), 27 queries , Gzip On.

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

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

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