找回密码
 立即注册

QQ登录

只需一步,快速开始

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

AVR单片机通过74HC595驱动数码管显示源码 原理图及proteus仿真

[复制链接]
跳转到指定楼层
楼主
一个很简单的avr单片机的仿真,用74hc595芯片来驱动单个数码管显示数字,下面是仿真原理图

源程序:
  1. #include<iom16v.h>
  2. #include<macros.h>
  3. void delay(int k){
  4.          int i=0,j=0;
  5.          for(i=0;i<k;i++){
  6.              for(j=0;j<6;j++){
  7.                     ;
  8.                 }
  9.          }
  10. }

  11. void InputData(unsigned char data){
  12.          unsigned char i;
  13.          unsigned char k;
  14.          for(i=0;i<8;i++){
  15.             PORTB=~BIT(0);
  16.                 delay(20);  
  17.                 PORTC=(data>>i)&0x01;         
  18.                 delay(20);
  19.                 PORTB=BIT(0);
  20.                 delay(20);
  21.         }
  22. }
  23. void OutData(void){
  24.          PORTD=~BIT(0);
  25.          delay(40);
  26.          PORTD=BIT(0);                          //上升沿送到锁存器
  27.          delay(40);
  28.          PORTD=~BIT(0);            //锁存显示
  29. }
  30. void main(){
  31.          unsigned char i,j;
  32.          unsigned char temp=0x0f;
  33.          
  34.          unsigned char str[8]={0xfc/*0*/,0x60/*1*/,0xda,/*2*/0xf2/*3*/,0x66/*4*/,0xb6/*5*/,0xbe/*6*/,0xe0/*7*/};
  35.          DDRB=0XFF;
  36.          DDRC =0XFF;
  37.          DDRD=0XFF;         
  38.          while(1){                  
  39.                  for(i=0;i<8;i++){
  40.                     InputData(str[i]);
  41.                         OutData();
  42.                         delay(9000);
  43.                         delay(9000);
  44.                         delay(9000);
  45.                         delay(9000);
  46.                         delay(9000);
  47.                         delay(9000);
  48.                         delay(9000);
  49.                         delay(9000);
  50.                         delay(9000);
  51.                         delay(9000);
  52.                         delay(9000);
  53.                         delay(9000);
  54.                         delay(9000);
  55.                         delay(9000);
  56.                         delay(9000);
  57.                         delay(9000);
  58.                         delay(9000);
  59.                         delay(9000);
  60.                 }  
  61.          }
  62. }
复制代码



所有资料下载:
74hc595仿真.zip (98.73 KB, 下载次数: 65)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:86853 发表于 2018-4-25 17:42 | 只看该作者
谢谢分享,下载学习了。。。
回复

使用道具 举报

板凳
ID:339056 发表于 2018-5-27 14:11 来自手机 | 只看该作者
请问595怎么驱动一个四位数码管啊 很急!求帮助!!!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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