free性丰满hd毛多多,久久综合给合久久狠狠狠97色69 ,欧美成人乱码一区二区三区,国产美女久久久亚洲综合,7777久久亚洲中文字幕

0
問答首頁 最新問題 熱門問題 等待回答標簽廣場
我要提問

msp430 與ds12cr887

用msp430配合ds12cr887(3.3v)配合做萬年歷,程序如下:
#include
#include "BoardConfig.h"
#include "subfuncs.h"
#include "dispdata.h"



uchar count,shi,fen,miao;
uchar day,date,month,year;
uchar s1num;

//數(shù)據(jù)口全部連P6

#define dscs_1 P3OUT|=BIT4//3.4
#define dscs_0 P3OUT&=~BIT4
#define dsas_1 P3OUT|=BIT5//3.5
#define dsas_0 P3OUT&=~BIT5
#define dsrw_1 P3OUT|=BIT6//3.6
#define dsrw_0 P3OUT&=~BIT6
#define dsds_1 P3OUT|=BIT7//3.7
#define dsds_0 P3OUT&=~BIT7
#define dsirq_1 P5OUT|=BIT3//5.3
#define dsirq_0 P5OUT&=~BIT3

//sbit beep=P2^3;


void init()
{
??P3DIR|=0xf0;//P3.4---P3.7 設置為輸出
??P5DIR|=BIT3;//P5.3 設置為輸出
}





void write_ds(uchar add,uchar dat)//向ds12c887 里面寫數(shù)據(jù),參量包括地址和數(shù)據(jù)
{
? ?
? ? dsas_1;
? ?? ???dsds_1;
? ?? ???dsrw_1;
? ? dscs_0;
? ?? ???P6DIR=0XFF;
? ? P6OUT=add;
? ?? ???
? ? dsas_0;//add 送入芯片內部
? ? dsrw_0;
? ?? ???
? ?? ???P6DIR=0XFF;
? ? P6OUT=dat;
? ?? ???
? ? dsrw_1;//數(shù)據(jù)送入芯片
? ? dsas_1;//恢復原狀
? ? dscs_1;//恢復原狀
}

uchar read_ds(uchar add)//讀取數(shù)據(jù)
{
? ? uchar ds_date;
? ?
? ? dsas_1;
? ? dsds_1;
? ? dsrw_1;
? ? dscs_0;
? ?? ???
? ?? ???P6DIR=0XFF;
? ? P6OUT=add;
? ?? ???
? ?
? ?
? ?? ???dsas_0;
? ? dsds_0;
? ?? ???
? ?? ???P6DIR=0XFF;
? ? P6OUT=0xff;
? ?? ???
? ?? ???P6DIR=0X00;
? ? ds_date=P6IN;
? ?? ???
? ? dsds_1;
? ? dsas_1;
? ? dscs_1;
? ?? ???return ds_date;
}

void set_time()
{
? ? write_ds(4,3);
? ? write_ds(2,29);
? ? write_ds(0,50);

? ? write_ds(6,7);
? ? write_ds(7,15);
? ? write_ds(8,10);
? ? write_ds(9,11);

}

void set_alarm(uchar ashi,uchar afen,uchar amiao)
{
? ? write_ds(1,amiao);
? ? write_ds(3,afen);
? ? write_ds(5,ashi);
}

void main()//主函數(shù)是反復執(zhí)行的。
{
? ?
? ?? ???WDTCTL = WDTPW + WDTHOLD;? ?? ?? ?? ?//關閉看門狗
? ?? ???Ini_Lcd();
? ?? ???init();
? ?? ???
? ?? ? write_ds(0x0A,0x20);// 設置日歷芯片起振
? ?? ???Delay_Nms(5);
? ?? ???write_ds(0x0B,0x26);// 設置格式
? ?? ???set_time();? ?
? ? while(1)
? ? {? ?
? ?? ?
? ?? ???miao=read_ds(0);
? ?? ???Delay_Nms(5);
? ?? ???fen=read_ds(2);
? ?? ???Delay_Nms(5);
? ?? ???shi=read_ds(4);
? ?? ???Delay_Nms(5);;
? ?? ???day=read_ds(6);
? ?? ???Delay_Nms(5);
? ?? ?? ?? ?? ?
? ?? ???date=read_ds(7);
? ?? ???Delay_Nms(5);
? ?? ???month=read_ds(8);
? ?? ???Delay_Nms(5);
? ?? ???year=read_ds(9);
? ?? ???Delay_Nms(5);
? ?? ?? ?? ?? ?
? ?? ???write_sfm(0x8c,miao);
? ?? ???write_sfm(0x8a,fen);
? ?? ???write_sfm(0x88,shi);

? ?? ???write_sfm(0x90,year);
? ?? ???write_sfm(0x92,month);
? ?? ???write_sfm(0x94,date);
? ?? ???write_sfm(0x86,day);
? ? }
}

遇到問題如下:
1.我在12864液晶上顯示年月日,時分秒,但是秒鐘總是馮7變0,如此兩次后,遇到7會變24,然后遇到39后,跌落到32。。。。。。但是,分鐘顯示正常,60秒就會加一。
2.set_time()這個函數(shù)設置芯片的起始時間,時分秒的起始時間已經(jīng)在液晶上正常呈現(xiàn)。但是,年月日的起始時間卻不對,很不解為什么。因為大家也看到了,我設置年月日,時分秒的方式其實是一樣的。

先謝謝各位大牛!
提問者:殺狼000 地點:- 瀏覽次數(shù):588 提問時間:07-09 07:26
我有更好的答案
提 交
撰寫答案
提 交
1 / 3
1 / 3