baidu_34427722 2016-04-01 14:45 采纳率: 0%
浏览 1276

请求帮我详细解释下这个程序,谢谢了

#include
#include
#define uchar unsigned char
#define uint unsigned int

#define WCOMM XBYTE[0x0000]
#define RCOMM XBYTE[0x0001]
#define WDATA XBYTE[0x0002]
#define RDATA XBYTE[0x0003]
void BusyWait()
{
while((RCOMM & 0x80) != 0x00);
}
void Write_Command(uchar cmd)
{
BusyWait();
WCOMM=cmd;
}
void Write_Data(uchar dat)
{
BusyWait();WDATA=dat;
}
void Initialse()
{
Write_Command(0x30);
Write_Command(0x01);
Write_Command(0x06);
Write_Command(0x0c);
}
void ShowString(uchar *str)
{
uchar i=0;
Write_Command(0x80);
while(str[i]!='\0'&&! Write_Data(str[i++]);
for(;i }
#include
#include
#define uchar unsigned char
#define uint unsigned int
uchar code Prompt[]="Please press K1 and wait for a while,Current Frequency will
show on the LCD...";
uchar LCD_Disp_Buffer[]="Frequency------HZ";
uchar Count=0;
sbit K1=P1^0;
void Initialse();
void ShowString(uchar str[]);
void Delay(uchar ms)
{
uchar i;
while (ms--) for (i=0;i<120;i++);
}
void main()
{
uchar i=0;
Initialise();
while (Prompt[i]!='\0')
{
ShowString(Prompt+i);
i++;
Delay(15);
}
IE=0x8A;
TMOD=0x51;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
while(1)
{
if(K1==0)
{
Delay(10);
if(K1==0)
{
TR1=TR0=1;
}
}
ShowString(LCD_Disp_Buffer);
}
}
void INT_T0() interrupt 1
{
uint Tmp,i;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(++Count==20)
{
TR1=TR0=0;
Count=0;
Tmp=TH1*256+TL1;
LCD_Disp_Buffer[9]=Tmp/10000+'0';
LCD_Disp_Buffer[10]=Tmp/1000%10+'0';
LCD_Disp_Buffer[11]=Tmp/100%10+'0';
LCD_Disp_Buffer[12]=Tmp%100/10+'0';
LCD_Disp_Buffer[13]=Tmp%10+'0';
if(LCD_Disp_Buffer[9]=='0') LCD_Disp_Buffer[9]=' ';
i=10;
while(LCD_Disp_Buffer[i]=='0' &&
LCD_Disp_Buffer[i-1]==' ' &&
i != 13)
{
LCD_Disp_Buffer[i++]=' ';
}
TH1=TL1=0;
}
}

  • 写回答

2条回答 默认 最新

  • threenewbee 2016-04-01 14:58
    关注

    这是单片机的C吧,用来在LCD显示器输出文字
    LCD_Disp_Buffer放的是每个字符的ascii码,TH0 TL0放的是读取出来的频率数据。
    这代码具体要看你的硬件手册。

    评论

报告相同问题?

悬赏问题

  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常