片上电子信息系统,基于EDA的FPGA,串口通信及串口中断 联系客服

发布时间 : 星期一 文章片上电子信息系统,基于EDA的FPGA,串口通信及串口中断更新完毕开始阅读2cbd6a4ee45c3b3567ec8bd2

in=XUartLite_RecvByte(0x84000000); a[i]=in; i++; }while(in!=0x0A);//以回车结束,含空格及回车 j=--i;//最后一位为回车调到会车前 for(i=0;i

if(a[i]!=0x20) {a1[k]=a[i];//去空格 k++; } k--; a2[0]=a1[0]-48;//ascii转换十进制,第一位特殊 h++; 从第二个数开始符合公式前一个 h++; } h--; 判断是否结果大于9 if(out[q]!=48)//判断是否结果大于9 XUartLite_SendByte(0x84000000,out[q]+48); out[++q]=a2[i]; XUartLite_SendByte(0x84000000,out[q]+48); XUartLite_SendByte(0x84000000,0x20); q++; } 25

//附,十进制,百进制输入程序,输出未能实现

while(c=XUartLite_RecvByte(0x84000000)!='\\n') {

if(c!=0x20)//判断是否为回车或者后退,如不是则为真 {i=c-'0'; a[j]=i; j=j+1; } else if(c==0x20)//如果是空格 { k=j;j=0; if (k==3)//判断位数并进行转换 {q=a[0]*100+a[1]*10+a[2]; b[h]=q; h=h+1; } else if (k==2) {q=a[0]*10+a[1]; b[h]=q; h=h+1; } else if (k==1) {q=a[0]; b[h]=q; h=h+1; } else {q=0;}//若没有输入则位数为0,此时将值置0 } else if(c=='\\n')//如果是回车 { }//什么都不做 }

26

实验结果:当输入为两个数时结果如下:

当输入为三个数时结果如下:

27

当输入为四个数时结果如下:

28