⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io驱动74ls165.txt

📁 单片机端口扩展程序
💻 TXT
字号:
//-------------------------------------库函数声明,管脚定义----------------------------------------
#include <reg52.h>
sbit a7=ACC^7;
sbit simuseri_CLK=P1^6;		    //用P1^6模拟串口时钟
sbit simuseri_DATA=P1^5;          //用P1^5模拟串口数据
//-------------------------------------------------------------------------------------------------------
//  函数名称: in_simuseri
//  输入参数:无
//  输出参数:data_buf
//  功能说明:8位同步移位寄存器,将simuseri_DATA串行输入的数据按从低位到高位
//            保存到data_buf 
//--------------------------------------------------------------------------------------------------------
char in_simuseri(void)
 {	
	char i;
	char data_buf;
	i=8;
	do
	   {  
	   ACC=ACC>>1;
	   for(;simuseri_CLK==0;) ;
	   a7=simuseri_DATA;
	   for(;simuseri_CLK==1;) ;
	    }
while(--i!=0);
	simuseri_CLK=0;
	data_buf=ACC;
	return(data_buf);	
}
//-------------------------------------库函数声明,管脚定义----------------------------------------
sbit drive74165_LD=P1^7;		   
 //用P1^7控制SH/LD管脚

//-------------------------------------------------------------------------------------------------------
//  函数名称:PAs
//  输入参数:无
//  输出参数:PAs_buf,返回并行输入74LS165的数据
//  功能说明:直接调用,即可读取并行输入74LS165的数据,不需要考虑74LS165的
//  工作原理 
//--------------------------------------------------------------------------------------------------------
char PAs(void)
 {
char  PAs_buf;
drive74165_LD =0;     并行置入数据
drive74165_LD =1;     开始串行移位
PAs_buf= in_simuseri();
Return(PAs_buf);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -