|
最近转用了winavr 遇到了些问题,
我利用函数传递一个值过去进行显示。
可是传递过去后值是乱七八糟的,代码如下
有没有熟悉winavr的帮我看看
我使用 show_num(12345);显示出来的东西乱七八糟
如果在函数里面,直接赋值可以正常运行。
表示参数没有正确传递进去,
void show_num(uint16_t xx){
unsigned char a,b,c,d,e;
//xx=12345; //注:如果我在这里给xx赋值,什么问题都没有,显示很正常,表示下面代码都没有问题。
a=xx%10; //个位
b=xx/10%10; //十位
c=xx/100%10; //百位
d=xx/1000%10;//千位
e=xx/10000; //万位
if(e){
goto n5;
}else{
if(d){
goto n4;
}else{
if(c){
goto n3;
}else{
if(b){
goto n2;
}else{
goto n1;
}
}
}
}
n5:
lcd[18]=num1_table[e][0];
lcd[17]=num1_table[e][1];
n4:
lcd[16]=num1_table[d][0];
lcd[15]=num1_table[d][1];
n3:
lcd[14]=num1_table[c][0];
lcd[13]=num1_table[c][1];
n2:
lcd[12]|=num1_table[b][0];
lcd[11]=num1_table[b][1];
n1:
lcd[10]|=num1_table[a][0];
lcd[9]=num1_table[a][1];
} |
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|