一个IO只能作为串行输出口,你的片选DS之类怎么控制?
所以要么你的情况只保证有串行输出,其他控制用其他方式完成。
首先尝试去掉定时器中断,将别的程序全部关掉,只在主循环里面对595进行操作,看数据是否正确
如果正确,就要排查是不是中断导致写入595的数据不正确
如果显示不正确,那就是往595写入的数据不对,检查显示部分的程序