2446|2

75

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

帮助 注释下这几段代码,在线等待散分了!!! [复制链接]

1:TCL1543驱动子程序
#define CLOCK P1_3
#define D_IN P1_4
#define D_OUT P1_5
#define _CS P1_6
uint read1543(uchar port)  //从TLC1543读取采样值,形参port是采样的通道号
{
uint data ad;uint data i;
uchar data al=0,ah=0;

CLOCK=0;
_CS=0;
port<<=4;
for (i=0;i<4;i++) //把通道号打入1543
{
D_IN=(bit)(port&0x80);CLOCK=1;CLOCK=0;
port<<=1;
}

for (i=0;i<6;i++) //填充6个CLOCK
{
CLOCK=1;CLOCK=0;
}

_CS=1;_nop_();_nop_();_CS=0; //等待AD转换

for (i=0;i<2;i++) //取D9,D8
{
D_OUT=1;
CLOCK=1;
ah<<=1;
if (D_OUT) ah|=0x01;
CLOCK=0;
}

for (i=0;i<8;i++) //取D7--D0
{
D_OUT=1;
CLOCK=1;
al<<=1;
if (D_OUT) al|=0x01;
CLOCK=0;
}

_CS=1;

ad=(uint)ah;ad<<=8;ad|=al; //得到AD值
return (ad);
}

2:数码管显示程序

#include
#include
unsigned char data dis_digit;
unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0, // 0, 1, 2, 3
0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};// 4, 5, 6, 7, 8, 9, off
unsigned char data dis_buf[8];
unsigned char data dis_index;

void main()
{
P0 = 0xff;
P2 = 0xff;
TMOD = 0x01;
TH0 = 0xFC;
TL0 = 0x17;
IE = 0x82;

dis_buf[0] = dis_code[0x1];
dis_buf[1] = dis_code[0x2];
dis_buf[2] = dis_code[0x3];
dis_buf[3] = dis_code[0x4];
dis_buf[4] = dis_code[0x5];
dis_buf[5] = dis_code[0x6];
dis_buf[6] = dis_code[0x7];
dis_buf[7] = dis_code[0x8];

dis_digit = 0xfe;
dis_index = 0;

TR0 = 1;
while(1);

}

void timer0() interrupt 1

// dis_index --- 显示索引, 用于标识当前显示的数码管和缓冲区的偏移量
// dis_digit --- 位选通值, 传送到P2口用于选通当前数码管的数值, 如等于0xfe时,
// 选通P2.0口数码管
// dis_buf --- 显于缓冲区基地址
{
TH0 = 0xFC;
TL0 = 0x17;

P2 = 0xff; // 先关闭所有数码管
P0 = dis_buf[dis_index]; // 显示代码传送到P0口
P2 = dis_digit; //

dis_digit = _crol_(dis_digit,1); // 位选通值左移, 下次中断时选通下一位数码管
dis_index++; //

dis_index &= 0x07; // 8个数码管全部扫描完一遍之后,再回到第一个开始下一次扫描
}


帮个朋友、寻网络上的朋友给点指点!!!


最新回复

晕倒 还gf???  详情 回复 发表于 2009-4-3 11:06
点赞 关注

回复
举报

60

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
jf
 
 

回复

98

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
晕倒 还gf???
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表