找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5418|回复: 0
打印 上一主题 下一主题
收起左侧

哪位高人帮忙看一下,谢谢了!

[复制链接]
跳转到指定楼层
楼主
ID:11325 发表于 2009-6-26 09:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

#include <reg52.h>
#include<stdio.h>
#define uchar unsigned char
#define uint unsigned int
//全局运算变量
uint Speed = 40;  
uint width = 12; 
uint Factflux = 80; 
uint Wantflux = 80; 
bit Setwidth = 0; 
bit Setflux = 0;  
uchar Numcount = 0;  
uchar Keynum;

sbit E=P3^0;  
sbit RST=P0^3;  
sbit RW=P0^4;  
sbit RS=P0^5;  
sbit L=P0^6; 
sbit R=P0^7;  
sbit Busy=P2^7; 
//字模
uchar  code Shi[]={/*实   CCAB5 */
0x00,0x10,0x0C,0x04,0x4C,0xB4,0x94,0x05,
0xF6,0x04,0x04,0x04,0x14,0x0C,0x04,0x00,
0x00,0x82,0x82,0x42,0x42,0x23,0x12,0x0A,
0x07,0x0A,0x12,0xE2,0x42,0x02,0x02,0x00}
//函数声明
void Delay(uint m);                              
void Checkbusy(void);                           
void Sdata(uchar ddata);             

void Scmd(uchar command);                        
void Init(void);                              
void Displayword(uchar page,row,uchar code *word,uint lengh);   
void Displaynum (uchar page,row,uchar code *num,uint lengh);    

//函数编程
void Delay(uint m)
{  uint i,j;
   for(i=0;i<m;i++)
    for(j=0;j<109;j++)
    _nop_();
}
void Checkbusy(void)
{
  E=1;                   
  RS=0;                  
  RW=1;                 
  P2=0xff;               
  while(!busy);         
}
void Sdata(uchar ddata )
{
  Checkbusy();           
  RS=1;                   
  RW=0;                  
  P2=ddata;                
  E=1;                    
  E=0;                  
  }
void Scmd(uchar command)
{
  Checkbusy():
  RS=0;                     
  RW=0;
  P2=command;
  E=1;
  E=1;
}
void Init(void)
{
  RST=0;
  Delay(150);
  RST=1;                
  Delay(100);
  L=1;
  R=1;                 
  Scmd(0x3f);          
  Scmd(0xc0);           
  Scmd(0x80);           
  Scmd(0x40);          
}
void Displayword(uchar page,row,*word,uint length) 
{
  uchar i,j;
  L=1;
  R=0;
  Wcmd(page);
  Wcmd(row);
  for(i=0;i<length/2;i++)
      Sdata(word);
  Scmd(page+1);
  Wcmd(row);
  for(j=length/2;j<length;j++)
      Sdata(word[j]);
}
void Displaynum(uchar page,row,*num,uint length)     
{
  uchar i,j;
  L=0;
  R=1;
  Wcmd(page);
  Wcmd(row);
  for(i=0;i<length/2;i++)
      Sdata(num);
  Scmd(page+1);
   Wcmd(row);
  for(j=length/2;j<length;j++)
      Sdata(num[j]);
}
void DisplayWantflux(void)

   Displayword(0xb8,0x40,She[],32);
   Displayword(0xb8,0x50,Ding[],32);
   Displayword(0xb8,0x60,Liu[],32);
   Displayword(0xb8,0x70,Liang[],32);
}
void DisplayFactflux(void)
{
   Displayword(0xba,0x40,Shi[],32);
   Displayword(0xba,0x50,Ji[],32);
   Displayword(0xba,0x60,Liu[],32);
   Displayword(0xba,0x70,Liang[],32);
}
void DisplayWidth(void)
{
   Displayword(0xbc,0x60,Fu[],32);
   Displayword(0xbc,0x70,Kuan[],32);
}
void DisplaySpeed(void)
{
    Displayword(0xbe,0x60,Che[],32);
    Displayword(0xbe,0x70,Su[],32);
}
void Display80(void)

   Displaynum(0xb8,0x40,N8[],16);
   Displaynum(0xb8,0x48,N0[],16);
}
void Display80_(void)

   Displaynum(0xba,0x40,N8[],16);
   Displaynum(0xba,0x48,N0[],16);
}
void Display12(void)

   Displaynum(0xbc,0x40,N1[],16);
   Displaynum(0xbc,0x48,N2[],16);
}
void Display10(void)

   Displaynum(0xbe,0x40,N1[],16);
   Displaynum(0xbe,0x48,N0[],16);
}
void DisplayDanwei(void)
{
   Displaynum(0xb8,0x60,LPMU[],32);
   Displaynum(0xba,0x60,LPMU[],32);
   Displaynum(0xbc,0x60,M[],32);
   Displaynum(0xbe,0x60,MPS[],32); 

main()
{
  Init(void);
  while(1)
  {
  void DisplayWantflux(void);
  void DisplayFactflux(void);
  void DisplayWidth(void);
  void DisplaySpeed(void);
  void Display80(void);
  void Display12(void);
  void DisplayDanwei(void);
}

还有一些字模没有在这上面打出。

在Keil上编译时,出现:error C141:syntax error near 'unsigned'

error C141:syntax error near 'void'

errorC231:'_Delay':redefinition'

这是怎么回事啊! 帮帮忙吧!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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