教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

《单片机原理与应用》课程实验报告格式(8)

来源:网络收集 时间:2026-02-16
导读: /**********子函数部分**********/ void delay_ms() { uchar i,j; for(i=0;i for(j=0;j void DS1302_InputByte(uchar ucDa) //写入1byte数据 { uchar i; uchar temp; temp=ucDa; for(i=8;i>0;i--) { T_IO=temp T_CL

/**********子函数部分**********/ void delay_ms() {

uchar i,j;

for(i=0;i<2;i++)

for(j=0;j<248;j++); }

void DS1302_InputByte(uchar ucDa) //写入1byte数据 {

uchar i; uchar temp; temp=ucDa; for(i=8;i>0;i--) {

T_IO=temp&0x01; T_CLK=1; T_CLK=0;

temp=temp>>1; } }

uchar DS1302_OutputByte(void) //读取1byte数据 {

uchar i; uchar temp; temp=0;

for(i=0;i<8;i++) {

T_CLK=0;

if(T_IO!=0)temp|=(1<

return(temp); }

void DS1302_W1302(uchar ucAddr,uchar ucDa) //写入数据,输入 :据 {

T_RST=0; T_CLK=0; T_RST=1;

DS1302_InputByte(ucAddr); DS1302_InputByte(ucDa); T_CLK=1; T_RST=0;

ucAddr:地址, ucDa:数34

}

uchar DS1302_R1302(uchar ucAddr) //读取DS1302某地址的数据 {

uchar ucDa; T_RST=0; T_CLK=0; T_RST=1;

DS1302_InputByte(ucAddr); ucDa=DS1302_OutputByte(); T_CLK=1; T_RST=0; return(ucDa); }

void DS1302_Get1302(uchar ucCurtime[]) {

uchar i;

uchar ucAddr=0x81; for(i=0;i<7;i++) {

ucCurtime[i]=DS1302_R1302(ucAddr); ucAddr+=2; } }

void DS1302_Set1302(uchar *pSecDa) {

uchar i;

uchar ucAddr=0x80;

DS1302_W1302(0x8e,0x00); for(i=7;i>0;i--) {

DS1302_W1302(ucAddr,*pSecDa); pSecDa++; ucAddr+=2; }

DS1302_W1302(0x8e,0x80); }

void BCD_Num(uchar BCD,uchar ptasc[]) {

uchar num;

num=(BCD&15)+((BCD>>4)*10); ptasc[0]=num/10; ptasc[1]=num; }

void display(uchar time[])

35

{

uchar i,asc[2];

uchar line[15]={2,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

uchar led[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar

table[15]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x01,0x02,0x04,0x08,0x10,0x20,0x40};//数码管地址为的选择 for(i=0;i<5;i++) {

BCD_Num(time[i],asc); line[12-2*i]=asc[0]; line[13-2*i]=asc[1];

} BCD_Num(time[6],asc); line[2]=asc[0]; line[3]=asc[1];

BCD_Num(time[5],asc); line[14]=asc[1]; for(i=0;i<15;i++) {

P2=0xff;

P2=led[line[i]]; if(i<=7){P1=table[i];P0=0x00;} else{P1=0x00;P0=table[i];} delay_ms(); } }

/**********主函数部分**********/ void main(void) {

DS1302_W1302(0x80,0x00); DS1302_Set1302(settime); while(1) {

DS1302_Get1302(gettime); delay_ms(); display(gettime); } }

36

《单片机原理与应用》课程实验报告格式(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/402854.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)