📄 ok.c
字号:
GUI_KeyValue = 0;
break;
case 15:
UARTTxChar(0X0f);
GUI_KeyValue = 0;
break;
case 16:
UARTTxChar(0X10);
GUI_KeyValue = 0;
break;
case 17:
UARTTxChar(0X11);
GUI_KeyValue = 0;
break;
case 18:
UARTTxChar(0X12);
GUI_KeyValue = 0;
break;
case 20:
UARTTxChar(0X13);
GUI_KeyValue = 0;
break;
default:
GUI_KeyValue = 0;
break;
}
}
if(k==3)
{
switch(GUI_KeyValue)
{
case 1:
UARTTxChar(0X01);
write10(0xb3,0x12,0x00 ,shuzi1);
k=1;
GUI_KeyValue = 0;
break;
case 2:
UARTTxChar(0X02);
write10(0xb3,0x12,0x00 ,shuzi2);
k=1;
GUI_KeyValue = 0;
break;
case 3:
UARTTxChar(0X03);
write10(0xb3,0x12,0x00 ,shuzi3);
k=1;
GUI_KeyValue = 0;
break;
case 4:
UARTTxChar(0X04);
write10(0xb3,0x12,0x00 ,shuzi4);
k=1;
GUI_KeyValue = 0;
break;
case 5:
UARTTxChar(0X05);
write10(0xb3,0x12,0x00 ,shuzi5);
k=1;
GUI_KeyValue = 0;
break;
case 6:
UARTTxChar(0X06);
write10(0xb3,0x12,0x00 ,shuzi6);
k=1;
GUI_KeyValue = 0;
break;
case 7:
UARTTxChar(0X07);
write10(0xb3,0x12,0x00 ,shuzi7);
k=1;
GUI_KeyValue = 0;
break;
case 8:
UARTTxChar(0X08);
write10(0xb3,0x12,0x00 ,shuzi8);
k=1;
GUI_KeyValue = 0;
break;
case 9:
UARTTxChar(0X09);
write10(0xb3,0x12,0x00 ,shuzi9);
k=1;
GUI_KeyValue = 0;
break;
case 10:
UARTTxChar(0X0a);
write10(0xb3,0x12,0x00 ,shuzi0);
k=1;
GUI_KeyValue = 0;
break;
case 11:
UARTTxChar(0X0b);
GUI_KeyValue = 0;
break;
case 12:
UARTTxChar(0X0c);
GUI_KeyValue = 0;
break;
case 13:
UARTTxChar(0X0d);
GUI_KeyValue = 0;
break;
case 14:
UARTTxChar(0X0e);
GUI_KeyValue = 0;
break;
case 15:
UARTTxChar(0X0f);
GUI_KeyValue = 0;
break;
case 16:
UARTTxChar(0X10);
GUI_KeyValue = 0;
break;
case 17:
UARTTxChar(0X11);
GUI_KeyValue = 0;
break;
case 18:
UARTTxChar(0X12);
GUI_KeyValue = 0;
break;
case 20:
UARTTxChar(0X13);
GUI_KeyValue = 0;
break;
default:
GUI_KeyValue = 0;
break;
}
}
if(UARTLSR.DR==1) //如果有数据可以接收
{
*RxHeadPtr++=UARTRxChar(); //则接收数据
if(RxHeadPtr>=(RxCharBuf+BUFSIZE)) //如果RxHeadPtr超出接收寄存器的范围
RxHeadPtr=RxCharBuf; //将RxHeadPtr指向接受寄存器头指针
Rxcount++;
}
if(RxTailPtr!=RxHeadPtr) //如果有反馈数据接收到
if( Rxcount==3) //将接收到的反馈数据存放在反馈数据存储器
{
p[2]=*RxTailPtr++;
if(RxTailPtr>=(RxCharBuf+BUFSIZE))
RxTailPtr=RxCharBuf;
p[1]=*RxTailPtr++;
if(RxTailPtr>=(RxCharBuf+BUFSIZE))
RxTailPtr=RxCharBuf;
p[0]=*RxTailPtr++;
if(RxTailPtr>=(RxCharBuf+BUFSIZE))
RxTailPtr=RxCharBuf;
Rxcount=0;
/**************************************************
将接收的三个反馈数据分别显示在液晶显示器上
***************************************************/
switch(p[0])
{
case 1: write10(0xb3,0x12,0x00 ,shuzi1);
break;
case 2: write10(0xb3,0x12,0x00 ,shuzi2);
break;
case 3: write10(0xb3,0x12,0x00 ,shuzi3);
break;
case 4: write10(0xb3,0x12,0x00 ,shuzi4);
break;
case 5: write10(0xb3,0x12,0x00 ,shuzi5);
break;
case 6: write10(0xb3,0x12,0x00 ,shuzi6);
break;
case 7: write10(0xb3,0x12,0x00 ,shuzi7);
break;
case 8: write10(0xb3,0x12,0x00 ,shuzi5);
break;
case 9: write10(0xb3,0x12,0x00 ,shuzi9);
break;
case 10: write10(0xb3,0x12,0x00 ,shuzi0);
break;}
switch(p[2])
{
case 1: write10(0xb3,0x13,0x00 ,shuzi1);
break;
case 2: write10(0xb3,0x13,0x00 ,shuzi2);
break;
case 3: write10(0xb3,0x13,0x00 ,shuzi3);
break;
case 4: write10(0xb3,0x13,0x00 ,shuzi4);
break;
case 5: write10(0xb3,0x13,0x00 ,shuzi5);
break;
case 6: write10(0xb3,0x13,0x00 ,shuzi6);
break;
case 7: write10(0xb3,0x13,0x00 ,shuzi7);
break;
case 8: write10(0xb3,0x12,0x00 ,shuzi5);
break;
case 9: write10(0xb3,0x13,0x00 ,shuzi9);
break;
case 10: write10(0xb3,0x13,0x00 ,shuzi0);
break;}
switch(p[1])
{
case 1: write10(0xb3,0x14,0x00 ,shuzi1);
break;
case 2: write10(0xb3,0x14,0x00 ,shuzi2);
break;
case 3: write10(0xb3,0x14,0x00 ,shuzi3);
break;
case 4: write10(0xb3,0x14,0x00 ,shuzi4);
break;
case 5: write10(0xb3,0x14,0x00 ,shuzi5);
break;
case 6: write10(0xb3,0x14,0x00 ,shuzi6);
break;
case 7: write10(0xb3,0x14,0x00 ,shuzi7);
break;
case 8: write10(0xb4,0x12,0x00 ,shuzi5);
break;
case 9: write10(0xb3,0x14,0x00 ,shuzi9);
break;
case 10: write10(0xb3,0x14,0x00 ,shuzi0);
break;}
}
if(p[0]*p[1]*p[2]==125) //当接收到三个数字都为5即其三者乘机为125时表明发送数据成功
{write10(0xb6,0x10,0x00 ,fa); //显示“发送成功”的字样在液晶显示器上
write10(0xb6,0x11,0x00 ,song);
write10(0xb6,0x12,0x00 ,cheng);
write10(0xb6,0x13,0x00 ,gong1);
p[2]=0; //然后清除接收的反馈数据准备接收下一次反馈数据
p[1]=0;
p[0]=0;
delay(2000); //延时
write10(0xb0,0x11,0x00 ,han1); //液晶显示器显示焊接电流 A和数字000的字样
write10(0xb0,0x13,0x00 ,jie1);
write10(0xb0,0x15,0x00 ,dian);
write10(0xb0,0x17,0x00 ,liu);
write10(0xb3,0x15,0x00 ,A);
write10(0xb6,0x10,0x00 ,han1);
write10(0xb6,0x11,0x00 ,jie1);
write10(0xb6,0x12,0x00 ,zhong);
write10(0xb6,0x13,0x00 ,diann);
write10(0xb6,0x14,0x00 ,diann);
write10(0xb6,0x15,0x00 ,diann);
write10(0xb3,0x13,0x00 ,shuzi0);
write10(0xb3,0x12,0x00 ,shuzi0);
write10(0xb3,0x14,0x00 ,shuzi0);}
}
}
#endif
/************************************
void intlcd(void)
初始化液晶显示器子程序
功能:初始化液晶显示器
入口参数:无
出口参数:无
调用方式:intlcd()
************************************/
void intlcd(void)
{
wr_led(0xa3);
wr_led(0xa0);
wr_led(0x2f);
wr_led(0x2f);
wr_led(0x23);
wr_led(0x81);
wr_led(0x2c);
wr_led(0xc0);
wr_led(0xaf);
wr_led(0x40);
}
/************************************
void clearlcd(void)
液晶清屏子程序
功能:清除液晶显示
入口参数:无
出口参数:无
调用方式:clearlcd()
*************************************/
void clearlcd()
{ unsigned int lcdpage,loop1,loop2;
lcdpage=0x00;
lcdpage=lcdpage|0xB0;
for(loop1=8;loop1>0;loop1--)
{
wr_led( lcdpage);
wr_led(0x10);
wr_led(0x00);
wr_led(0x00);
for(loop2=129;loop2>0;loop2--)
{ wr_leddat(0); }
lcdpage++;
}
}
/************************************
void delay(int period)
延时子程序
功能:延时
入口参数:int period
出口参数:无
调用方式:intlcd()
************************************/
void delay(int period)
{
int h, v;
for(h=0; h<period; h++)
{
for(v=0; v<period>>1; v++);
}
}
/************************************
void wr_led(unsigned int num)
向MCBSP口发送数据子程序
功能:发送数据
入口参数:int num
出口参数:无
调用方式:wr_led(unsigned int num)
************************************/
void wr_led(unsigned int num)
{
*(volatile unsigned int *) 0X3d=0X00;
while(mcbsp1_xrdy() == 0);
{
*DXR10 = num;
}
}
/************************************
void wr_leddat(unsigned int num1)
向MCBSP口发送数据子程序
功能:发送数据
入口参数:int num1
出口参数:无
调用方式:wr_leddat(unsigned int num1)
************************************/
void wr_leddat(unsigned int num1)
{
while(mcbsp1_xrdy() == 0);
{
*DXR10 = num1;
}
*(volatile unsigned int *) 0X3d=0Xff;
}
/*******************************************************************************************
void write10(unsigned int page,unsigned int ch,unsigned int cl,const unsigned *ld)
液晶
显示数据子程序
功能:液晶上显示数据
入口参数:unsigned int page,unsigned int ch,unsigned int cl,const unsigned *ld
出口参数:无
调用方式:write10(unsigned int page,unsigned int ch,unsigned int cl,const unsigned *ld)
******************************************************************************************/
void write10(unsigned int page,unsigned int ch,unsigned int cl,const unsigned *ld)
{
unsigned int loop4;
wr_led(page);
wr_led(ch);
wr_led(cl);
wr_led(cl);
for(loop4=0;loop4<16;loop4++)
{ wr_leddat(*(ld+loop4)); }
page++;
wr_led(page);
wr_led(ch);
wr_led(cl);
wr_led(cl);
for(loop4=16;loop4<32;loop4++)
{ wr_leddat(*(ld+loop4)); }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -