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

正文內容

[電子電路]基于at89c52單片機的數字時鐘系統(tǒng)設計-閱讀頁

2024-11-03 00:41本頁面
  

【正文】 51 編譯器編譯生成目標文件 (.OBJ)。 ABS 文件由 OH51 轉換成標準的 Hex 文件,可載入 Proteus 仿真軟件中的 MCU 中,進行功能仿真。它由 ISIS 和 ARES 兩個軟件構成,其中 ISIS 是一款便捷的電子系統(tǒng)仿真平臺軟件,它運行于 Windows 操作系統(tǒng)上,用戶可以對模擬電路、數字電路、模數混合電路,以及基于微控制器的系統(tǒng)連同所有外圍接口電子元器件一起仿真。 b)具有模擬電路仿真、數字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、 RS- 232 動態(tài)仿真、 I2 C 調試器、 SPI 調試器、鍵盤和 LCD 系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。 d)支持大量的存儲器和外圍芯片。 Proteus 啟動畫面: 此外, ARES 軟件是一款高級的布線編輯軟件,它采用了 32 位數據庫的高性能 PCB 設計系統(tǒng),以及高性能的自動布局和自動布線方法。 Keil軟件調試流程 首先選擇菜單 FileNew… ,在源程序編輯器中輸入匯編語言或 C 語言源程序(或選擇 FileOpen… ,直接打開已用其它編輯器編輯好的源程序文檔)并保存,注意保存時必須在文件名后加上擴展名 .asm( .a51)或 .c。 這時工程管理窗 口的文件頁( Files)會出現(xiàn) “Target1”,將其前面 +號展開,接著選擇 Source Group1,右擊鼠標彈出快捷菜單,選擇 “Add File to Group ?Source Group1?”,出現(xiàn)一個對話框,要求尋找并加入源文件(在加入一個源文件后,該對話框不會消失,而是等待繼續(xù)加入其它文件)。 緊接著對工程進行設置,選擇工程管理窗口的 Target1,再選擇 ProjectOption for Target ?Target1?(或點右鍵彈出快捷菜單再選擇該選項),打開工程屬性設置對話框,共有 8 個選項卡,主要設置工作包括在 Target 選項卡中設置晶振頻率、在 Debug 選項卡中設置實驗仿真板等,如果要寫片,還必須在 Output 選項卡中選中 “Creat Hex Fi”;其它選項卡內容一般可取默認值。 成功編譯 /匯編、連接后,選擇菜單 DebugStart/Stop Debug Session(或按Ctrl+F5 鍵)進入程序調試狀態(tài), Keil 提供對程序的模擬調試功能,內建一個功淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 25 頁共 50 頁 能強大的仿真 CPU 以模擬執(zhí)行程序。 圖 仿真調試狀態(tài)口 如果發(fā)現(xiàn)程序有錯,可采用在線匯編功能對程序進行在線修改( DebugInline Assambly… ),不必執(zhí)行先退出調試環(huán)境、修改源程序、對工程重新進行編譯 /匯編和連接、然后再次進入調試狀態(tài)的 步驟。在模擬調試程序后,還須通過編程器將 .hex 目標文件燒寫入單片機中才能觀察目標樣機真實的運行狀況。 Proteus軟件運行流 程 Proteus ISIS 的工作界面是一種標準的 Windows 界面,如圖 所示。 運行 Proteus 程序后,進入軟件的主界面(如圖 )。 Proteus ISIS 的工作界面: 圖 Proteus ISIS 的工作界面 按 P 在庫中查找元器件如圖 : 圖 Pick Devices 窗口 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 27 頁共 50 頁 將所需要的元器件放置好后,繪制成原理圖如圖 圖 proteus 仿真數字時鐘的原理圖 數字時鐘的功能仿真 模擬調試:當電路搭建好之后,選中單片機 AT89C52,左鍵點擊 AT89C52,在出現(xiàn)的對話框里點擊 Program File 按鈕,找到剛才 Keil 軟件編譯得到的 HEX文件,載入然后點擊 “OK”按鈕就可以模擬了。最后得到仿真圖, 如圖 所示, 圖 系統(tǒng)仿真圖 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 28 頁共 50 頁 系統(tǒng)調試 數字時鐘的電路系統(tǒng)比較復雜,對于焊接方面不可輕視,只要電路系統(tǒng)中出于一處的錯誤,就會對檢測造成很大的不便,而且電路的交線較多,對于各種鋒利的引腳要注意處理,否則會刺破帶有包皮的導線,則會對電路造成短路現(xiàn)象?;叵脒@些問題只要認真多思考都是可以避免的,以下為主要的 一個 問題。 解決:不顯示時首先使用萬用表對電路進行測試 ,觀察是否存在漏焊 ,虛焊 ,或者元件損壞的現(xiàn)象。當顯示亮度不好時一遍旋轉 10K 歐的滑動變阻器,一遍觀看 LCD 顯示屏,直到看到合適的亮度為止。同時在軟件的編程方面得到更到的提高 ,對編程能力得到加強,同時對所學的知識得到很大的提高與鞏固。以硬件軟件化為指導思想,充分發(fā)揮單片機功能,大部分功能通過軟件編程來實現(xiàn),電路簡單明了,系統(tǒng)穩(wěn)定性高。 硬件電路包括單片機模塊的設計,時鐘電路模塊的設計,溫度傳感器的設計,獨立式鍵盤的設計,顯示模塊的設計。 軟件設計包括主流程圖,溫度程序流程圖, DS1302 時鐘程序流程圖, LCD 顯示程序流程圖。 最后焊接實物,開始沒有任何 現(xiàn)象 ,通過調節(jié)電位器,調節(jié)了顯示屏的對比度,得到了正確的數字時鐘實物,驗證了設計的可行性。 應該感謝的人很多,首先感謝學院給我們提供了一個展現(xiàn)自己的舞臺,給我們一次難得煅煉的機會,使得我們的動手能力和專業(yè)技能都有了很大 的提高。同時還要感謝給我提供幫助的各位老師和同學,你們的支持和鼓勵使我對這次的設計完成有了信心和動力,在此深表謝意。正是他們在我四年大學學習期間給予了各方面的關心和支持,才讓我得以全身心投入學習和研究中,順利完成學業(yè)。制版與仿真(第 2 版) ,清華大學出版社 ,2020年 06 月 12 萬勝前 . 基于 KeilC51 軟件的電子鐘設計與制作,鄂州大學學報, 2020年第 2 期 13 張洪潤 主編 . 單片機應用設計 200 例 .北京:科學出版社, 2020 14 楊將新 主編 .單片機程序設計及應用從 基礎到實踐.北京:機械工業(yè)出版社, 2020 15 李玉鋒、倪虹霞 主編 . MCS51 系列單片機原理與接口技術.北京:人民郵電出版社, 2020 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 32 頁共 50 頁 附錄 1 、硬件電路圖 附錄 仿真圖 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 33 頁共 50 頁 附錄 程序 include include //include //include define uint unsigned int define uchar unsigned char sbit DS1302_CLK = P1^7。 //實時時鐘數據線引腳 sbit DS1302_RST = P1^5。 sbit wireless_2 = P3^1。 sbit wireless_4 = P3^3。 sbit ACC7 = ACC^7。 //秒 ,分 ,時到日 ,月 ,年位閃的計數 sbit Set = P2^0。 //加法按鈕 sbit Down = P2^2。 //立刻跳出調整模式按鈕 sbit DQ = P1^0。 uchar temp_value。 void show_time()。 sbit LcdRw = P2^6。 sfr DBPort = 0x80。 LcdRw=1。 LcdEn=1。 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 34 頁共 50 頁 LcdEn=0。 } // 向 LCD 寫 入 命 令 或 數 據************************************************************ define LCD_COMMAND 0 // Command define LCD_DATA 1 // Data define LCD_CLEAR_SCREEN 0x01 // 清屏 define LCD_HOMING 0x02 // 光標返回原點 void LCD_Write(bit style, unsigned char input) { LcdEn=0。 LcdRw=0。 DBPort=input。//注意順序 LcdEn=1。//注意順序 LcdEn=0。 LCD_Wait()。 } //設置輸入模式 ************************************************************ define LCD_AC_UP 0x02 define LCD_AC_DOWN 0x00 // default define LCD_MOVE 0x01 // 畫面可平移 define LCD_NO_MOVE 0x00 //default void LCD_SetInput(unsigned char InputMode) { 淮陰工學院畢業(yè)設計說明書 ( 論文 ) 第 35 頁共 50 頁 LCD_Write(LCD_COMMAND, 0x04|InputMode)。 LCD_Write(LCD_COMMAND,0x38)。 LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR)。 //清屏 LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE)。 if(y==1) LCD_Write(LCD_COMMAND,0x80|(x0x40))。\039。 str++。 unsigned char Minute。 unsigned char Week。 unsigned char Month。 unsigned char DateString[11]。 }SYSTEMTIME。 define AM(X) X define PM(X) (X+12) // 轉成 24 小時制 define DS1302_SECOND 0x80 //時鐘芯 片的寄存器位置 ,存放時間 define DS1302_MINUTE 0x82 define DS1302_HOUR 0x84 define DS1302_WEEK 0x8A define DS1302_DAY 0x86 define DS1302_MONTH 0x88 define DS1302_YEAR 0x8C void DS1302InputByte(unsigned char d) //實時時鐘寫入一字節(jié) (內部函數 ) { unsigned char i。 for(i=8。 i) { DS1302_IO = ACC0。 DS1302_CLK = 0。 } } unsigned char DS1302OutputByte(void) //實時時鐘讀取一字節(jié) (內部函數 ) { unsigned char i。 i0。 //相當于匯編中的 RRC ACC7 = DS1302_IO。 DS1302_CLK = 0。 } void Write1302(unsigned char ucAddr, unsigned char ucDa) //ucAddr: DS1302 地址 , ucData: 要寫的數據 { DS1302_RST = 0。 DS1302_RST = 1。 // 地址,命令 DS1302InputByte(ucDa)。 DS1302_RST = 0。 DS1302_RST = 0。 DS1302_RST = 1。 // 地址,命令 ucData = DS1302OutputByte()。 DS1302_RST = 0。 } void DS1302_GetTime(SYSTEMTIME *Time) //獲取時鐘芯片的時鐘數據到自定義的結構型數組 { unsigned char ReadValue。 TimeSecond = ((ReadValueamp。0x0F)。 TimeMinute = ((ReadValueamp。0x0F)。 TimeHour = ((ReadValueamp。0x0F)。 TimeDay = ((ReadValueamp。0x0F)。 TimeWeek = ((ReadValueamp。0x0F)。 TimeMonth = ((ReadValueamp。0x0F)。 TimeYear = ((ReadValueamp。0x0F)。239。039。039。039。 39。 39。 39。 39。/39。039。039。 39。 39。/39。039。039。 39。 39。039。 39
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1