freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

多功能電子時鐘設(shè)計-免費閱讀

2025-07-23 23:14 上一頁面

下一頁面
  

【正文】 } else if(function_count==5) { if(clk_hour==0) clk_hour=24。 } if(function_count==2) { if(min==0) min=60。 write_byte(WRITE_MONTH_ADD,hex2bcd[month])。 if(clk_min=60) //分鐘加滿60自動置0; clk_min=0。 write_byte(WRITE_SEC_ADD,hex2bcd[sec])。0xFF。 PUSH=P2amp。 bit flash_flag。 //讀DS1302 sec min = bcd2hex[read_byte(READ_MIN_ADD)]。 date for default value */{ reset_3w()。 /* must write control register in burst mode */ reset_3w()。 //寫多字節(jié)傳送模式寄存器 wbyte_3w(hex2bcd[sec])。 R_Byte |= TmpByte。 IO = 1。 0x01) { IO = 1。void reset_3w() / /復(fù)位子程序{ SCLK = 0。void ds1302_init()。extern void write_byte (uchar Clock_Add,uchar Clock_Data)。uchar hour=14。uchar rbyte_3w()。 //初始化鬧鈴管腳;while(1) //循環(huán); { key_task()。atime。void ds1302_init()。void dis()。 //定義確認/;sbit Alarm=P2^1。 //74LS164的A;sbit CLK=P1^1。隨著生產(chǎn)力的發(fā)展,社會的進步,生產(chǎn)生活對時鐘的需求越來越大,對時鐘的體型、功能的要求也各有不同。將這三部分調(diào)試成功,那么整個設(shè)計的軟件部分也就基本完成了。上電后LED數(shù)碼管顯示“142800”,之后開始走時。2. 注意電源正負極連接。 CLK=0。gsb7。 disp_buffer[0]=tab[0]。unsigned char tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f }。5. 編寫一段顯示程序,燒錄進單片機,、。 delay()。k0。筆者在制作外部接口電路時使用的是排針,焊接時容易出現(xiàn)管腳之間短路,所以在上電以前必須先排查電路。然后,要準備好調(diào)試的工具。還有一種方式,即應(yīng)用仿真軟件搭建電路的軟件平臺,再導(dǎo)入程序進行仿真調(diào)試。 顯示子程序流程圖 鬧鈴子程序流程圖圖和圖標要在同一頁!第五章 系統(tǒng)調(diào)試調(diào)試工作分硬件調(diào)試和軟件調(diào)試兩部分,調(diào)試方法介紹如下:首先,硬件調(diào)試主要是先搭建硬件平臺,然后利用萬用表等工具對電路檢查,最后應(yīng)用程序進行功能調(diào)試。不管有沒有鍵入操作,CPU總要在一定的時間內(nèi)進行掃描,這對于單片機控制系統(tǒng)是很不利的。關(guān)鍵之處是要實現(xiàn)根據(jù)鍵值顯示不同的數(shù)字。在讀寫操作子程序中都執(zhí)行了關(guān)中斷指令,因為在串行通信時對時序要求比較高,而且在此是用I/O口軟件模擬串行時鐘脈沖,所以在通信過程中最好保證傳輸?shù)倪B續(xù)性,不要允許中斷。匯編語言與機器指令一一對應(yīng)所以用匯編語言編寫的程序在單片機里運行起來效率較高。RST端的外部復(fù)位電路有兩種操作方式:上電自動復(fù)位和按鍵手動復(fù)位。當(dāng)響鈴標志位為“1”時,使蜂鳴器U11發(fā)出聲音[16]。不過該方法只能做一些簡單音樂,并且音樂程序會占用很多單片機存儲資源。例如:校對小時狀態(tài),每按一下,小時位加1,當(dāng)加至小時最高值23時,再按K4鍵,小時位回0。 鍵盤電路其中KKK7為帶自鎖按鍵,每次按下后,、從高電平被拉至低電平。關(guān)于74LS164的具體編程方法,[14][15]。LED顯示分動態(tài)顯示和靜態(tài)顯示:動態(tài)顯示方式的硬件電路簡單。如圖,上電后。由于此電子時鐘要求具有鬧鈴功能,所以設(shè)計有鬧鈴電路,進行聲音響鈴。當(dāng)BIT6為“0”時對RAM區(qū)進行尋址;否則將對時鐘/日歷寄存器尋址。BIT2和BIT3選擇在VCC2和VCC1之間是一個還是兩個二極管串入其中。一般在設(shè)置時鐘時,可以停止其工作,設(shè)定完之后,再啟動其工作。 DS1302的片內(nèi)寄存器 DS1302有關(guān)日歷、時間的寄存器讀寄存器寫寄存器BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0范圍81H80HCH10秒秒005983H82H10分分005985H84H010時時112023AM/PM87H86H0010日日13189H88H0010月月1128BH8AH00000周日178DH8CH10年年00998FH8EHWP0000000—通過控制字對DS1302片內(nèi)寄存器進行尋址之后,即可就所選中寄存器的各位進行操作。不管是否寫了全部31字節(jié),所寫的每一個字節(jié)都將傳送至RAM。4. BIT 0(最低有效位):如為0,表示要進行寫操作,為1表示進行讀操作??刂谱指魑坏暮x和作用如下:1. BIT7:控制字的最高有效位,必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。 DS1302引腳說明。同樣,DS1643擁有28只管腳,硬件連接起來占用微處理器I/O口較多,不方便系統(tǒng)功能拓展和維護。此外,AT89C51是用靜態(tài)邏輯來設(shè)計的,其工作頻率可下降到0Hz,并提供兩種可用軟件來選擇的省電方式——空閑方式(Idle Mode)和掉電方式(Power Down Mode)。例如比較常用的AT89C2051單片機,帶有2KB Flash可編程、可擦除只讀存儲器(E2PROM)的低壓、高性能8位CMOS微型計算機。這種用軟件代替硬件的控制技術(shù),是對生產(chǎn)控制技術(shù)的一次革命。應(yīng)用FPGA能夠?qū)r鐘設(shè)計為為四種類型:全局時鐘、門控時鐘、多級邏輯時鐘和波動式時鐘。本設(shè)計電子時鐘主要功能為:1. 具有時間顯示和手動校對功能,24小時制;2. 具有年、月、日顯示和手動校對功能;3. 具有鬧鈴功能;4. 具有貪睡功能;5. 掉電后無需重新設(shè)置時間和日期;6. 采用交直流供電電源。 電子鐘是采用電子電路實現(xiàn)對時、分、秒進行數(shù)字顯示的計時裝置,廣泛應(yīng)用于個人家庭,車站, 碼頭辦公室等公共場所,成為人們?nèi)粘I钪胁豢缮俚谋匦杵贰T谄渫苿酉?,現(xiàn)代電子產(chǎn)品幾乎滲透到了社會的各個領(lǐng)域,有力的推動和提高了社會生產(chǎn)力的發(fā)展與信息化程度,同時也使現(xiàn)代電子產(chǎn)品性能進一步提升,產(chǎn)品更新?lián)Q代的節(jié)奏也越來越快。該電子時鐘可以應(yīng)用于一般的生活和工作中,也可通過改裝,提高性能,增加新功能,從而給人們的生活和工作帶來更多的方便。本文對當(dāng)前電子鐘開發(fā)手段進行了比較和分析,最終確定了采用單片機技術(shù)實現(xiàn)多功能電子時鐘。從古代的水漏、十二天干地支,到后來的機械鐘表以及當(dāng)今的石英鐘,都充分顯現(xiàn)出了時間的重要,同時也代表著科技的進步。想知道時間,手表當(dāng)然是一個很好的選擇,但是,在忙碌當(dāng)中,我們還需要一個“助理” 及時的給我們提醒時間。當(dāng)今市場上的電子時鐘品類繁多,外形小巧別致。由于EDA技術(shù)擁有系統(tǒng)的模擬和仿真功能,可讀性、可重復(fù)性、可測性非常好,所以利用EDA開發(fā)FPGA是目前比較流行的方式。所以單片機的應(yīng)用非常廣泛,在智能儀表、機電一體化、實時控制、分布式多機系統(tǒng)以及人們的生活中均有用武之地。第三章 基于單片機的電子時鐘硬件設(shè)計在比較了第二章的三種實現(xiàn)方案之后,考慮單片機貨源充足、價格低廉,可軟硬件結(jié)合使用,能夠較方便的實現(xiàn)系統(tǒng)的多功能性,故采用單片機作為本設(shè)計的硬件基礎(chǔ)。片內(nèi)的FLASH存儲器允許在系統(tǒng)內(nèi)可改編程序或用常規(guī)的非易失性存儲器編程器來編程。每種芯片的主要時鐘功能基本相同,只是在引腳數(shù)量、備用電池的安裝方式、計時精度和擴展功能等方面略有不同。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后備電源進行涓細電流充電的能力。要想與DS1302通信,首先要先了解DS1302的控制字。當(dāng)A4~A0=8,為慢速充電參數(shù)選擇寄存器。每次僅寫入或讀出一個字節(jié)數(shù)據(jù)稱為單字節(jié)操作,每次對時鐘/日歷的8字節(jié)或31字節(jié)RAM進行全體寫入或讀出的操作,稱其為多字節(jié)操作方式。對于單字節(jié)操作,包括命令字節(jié)在內(nèi),每次為2個字節(jié),需要16個時鐘;對于時鐘/日歷多字節(jié)模式操作,每次為7個字節(jié),需要72個時鐘;而對于RAM多字節(jié)模式操作,每次則為32字節(jié),需要多達256個時鐘。 另外,還有慢速充電控制寄存器和RAM寄存器。: I充電=(V0VDVE)/R ()式中:V0——;VD——二極管壓降,;R——慢速充電控制寄存器0和1位編碼決定的電阻值;VE——VCC1腳所接入的電池電壓。該系統(tǒng)使用AT89C51單片機作為核心,通過讀取時鐘日歷芯片DS1302和溫度傳感器DS18B20的數(shù)據(jù),完成此電子時鐘的主要功能——時鐘/日歷和環(huán)境溫度采集。具體電路圖請參見附錄C。另外,AT89C51本身沒有專門的液晶驅(qū)動接口。靜態(tài)顯示驅(qū)動程序簡單,且CPU占用率低,但每個LED數(shù)碼管需要一個鎖存器來鎖存每一個顯示位的筆段代碼,硬件開銷大,僅適合顯示位數(shù)較少的場合。矩陣式鍵盤適合按鍵較多時使用。 按鍵功能表按鍵鍵名功能屬性K1Calendar顯示日歷自鎖K3FUN功能選擇自動復(fù)位K4UP數(shù)值加一操作自動復(fù)位K5DOWN數(shù)值減一操作自動復(fù)位K6Enter/Snooze確認鍵/貪睡自動復(fù)位K7Alarm鬧鈴開關(guān)自鎖按鍵操作說明如下:K1鍵:該鍵為帶自鎖按鍵,在正常顯示時間狀態(tài)下,每次將按鍵按下, LED數(shù)碼管將顯示日期;再次按下,按鍵彈出,重新顯示時間。 鬧鈴電路設(shè)計鬧鈴音樂可以直接采用蜂鳴器鬧鈴,如當(dāng)前時刻與鬧鈴時間相同,單片機向蜂鳴器送出高電平,蜂鳴器發(fā)聲。此類集成電路體積較小,使用方便,不足的是音樂簡單、單一。單片機復(fù)位后不影響內(nèi)部RAM的狀態(tài)[17]。出于應(yīng)用方便,本設(shè)計采用按鍵電平復(fù)位電路。單片機依次開始調(diào)用鍵盤掃描子程序、DS1302子程序、DS18B20子程序、鬧鈴子程序,經(jīng)過延時,返回程序開頭循環(huán)運行。源程序見附錄一。在執(zhí)行鍵盤按鍵規(guī)定的功能中不理睬鍵盤輸入。源程序見附錄一。但應(yīng)用此方法,仍需要十分了解所使用元器件的工作方式和管腳連接方式。例如:本設(shè)計是在單片機系統(tǒng)基礎(chǔ)上建立起來的,所以必須先確定單片機基礎(chǔ)電路能否正常工作。AT89C51的31號引腳是外部程序存儲器選擇信號端,當(dāng)該引腳為高電平時,單片機會一直從片內(nèi)程序存儲器內(nèi)取指令。i)for(j=50。 //初始化P1口 for(n=0。3. 明確單片機管腳功能。sbit DAT=P1^0。j0。 disp_buffer[5]=tab[5]。0x1。 }} DS1302電路調(diào)試該電路包含DS1302芯片、主電源、備用電源、晶振等部分。燒錄進單片機,檢查電路電源正負極連接是否正確。當(dāng)K7彈出后,數(shù)碼管1~6位有顯示日期轉(zhuǎn)為顯示實時時間[20]。}在調(diào)用鬧鈴子程序時,鬧鈴標志位為“1”,則開啟鬧鈴,否則關(guān)閉鬧鈴。本文采用51單片機C語言進行編程,當(dāng)然也可以應(yīng)用匯編語言編程。sbit UP=P2^4。 //定義全局變量(標志位);extern uchar function_count。void write_byte(uchar Clock_Add,uchar Clock_Data)。void alarm_clock(void)。c++)。 //延時; beeper=1。void ds1302_task()。 uchar clk_hour=14。void write_byte(uchar Clock_Add,uchar Clock_Data)。 //定義管腳RSTuchar sec,min,hour,date,month,year。 i 8。 uchar R_Byte。 TmpByte = (uchar)IO。 reset_3w()。 wbyte_3w(hex2bcd[day_of_week])。 reset_3w()。 // 寫涓流充電寄存器wbyte_3w(0xab)。 //讀DS1302 month year = bcd2hex[read_byte(READ_YEAR_ADD)]。uchar key_push。a 0。
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1