找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4900|回复: 1
打印 上一主题 下一主题
收起左侧

74LS165联级proteus仿真+单片机C程序

[复制链接]
跳转到指定楼层
楼主

所有资料打包下载:
74LS165测试版本.zip (87.81 KB, 下载次数: 52)

小弟在网上苦寻级联程序都不得,好不容易找到了,结果测试不能用,于是自己做了个,希望各位下载后,能够继续将自己的上传,大家共同进步,以下程序和仿真都是我亲自完成,如有不解可联系本人,
412489601@qq.com不吝赐教*/

下面是proteus仿真原理图:


单片机c语言源程序:
  1. /****************************************Copyright (c)**************************************************                           
  2. **                                    
  3. ** -----------------------------------------------------------------------------------------------------
  4. ** File Name    : 74LS165.C
  5. ** Version      : V1.0.0
  6. ** Description  :                                 
  7. * 【外部晶振】: 11.0592mhz        
  8. * 【主控芯片】: STC89C52
  9. * 【编译环境】: Keil μVisio4        
  10. * 【程序功能】:                                                                                                   
  11. * 【使用说明】:
  12. ** -----------------------------------------------------------------------------------------------------
  13. ** Author       : Creavalia
  14. ** Date         : 2015年10月19日
  15. ** -----------------------------------------------------------------------------------------------------
  16. ** Modify Person:
  17. ** Modify Date  :
  18. ** Description  :
  19. *********************************************************************************************************/
  20. // Includes --------------------------------------------------------------------------------------------
  21. #include<reg51.h>
  22. #include<intrins.h>
  23. /********************************************************************************************************
  24. **                         Marcos define
  25. *********************************************************************************************************/
  26. #define uint  unsigned int
  27. #define uchar unsigned char

  28. //IO设置
  29. sbit QH    = P3^0;         //输出端
  30. sbit CLK   = P3^1;  //时钟输入端(上升沿有效)
  31. sbit SPL   = P3^2;  //移位控制/置入控制(低电平有效)        
  32. /********************************************************************************************************
  33. * Function Name  : read_int165
  34. * Description    : 接收数据
  35. * Input          : None
  36. * Output         : None
  37. * Return         : None
  38. ********************************************************************************************************/                     
  39. uint read_int165(void)
  40. {
  41.   uchar i  = 0;
  42.   uint read_data = 0;

  43.   SPL           = 0;          //置数,读入并行输入口数据        
  44.   _nop_();
  45.   SPL           = 1;                 //移位,并口输入被封锁,串行转换开始
  46.   _nop_();


  47.   for(i=0;i<16;i++)        //16位数据
  48.   {
  49.      read_data <<= 1;
  50.      if(QH)
  51.          {
  52.                  read_data|=QH;
  53.          }
  54.              CLK=0;           //下降沿      
  55.              _nop_();
  56.             CLK=1;           //上升沿      
  57.              _nop_();
  58.   }
  59.   return read_data;
  60. }
  61. /********************************************************************************************************
  62. * Function Name  : main
  63. * Description    : 主函数
  64. * Input          : None
  65. * Output         : None
  66. * Return         : None
  67. ********************************************************************************************************/
  68. void main()
  69. {
  70.   //初始化
  71.   uint  temp  = 0;
  72.   uchar tempH = 0;
  73.   uchar tempL = 0;
  74.   CLK=0;
  75.   while(1)
  76.   {
  77.     temp  = read_int165();
  78.         //获取高8位,存放置tempH
  79.     tempH = (uchar) (temp>>8);
  80.         //获取低8位,存放置tempL
  81.     tempL = (uchar) temp;

  82.     P0=tempH;  //接收到的字节显示在P0 端口,显示的值与拨码开关对应
  83.     P1=tempL;  //接收到的字节显示在P1 端口,显示的值与拨码开关对应
  84.   }
  85. }
  86. /*********************************************************************************************************
  87. **                            End Of File
  88. ********************************************************************************************************/
复制代码
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:326529 发表于 2018-5-10 10:57 | 只看该作者
此帖仅作者可见

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表