標題: 74hc595使用方法與單片機驅動源程序 [打印本頁]
作者: xiaowuya07 時間: 2018-6-10 22:42
標題: 74hc595使用方法與單片機驅動源程序
雖然這玩意不復雜,但是在網上看了很多資料還是眼花,簡單的說一下工作原理:
DS是數據傳遞數據口,DS傳遞一次后SH_CP進行一次上升沿串行數據發生位移,ST_CP發生一次上升沿完成數據發送,即串行轉并行。下圖中的Q7’可以接下一個595的DS口,也可以不接。當完成8次數據傳輸的話多出的數據就從Q7’就從傳入下一個595。MR低電平清除數據,圖中接正極。OE相當于開關,低電平輸出有效,高電平并行口為高阻態,圖中接負極。然后原理圖和代碼放在旁邊,證明一下理論。
旁邊的是實物圖,比原理圖多處兩個引腳,原理圖省略的是電源正負極。
-
1.jpg
(14.07 KB, 下載次數: 86)
下載附件
2018-6-10 22:41 上傳
-
2.jpg
(8 KB, 下載次數: 87)
下載附件
2018-6-10 22:41 上傳
-
3.jpg
(11.2 KB, 下載次數: 82)
下載附件
2018-6-10 22:41 上傳
作者: xiaowuya07 時間: 2018-6-10 22:45
-
-
74hc595.zip
2018-6-10 22:44 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
138.52 KB, 下載次數: 78, 下載積分: 黑幣 -5
作者: 51hei團團 時間: 2018-6-12 03:58
很有用,收藏
作者: KM民 時間: 2020-3-11 12:43
想了很久沒想懂為什么上面傳給第二個74HC595下面傳給第一個
作者: 92pk 時間: 2020-3-12 11:35
這個級聯仿真是有bug的,比如運行到這一步
send_data_74hc595(0x00);
send_data_74hc595(0xff);
show_74hc595();
應該是上面八個燈亮下面八個燈全部滅,但仿真的時候卻是上面八個亮之外,下面的Q0輸出的燈也是亮的。
解決辦法
在電路上將
SH_CP1和SH_CP2直接相連
ST_CP1和 ST_CP2 直接相連
程序上
只用SH_CP1和ST_CP1來進行控制
作者: 完完全全 時間: 2020-3-14 10:52
贊一個,對頭!多動手
作者: xuxinhd 時間: 2020-10-27 19:17
很通俗易懂 ,感謝
作者: xuxinhd 時間: 2020-10-27 19:18
多級擴展 ,比如LED顯示屏
作者: dxfggggg 時間: 2021-2-19 13:35
如果只驅動一個74hc595呢
作者: 啤酒瓶子老大 時間: 2021-2-20 15:29
驅動一個595?你是要串轉并嗎?
作者: zhuming 時間: 2021-2-20 19:32
有更簡潔的代碼
void wttype(u8 v)
{
u8 x;
CLR=1;
RCK=0;
for (x=0x80;x!=0;x>>=1)
{
SCK=1;
SI=(v&x)? 1:0 ;
SCK=0;
}
RCK=1;
}
作者: NenPeng 時間: 2021-4-26 08:45
不是上升沿有效嗎?
作者: NenPeng 時間: 2021-4-26 10:58
我想應該是上升沿有效吧?你這個如果我沒搞錯的話是下降沿喲
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |