找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6049|回复: 1
收起左侧

单片机通过8255A和74LS245驱动数码管显示123 ABC实验 Proteus仿真和源代码

[复制链接]
ID:175881 发表于 2017-4-5 03:09 | 显示全部楼层 |阅读模式
单片机通过8255A和74LS245显示123 ABC实验的仿真原理图(proteus仿真工程文件可到本帖附件下载):

0.png

单片机通过8255A和74LS245驱动数码管显示源代码:
  1. #include<absacc.h>
  2. #include<reg51.h>
  3. #define  uchar  unsigned  char
  4. #define  uint  unsigned int
  5. #define  COM8255  XBYTE[0xbfff]
  6. #define  PA8255  XBYTE[0xbcff]
  7. #define  PB8255  XBYTE[0xbdff]
  8. #define  PC8255  XBYTE[0xbeff]
  9. uchar  data dis_buf[3];                                                        //显示缓冲区
  10. uchar  code  table[18]={0x06,0x5b,0x4f,0x77,0x7c,0x39};         //显示的代码表 1、2、3、A、B、C

  11. void  dl(uint  x )              //延时Xms
  12. {   uint  t1,t2;
  13.     for(t1=0; t1<x; t1++)
  14.     for(t2=0; t2<120; t2++) ;
  15. }
  16. void  display(void)                                                                //显示函数
  17. {        PA8255=table[dis_buf[0]];
  18.      PB8255=table[dis_buf[1]];
  19.      PC8255=table[dis_buf[2]];
  20. }
  21. void  main(void)
  22. {        COM8255=0x80;                                                        //8255A初始化
  23. while(1)  
  24. {        dis_buf[0]=0;dis_buf[1]=1;dis_buf[2]=2;                //显示123
  25.                 display( );         dl(500 );
  26.               dis_buf[0]=3;dis_buf[1]=4;dis_buf[2]=5;                //显示ABC
  27.               display( );         dl(500 );

复制代码

该系列源码包含有很多非常经典,代码风格十分规范,而且注释详细的单片机例程,还带仿真,对于MCU学习特别是初学者是很有帮助的,全部源码下载(共几十个项目):http://www.51hei.com/bbs/dpj-80575-1.html

0.png
本例程下载(含proteus仿真工程文件与源码):
单片机通过8255A和74LS245显示123 ABC实验.rar (16.84 KB, 下载次数: 74)
回复

使用道具 举报

ID:384562 发表于 2019-8-23 22:20 | 显示全部楼层
8255,嘿嘿
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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