找回密码
 立即注册

QQ登录

只需一步,快速开始

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

4094级联

[复制链接]
跳转到指定楼层
楼主
ID:26857 发表于 2010-11-14 14:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

请教4094级联问题在哪儿???

程序:

#include<reg52.h>
#include<absacc.h>
#include<intrins.h>

#define uchar unsigned char
#define uint unsigned int

sbit sda=P2^0;
sbit sck=P2^1;
sbit rck=P2^2;

uchar code led[10]={0xfc,0x60,0xdb,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6}; //"0,1,2,3,4,5,6,7,8,9"
uchar code pos[5]={0x08,0x10,0x20,0x40,0x80};
char data dis_data[5]={0,0,0,0,0};  //显示数据
/*void delay2ms()
{
 unsigned char a,b,c;
 for(a=0;a<2;a++)
 for(b=0;b<3;b++)
 for(c=0;c<220;c++);
} */     
void delay(uint k)
{
 uint m,n;
 for(m=k;m>0;m--)
  for(n=0;n<125;n++);
}
void disply()
{
 unsigned char num,n,date;
 for(num=0;num<5;num++)
  {
   
   //将位数据写入4094
   date=pos[num];
   for(n=0;n<8;n++)
   {
    date=date<<1;
    sda=CY;
    sck=0;
    _nop_();
    _nop_();
    sck=1;    
   }
   //将段数据写入4094
   date=led[dis_data[num]];
   for(n=0;n<8;n++)
   {
    date=date<<1;
    sda=CY;
    sck=0;
    _nop_();
    _nop_();
    sck=1;//上升沿发生位移
        
   }
   
   //数据输出
   rck=0;
   _nop_();
   _nop_();
   rck=1;

   //delay2ms();
   delay(300);
   
  }

}

void main()
{
 long dis_data1;
 while(1)
 {
     
   dis_data1=65432;
      
   
    dis_data[4]=(dis_data1%100000)/10000;  
   dis_data[3]=(dis_data1%10000)/1000;
   dis_data[2]=(dis_data1%1000)/100;
   dis_data[1]=(dis_data1%100)/10;
   dis_data[0]=dis_data1%10;
   
   disply();
 }
 
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:66501 发表于 2015-6-8 15:24 | 只看该作者
掘墓高手,专挖古墓,一挖一个坑,坑坑见墓。。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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