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

正文內(nèi)容

基于單片機實時鐘設計畢業(yè)設計-文庫吧資料

2025-06-25 12:46本頁面
  

【正文】 調(diào)分K4:調(diào)秒33再按 K1,鬧鐘設置結(jié)束K2:鬧鐘開K3:鬧鐘關附錄二:系統(tǒng)程序清單include include include include include include sbit ZLG7290_INT=P3^3。也練就了我們的耐心,做什么事都在有耐心。程序編寫中,由于思路不清晰,開始時遇到了很多的問題,經(jīng)過靜下心來思考,和同組員的討論,理清了思路,反而得心應手。反而達到事半功倍的效果。如果時間再寬松幾天也許能達到預期效果。雖然沒達到預期的目的,在最初的設計中,發(fā)揮“三個臭皮匠,頂個諸葛亮”的作用。 測試結(jié)論經(jīng)過多次的反復測試與分析,可以對電路的原理及功能更加熟悉,同時提高,.29五、總結(jié)在整個設計過程中,自主學習,學到了許多沒學到的知識。查看燒寫的程序是否正確無誤,對程序進行認真修改。28 測試結(jié)果分析與結(jié)論 測試結(jié)果分析(1) 、在測試中遇到發(fā)光二極管、LED 數(shù)碼管為不顯示時,首先使用萬用表對電路進行測試,觀察是否存在漏焊,虛焊,或者元件損壞。在軟件的調(diào)試過程中主要遇到的問題如下:燒入程序后,LED 數(shù)碼管顯示閃動,而且亮度不均勻。 軟件測試電子實時鐘功能很多,所以對于它的程序也較為復雜,所以在編寫程序和調(diào)試時出現(xiàn)了相對較多的問題。(2) 、對電子實時鐘修改時間時,有時 LED 數(shù)碼管被屏蔽掉,造成不亮現(xiàn)象。解決:用萬用表進行檢測,依次檢測是哪段亮了。在此電子實時鐘的設計調(diào)試中遇到了很多的問題。26 CS=1。 buf++。i++) { M=*buf。//向 spi 總線寫入要寫數(shù)據(jù)寄存器的首地址 for(i=0。 SPISendData(0x02)。 CS=1。 return M。//向 spi 總線寫入要讀數(shù)據(jù)寄存器的首地址 M=SPIRcvByte()。 SPISendData(0x03)。 CS=1。 return (unsigned char)dat。}dat = dat1。DelayUS(50)。 dat = dat1。elsedat = dat amp。i++){DelayUS(50)。 for(i=0。uint dat=0。 DelayUS(50)。24SCK=1。elseSI=0。 if(uiData amp。i++){ SCK=0。 for(i=0。 CS=0。對于不帶 SPI 串行總線接口的單片機,可以使用軟件來模擬 SPI 的操作,包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出。} DS1302 如何與單片機進行通信通過 SPI 總線進行通信的。 /*發(fā)送非應位*/ Stop_I2c()。 } 23 *s=RcvByte()。 /*發(fā)送數(shù)據(jù)*/ Ack_I2c(0)。ino1。 if(ack==0)return(0)。 Start_I2c()。 SendByte(suba)。 /*啟動總線*/ SendByte(sla)。}向有子地址器件讀取多字節(jié)數(shù)據(jù)函數(shù)bit IRcvStr(uchar sla,uchar suba,uchar *s,uchar no){ uchar i。 /*發(fā)送非就答位*/ Stop_I2c()。 *c=RcvByte()。 /*啟動總線*/ SendByte(sla+1)。 /*結(jié)束總線*/ return(1)。 s++。i++) { SendByte(*s)。 for(i=0。 SendByte(suba)。 /*啟動總線*/ SendByte(sla)。}向有子地址器件發(fā)送多字節(jié)數(shù)據(jù)函數(shù) bit ISendStr(uchar sla,uchar suba,uchar *s,uchar no){ uchar i。 Stop_I2c()。 SendByte(c)。 /*啟動總線*/ SendByte(sla)。21 _Nop()。 SCL=0。 _Nop()。 _Nop()。 SCL=1。 _Nop()。 /*在此發(fā)出應答或非應答信號 */ else SDA=1。 return(retc)。 _Nop()。 _Nop()。 if(SDA==1)retc=retc+1。 _Nop()。20 SCL=1。 _Nop()。 _Nop()。 SCL=0。BitCnt8。 SDA=1。 uchar BitCnt。 _Nop()。 /*判斷是否接收到應答信號 */ SCL=0。 if(SDA==1)ack=0。 _Nop()。 SCL=1。 /*8 位發(fā)送完后釋放數(shù)據(jù)線,準備接收應答位 */ _Nop()。 _Nop()。 SCL=0。 _Nop()。 _Nop()。 SCL=1。 /*判斷發(fā)送位*/ else SDA=0。BitCnt++) /*要傳送的數(shù)據(jù)長度為 8 位*/ { if((cBitCnt)amp。 for(BitCnt=0。 _Nop()。 _Nop()。 SDA=1。 _Nop()。18 _Nop()。 /*發(fā)送結(jié)束條件的時鐘信號 */ SCL=1。}結(jié)束總線函數(shù)void Stop_I2c(){ SDA=0。 /*鉗住 I2C 總線,準備發(fā)送或接收數(shù)據(jù) */ _Nop()。 _Nop()。 _Nop()。 /*發(fā)送起始信號 */ _Nop()。 _Nop()。 _Nop()。 _Nop()。 /*發(fā)送起始條件的數(shù)據(jù)信號 */ _Nop()。對不帶 I2C 接口的單片機用軟件模擬 I2C 時序使用 I2C 器件。開始數(shù)據(jù)傳輸START 后、停止數(shù)據(jù)傳輸 STOP 前,SCL 高電平期間, SDA 上為有效數(shù)據(jù)。在數(shù)據(jù)傳輸期間,時鐘(SCL)為高電平時,數(shù)據(jù)(SDA)必須保持不變。緩存中一位置1表示該像素亮,DpRam7~DpRam0 的顯示內(nèi)容對應 Dig7~Dig0引腳。如ScanNum=3時,只顯示DpRam0~DpRam3的內(nèi)容。用于控制最大的掃描顯示位數(shù)(有效范圍為:0~7,對應的顯示位數(shù)為:1~8),減少掃描位數(shù)可提高每位顯示掃描時間的占空比,以提高LED亮度。FlashOnOff的1個單位相當于150 ~250ms(亮和滅的時間范圍為:1~16,0000B相當1個時間單位),所有象素的閃爍頻率和占空比相同。顯示部分:a、閃爍控制寄存器 (FlashOnOff ):地址0CH,復位值0111B/0111B 。命令接口部分:命令緩沖區(qū)(CmdBuf0~CmdBuf1):地址07H~08H,復位值00H~00H 。c、功能鍵寄存器 (FunctionKey):地址03H,復位值 0FFH。RepeatCnt大于 0時,表示鍵的連擊次數(shù)。b、連擊次數(shù)計數(shù)器(RepeatCnt ):地址02H,復位值00H 。Key表示被壓按鍵的鍵值。有效的按鍵動作消失后或讀Key后,KeyAvi位自動清 0。(3) 、寄存器詳解系統(tǒng)狀態(tài)部分: 系統(tǒng)寄存器(SystemReg):地址00H,復位值 11110000B。命令解釋控制是指通過解釋命令緩沖區(qū)(CmdBuf0~CmdBuf1 )中的指令,間接訪問底層寄存器實現(xiàn)擴展控制功能。如PC 機的“Shift ”“Ctrl”、“Alt”鍵。判斷連擊次數(shù)可以檢測被按時間,以防止某些功能誤操作(如連續(xù)按5秒經(jīng)入?yún)?shù)設置狀態(tài))。c、連擊鍵處理當某個按鍵按下時,輸出一次鍵值后,如果該按鍵還未釋放,該鍵值連續(xù)有效,就像連續(xù)壓按該鍵一樣,這種功能稱為連擊。若不作處理會引起按鍵盤命令錯誤,所以要進行去抖動處理,以讀取穩(wěn)定的鍵盤狀態(tài)為準。如下圖4 所示 圖4 DS1302 讀/寫時序圖. 5 動態(tài)掃描芯片 ZLG7290 的工作原理(1) 、鍵盤部分ZLG7290可采樣 64個按鍵或傳感器,可檢測每個按鍵的連擊次數(shù)。(4) 、數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個 SCLK 時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位 0 開始。上電運行時,在 Vcc 大于等于 之前,/RST 必須保持低電平。當/RST 為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對 DS1302 進行操作。7 6 5 4 3 2 1 0寄存器名稱1 RAM//CK A4 A3 A2 A1 A0 RD//WRAM0 1 1 0 0 0 0 0RAM1 1 1 0 0 0 0 1……… … … … … … … … …RAM30 1 1 1 1 1 1 013RAM 突發(fā) 1 1 1 1 1 1 1表 5(3) 、復位和時鐘控制通過將、/RST 輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RS 位 電阻器 典型值00 無 無01 R1 2k 歐10 R2 4k 歐11 R3 8k 歐表 4c、RAM 寄存器DS1302 與 RAM 相關的寄存器分為兩類,一類是單個 RAM 單元,共 31 個,每個單元組態(tài)為一個 8 位的字節(jié),其命令控制字位 C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM 的 31 字節(jié),命令控制字為 FEH(寫) 、FFH (讀) 。RS:選擇連接在 Vcc2 與 Vcc1 之間的電阻,如果 RS 為 00,那么充電器被禁止,與 TS 無關。如果 DS 為 01,那么選擇一個二極管;如果 DS 為 10,則選擇兩個二極管。TCS:控制慢充電的選擇,為了防止偶然因素始 DS1302 工作,只有 1010 模式才能使慢速充電工作。WP:寫保護位,寫保護寄存器的開始 7 位(0~6)置為 0,在讀操作時總是讀出 0。在 12 小時方式下,位 5 是 AM/PM 選擇位,此位為 1 時表示 PM。A/P HR HR日寄存器 86H 87H01~28,29,30,31 0 0 10DATE DATE月寄存器 88H 89H 01~12 0 0 0 10M MONTH周寄存器 8AH 8BH 01~07 0 0 0 0 DAY年寄存器 8CH 8DH 01~99 10YEAR YEAR寫保護寄存器 8EH 8FH   WP 0 0 0 0慢充電寄存器 90H 91H   TCS TCS TCS TCS DS DS RS RS時鐘突發(fā)寄存器 BEH BFH                  表 3其中有些特殊位需要特別指出:CH:時鐘暫停位,當此位設置為 1 時,振蕩器停止, DS1302 處于低功率的備份方式;當此位變?yōu)?0 時,時鐘開始啟動。表 3 為主要寄存器命令字、取值范圍以及各位內(nèi)容對照表。寄存器的選擇根據(jù)命令字而定,其中日歷、時鐘各個寄存器與控制字對照表如表 2 所示。b、日歷、時鐘寄存器 DS1302 共有 12 個寄存器,其中有 7 個寄存器與日歷、時鐘有關,存放的數(shù)據(jù)位為 BCD 碼形式。時鐘脈沖的個數(shù)在單字節(jié)方式下為 8 加 8(8 位地址加 8位數(shù)據(jù)) ,在多字節(jié)方式下為 8 加最多可達 248 的數(shù)據(jù)。為了對任何數(shù)據(jù)傳送進行初始化,需要將/RST 置為高電平且將 8 位地址和命令信息裝入移位寄存器。11 引腳為接地端,16引腳為電源端。/RES是復位輸入端,低電平有效。SCL為輸入端,是I 2C總線接口時鐘線。SegH~SegA為輸入/ 輸出端,由 LED顯示段驅(qū)動及鍵盤掃描線。SCLK 始終是輸入端。上電動行時,在 Vcc 大于等于 之前, RST 必須保持低電平。當 RST 為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對 DS1302 進行操作。 RST 是復位
點擊復制文檔內(nèi)容
物理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1