[quote=永远的fm]!!!xcr所言极是。
一个1602最多可以定义7个自定义字符。其实定义3个就够了(一竖,两竖,三竖)。我想知道怎么把这三种竖线组合成信号条图形。[/quote]
每个格有4种状态,即:无、1竖、2竖、3竖
所以16个格共有4×16=64种状态,256/64=4 (每种状态表示的ad值单位数量)
你ad转换出来的结果只要除以4,就是状态值。不过应该不用查表,可以这样:
ad/=4; //(ad转换的结果先转换成状态值)
x=ad/4; //要显示的“3竖”的个数(x)
y=ad%4; //最后一个要显示的字符(即空格或自定义字符1、2、3)(y=a/b/c/d)
最后的结果是:
1、先显示x个3竖字符(自定义的)
2、再显示一个y字符(也是自定义的,具体是哪一个,有上面的计算结果得出)
3、最后,记住在后面显示(16-x-1)个空格,以清除本行上一次可能显示出来的内容