被选中的那一行需要改为
ips200_showchar((uint16)(x+(8*(i+1))), (uint16)(y*16),(int8)('0' + a[i]));
原因是如果竖屏使用ips屏幕那么就会有320行,显然超出了uint8上限,使用uint8导致调用这个函数的时候只能在前255行显示
(浪费了我两个小时时间啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊,我怀疑过我代码的问题,怀疑过编译器优化等级的问题,怀疑过芯片的问题,怀疑过屏幕的问题,结果是库函数的问题,逐飞你太让我失望了)