日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

c语言万历年系统设计报告,C语言编写单片机万历系统课程设计报告分.doc

發布時間:2025/3/19 windows 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言万历年系统设计报告,C语言编写单片机万历系统课程设计报告分.doc 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

多功能電腦時鐘設計報告

一、實訓目的意義及任務要求

1.1目的意義

單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。LED數字顯示的日歷鐘顯示清晰直觀、走時準確、可以進行夜視,并且還可以擴展出多種功能。 所以,電子萬年歷無論作為比賽題目還是練習題目都是很有價值。

圖3.1 單片機最小系統圖

3.2 數碼管、獨立按鍵及DS1302時鐘芯片電路的設計

系統仿真電路圖

DS1302與單片機連線圖

3.3 其他附屬電路設計

按鍵、電頻轉換芯片、RS232串口通信及電源電路等設計,如圖3.3所示

圖3.3 附屬電路設計圖

四、軟件設計

4.1主程序設計

主程序采用定時器0對程序進行掃描執行。分別執行DS1302芯片初始化子程序,寫數據子程序,將最初的值寫入芯片中,采用while循環循環執行鍵盤掃描子程序。

main()

{

TMOD=0x01; //使用模式1,16位定時器

TH0=(65536-10000)/256; //給定初值

TL0=(65536-10000)%256;

EA=1; //總中斷打開

ET0=1; //定時器中斷打開

TR0=1; //定時器開關打開

Ds1302_Init();

Ds1302_Write_Time();

while(1)

{

keyscan();

if(Btread==0)

{ Btread=1;

Ds1302_Read_Time();

}

display();

}

4.2 DS1302子程序設計

此子程序分為初始化程序,讀數據程序,寫數據程序,一些數據程序為例;

void Ds1302_Write_Byte(unsigned char addr, unsigned char d)

{

CE=0;_nop_();

SCLK=0; _nop_();

CE=1; _nop_();

Write1302(addr);

Write1302(d);

CE=0; _nop_();

IO=1;

SCLK=1;

}分別寫入地址,再寫入數據。

4.3時間調整子程序

時間調整子程序采用的是對key1按的次數不同來進行對年月日時分及星期的設置。

void zongshi(void)

{

if(!key)

{

if(btx==0)

{

if(!key)

{

btx=1;k++; } } }else{btx=0;}} k=1時,調整年份,key1為加,key2為減

void keyscan() k=2時,調整月份,key1為加,key2為減

{ k=3時,調整日份,key1為加,key2為減

display(); k=4時,調整星期,key1為加,key2為減

if(!key)

{

if(btx==0)

{

if(!key)

{

btx=1;

k++;

}

}

五、調試及性能分析

5.1軟件測試

電子成年歷是多功能的數字型,可以看當前日期(陰、陽歷),時間,還有溫度的儀器。電子成年歷功能很多,所以對于它的程序也較為復雜,所以在編寫程序和調試時出現了相對較多的問題。最后經過多次的模塊子程序的修改,一步一步的完成,最終解決了軟件。在軟件的調試過程中主要遇到的問題如下:

1.燒入程序后,LED數碼管顯示閃動,而且亮度不均勻。

解決:首先對調用的延時進行逐漸修改,可以解決顯示閃動問題。其次,由于本作品使作動態掃描方式顯示的數字,動態掃描很快,人的肉眼是無法看出,但是調用的顯示程序時,如果不在反回時屏蔽掉最后的附值,則會出現很亮的現象,所以在顯示的后面加了屏蔽子令,最后解決了此問題。

2.修改時間、日期時沒有農歷沒有自動對應上。

解決:把不相關的程序暫時屏蔽,地農歷的子程序獨立調試,發現在調用農歷自動更新時,對十進制和十六進制處理不好,所以會造成錯亂。最后把相應的十進制進行修改,使得可以與十六進制對應,最后解決了此問題.

5.2測試結果分析與結論

(1).在測試中遇到發光二極管、LED數碼管為不顯示時,首先使用試測儀對電路進行測試,觀察是否存在漏焊,虛焊,或者元件損壞.

(2).LED 數碼管顯示不正常,還有亮度不夠,首先使用試測儀對電路進行測試,觀察電路是否存在短路現象。查看燒寫的程

總結

以上是生活随笔為你收集整理的c语言万历年系统设计报告,C语言编写单片机万历系统课程设计报告分.doc的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。