单片机动态波形显示Word文档格式.doc
《单片机动态波形显示Word文档格式.doc》由会员分享,可在线阅读,更多相关《单片机动态波形显示Word文档格式.doc(13页珍藏版)》请在冰点文库上搜索。
#defineLCD_dataP0//数据口
sbitLCD_RS=P2^6;
//寄存器选择输入
sbitLCD_RW=P2^5;
//液晶读/写控制
sbitLCD_EN=P2^7;
//液晶使能控制
sbitLCD_PSB=P3^2;
//串/并方式控制
sbitLCD_RST=P3^7;
//液晶复位端口
#definedelayNOP();
{_nop_();
_nop_();
};
/*********************************************************/
ucharcodeDIS1[]={"
Vpp:
"
ucharcodeDIS2[]={"
F:
ucharDIS3[]={"
5V"
ucharDIS4[]={"
12Hz"
ucharD1[]={"
0123456789"
//正弦波代码
ucharcodetab[]={
126,100,80,70,65,62,65,70,80,100,126,152,172,182,187,190,187,182,172,152
//背景图片
ucharcodePhoto1[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00
/******************************************************************************/
/*******************************************************************/
/**/
/*延时函数*/
voiddelay(intms)
{
while(ms--)
{
uchari;
for(i=0;
i<
150;
i++)
{
_nop_();
_nop_();
}
}
}
voiddelay1(intms)
uchary;
for(y=0;
y<
100;
y++);
}
/*检查LCD忙状态*/
/*lcd_busy为1时,忙,等待。
lcd-busy为0时,闲,可写指令与数据。
*/
bitlcd_busy()
{
bitresult;
LCD_RS=0;
LCD_RW=1;
LCD_EN=1;
delayNOP();
result=(bit)(P0&
0x80);
LCD_EN=0;
return(result);
}
/*写指令数据到LCD*/
/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。
*/
voidlcd_wcmd(ucharcmd)
{
while(lcd_busy());
LCD_RW=0;
_nop_();
P0=cmd;
}
/*写显示数据到LCD*/
/*RS=H,RW=L,E=高脉冲,D0-D7=数据。
*/
voidlcd_wdat(uchardat)
LCD_RS=1;
P0=dat;
/********读数据********/
unsignedcharreadData(void)
unsignedcharRData;
while(lcd_busy());
P0=0xff;
LCD_RS=1;
LCD_RW=1;
LCD_EN=0;
LCD_EN=1;
RData=P0;
//RData=dataPort;
returnRData;
/*LCD初始化设定*/
voidlcd_init()
{
LCD_PSB=1;
//并口方式
LCD_RST=