我的問題沒有敲完,假設我想通過51傳1011 1001給74hc595,,首先將1011 1001右移七位,變為0000 0001并送進串行輸入口,移位寄存器來一個上升沿,這時QA=0,QB=1,QC=QD=...=QH=0,然后將1011 1001左移一位變為0111 0010,同樣的方法將0111 0010右移七位成0000 0000,并送進串行輸入口,移位寄存器來一個上升沿,這時QA=...=QH=0,那么之間的QB = 1跑到哪里去了?我這種想法是認為595的串行輸入口是按字節輸入的,但其實串行輸入口是按位輸入的,可C51不是8位單片機嗎?它的IO口不應該可以輸出一個字節的數據嗎?而且dat<<7本身也是一個字節的數,然后通過單片機引腳輸入進595中,為啥595只會接收一個字節中的最低位? |