标题: 74hc165使用教程适合初学者 [打印本页]

作者: 2500    时间: 2016-10-28 14:57
标题: 74hc165使用教程适合初学者
#include<reg52.h>
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
sbit SHLD=P1^7;   //1脚SH/LD移位控制/置入控制(低电平有效)
sbit CLK=P1^6;   //2脚CLK,CLK INH时钟输入端(上升沿有效)
sbit QH=P1^5;   //9脚QH输出端
uint data1=0,
     data2=0;
                 data3=0;
void XD_74hc165_Readdata(void)  
{
uchar i;         //位移时使用
unsigned char
readdata1,
readdata2,
readdata3;//获取数据时使用
readdata1 = 0x00; //初始值
readdata2 = 0x00;
readdata3 = 0x00;

SHLD=0;                 //将165外部端口数据装入内部寄存器        置入控制端口(低电平有效)
_nop_();
SHLD=1;                 //抬高为移位准备  移位控制(高电平有效)
/****************读取第一个74HC165***************************************************/
for(i=0;i<8;i++)        //移动8位字节
         {
    readdata1<<=1;    //每次左移一位
                CLK=0;          //时钟低
                _nop_();
                readdata1|=QH;                        //先接收高位
          CLK=1;                            //时钟高,上升沿下一个数据移出
                _nop_();
   }
/****************读取第二个74HC165***************************************************/
for(i=0;i<8;i++)        //移动8位字节
         {
   readdata2<<=1;    //每次左移一位
         CLK=0;          //时钟低
         _nop_();
         readdata2|=QH;                        //先接收高位
         CLK=1;                            //时钟高,上升沿下一个数据移出
         _nop_();
   }
/****************读取第三个74HC165***************************************************/
for(i=0;i<8;i++)        //移动8位字节
         {
   readdata3<<=1;    //每次左移一位
         CLK=0;          //时钟低
         _nop_();
         readdata3|=QH;                        //先接收高位
         CLK=1;                            //时钟高,上升沿下一个数据移出
          _nop_();
   }
                       

         data1=readdata1;      //返回接收字符
         data2=readdata2;
         data3=readdata3;
}

void main()
{
XD_74hc165_Readdata();
while(1)
   {
   P2=data1;                 //显示
         P3=data2;
         P0=data3;
   }
}
[attach]3[/attach]



165.rar

74.45 KB, 下载次数: 29, 下载积分: 黑币 -5


作者: 骚年    时间: 2017-4-8 09:37
有没有级联图





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1