导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→c51的问题

* 56506: c51的问题

   ieqyd 
ieqyd发表的帖子 

 c51的问题

/*c51的问题。单片机是AT89S8252,接口芯片8279*/
/*想在LED最低位静态地显示一位数。*/
/*现在的问题是,不管段码数组DisSeg[]={}中是什么数,*/
/*最低位的LED都显示8,且测量得p0口都为高电平。*/
/*不知错在哪里?谢谢!*/
#include   <absacc.h>    /*包含绝对地址访问头文件*/
#define StaPort 0x7FFF /*定义8279的命令端口地址*/
#define DataPort 0x3FFF /*定义8279的数据端口地址*/
char xdata DisBuf[8];  /*显示缓冲区*/
char code DisSeg[]={0x01};  /*显示段码*/

void KbDisInit() {
     XBYTE[StaPort]=0x08; /*设置8279的工作方式*/
     XBYTE[StaPort]=0x2A; /*8279分频系数*/
     XBYTE[StaPort]=0xD1; /*清除8279显示RAM*/
     while(XBYTE[StaPort]&0x80); /*等待清除结束*/
}

 

void KeyShift() {  /*从显示缓冲区取数并显示*/
 unsigned char i=0; 
 XBYTE[StaPort]=0x80;
   XBYTE[DataPort]=DisSeg[DisBuf[i]];
}

 

void main()  {
  KbDisInit();
   KeyShift();
}

发表时间:2004年6月14日11:08:47

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:[求助]急问单片机串口多机通信方面的一个问题我用8251A扩展了一个单片机串口,用这个串口来和多个从
[下一篇帖子]:跪求lattice isplever3.0.跪求lattice isplever