74LS165功能簡(jiǎn)介
主要電特性如下:
工作原理:
當(dāng)移位\植入控制端(SH/LD)為低電平時(shí),并行數(shù)據(jù)(A-H)被置入寄存器,而時(shí)鐘(CLK,CLKINH)及串行數(shù)據(jù)(SER)均無(wú)關(guān)。當(dāng)SH/LD)為高電平時(shí),并行置數(shù)功能被禁止。CLK和CLKINK在功能上是等價(jià)的,可以交換使用。當(dāng)CLK和CLKINK有一個(gè)為低電平并且SH/LD為高電平時(shí),另一個(gè)時(shí)鐘可以輸入。當(dāng)CLR和CLKINK有一個(gè)為高電平時(shí),另一個(gè)時(shí)鐘被禁止。只有在CLK為高電平時(shí)CLKINK才可變?yōu)楦唠娖健?/p>
引出端符號(hào)
CLK; CLK INK 時(shí)鐘輸入端(上升沿有效)
A-H 并行數(shù)據(jù)輸入端
SER 串行數(shù)據(jù)輸入端
QH 輸出端
QH“ 互補(bǔ)輸出端
Sh/LD”移位控制/置入控制(低電平有效)
邏輯圖
單片機(jī)I/O端口驅(qū)動(dòng)74LS165電路
用I/O模擬移位寄存器的時(shí)序驅(qū)動(dòng)74LS165,實(shí)現(xiàn)并行數(shù)據(jù)的輸入。如下圖所示,P1.5被用于串行數(shù)據(jù)輸入,P1.6用于移位時(shí)鐘輸出,P1.7用來(lái)控制74LS165的工作狀態(tài)。
單片機(jī)I/O端口驅(qū)動(dòng)74LS165主要包括函數(shù)聲明管腳定義部分、數(shù)據(jù)輸入函數(shù)以及數(shù)據(jù)輸出函數(shù)。
74ls165級(jí)聯(lián)測(cè)試程序與proteus仿真電路圖
關(guān)于如何做74ls165級(jí)聯(lián)測(cè)試程序與proteus仿真電路圖,內(nèi)容請(qǐng)看下文:
下面是proteus仿真原理圖:
單片機(jī)c語(yǔ)言源程序:
/****************************************Copyright (c)**************************************************
**
** -----------------------------------------------------------------------------------------------------
** File Name : 74LS165.C
** Version : V1.0.0
** Description :
* 【外部晶振】: 11.0592mhz
* 【主控芯片】: STC89C52
* 【編譯環(huán)境】: Keil μVisio4
* 【程序功能】:
* 【使用說(shuō)明】:
** -----------------------------------------------------------------------------------------------------
** Author : Creavalia
** Date : 2015年10月19日
** -----------------------------------------------------------------------------------------------------
** Modify Person:
** Modify Date :
** Description :
*********************************************************************************************************/
// Includes --------------------------------------------------------------------------------------------
#include《reg51.h》
#include《intrins.h》
/********************************************************************************************************
** Marcos define
*********************************************************************************************************/
#define uint unsigned int
#define uchar unsigned char
//IO設(shè)置
sbit QH = P3^0; //輸出端
sbit CLK = P3^1; //時(shí)鐘輸入端(上升沿有效)
sbit SPL = P3^2; //移位控制/置入控制(低電平有效)
/********************************************************************************************************
* Description : 接收數(shù)據(jù)
* Input : None
* Output : None
* Return : None
********************************************************************************************************/
uint read_int165(void)
{
uchar i = 0;
uint read_data = 0;
SPL = 0; //置數(shù),讀入并行輸入口數(shù)據(jù)
_nop_();
SPL = 1; //移位,并口輸入被封鎖,串行轉(zhuǎn)換開(kāi)始
_nop_();
for(i=0;i《16;i++) //16位數(shù)據(jù)
{
read_data 《《= 1;
if(QH)
{
read_data|=QH;
}
CLK=0; //下降沿
_nop_();
CLK=1; //上升沿
_nop_();
}
return read_data;
}
/********************************************************************************************************
* Function Name : main
* Description : 主函數(shù)
* Input : None
* Output : None
* Return : None
********************************************************************************************************/
void main()
{
//初始化
uint temp = 0;
uchar tempH = 0;
uchar tempL = 0;
CLK=0;
while(1)
{
temp = read_int165();
//獲取高8位,存放置tempH
tempH = (uchar) (temp》》8);
//獲取低8位,存放置tempL
tempL = (uchar) temp;
P0=tempH; //接收到的字節(jié)顯示在P0 端口,顯示的值與撥碼開(kāi)關(guān)對(duì)應(yīng)
P1=tempL; //接收到的字節(jié)顯示在P1 端口,顯示的值與撥碼開(kāi)關(guān)對(duì)應(yīng)
}
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
74ls165相關(guān)文章:
74ls165應(yīng)用電路圖大全(三款74ls165應(yīng)用電路)
74ls165中文資料匯總(74ls165引腳圖及功能_工作原理及應(yīng)用電路)
74ls165相關(guān)下載:
評(píng)論
查看更多