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

正文內(nèi)容

計算器單片機技術(shù)課程設(shè)計(存儲版)

2025-07-17 05:16上一頁面

下一頁面
  

【正文】 ...................... 21 附錄 D 程序清單 ................................................ 22 1 1 緒論 計算器 研究意義 中國古代最早采用的一種計算工具叫籌策,又被叫做算籌。計算器在人們的日常中是比較常見的電子產(chǎn)品之一。能實現(xiàn) ( 1)基本的加、減、乘、除、平方、開方;( 2)三角函數(shù)運算;( 3)十進制、十六進制轉(zhuǎn)換運算;( 4)其它功能 。 該計算器上電后能自動顯示系統(tǒng)提示符 “P.”,進入準備工作狀態(tài)。 隨著電子技術(shù)的不斷發(fā)展,計算器的功能也越來越強大,已經(jīng)不僅僅限于單純的數(shù)學運算和函數(shù)運算,各種功能強大的計算器在財務(wù)、銀行、工程、測繪等方面也得到了廣泛的應(yīng)用。 而國外的計算器的發(fā)展已經(jīng)發(fā)展到各行各業(yè),外設(shè)大多凝集了其它產(chǎn)品的功能,而且許多功能讓人覺得實在離譜。 ( 4) 能 十進制、十六進制轉(zhuǎn)換運算 。 STC89C54RD+單片機內(nèi)部 配以基本單元:即 三個定時 /計數(shù)器 、 5 個中斷源。 圖 2 STC89C54RD+引腳圖 4 電源 模塊 電源電路是 給 計算器 提供電源 ,此電路包括 一個 發(fā)光二極管、電阻、導(dǎo)線組成。 復(fù)位電路如圖 4 所示。 此時同時 并接一個石英晶體振蕩器 以及 兩個 30pF 電容。 顯示模塊 發(fā)光二極管 LED是單片機應(yīng)用系統(tǒng)中的一宗簡單而常用的輸出設(shè)備,其在系統(tǒng)中的主要作用是顯示單片機的輸出數(shù)據(jù)、狀態(tài)等。 圖 6 LCD1602 顯示電路 輸入模塊 輸入模塊的作用是給單片機系統(tǒng)提供輸入信號。 電路實物圖 電路實物圖見附錄 B。 相關(guān) 程序流程圖如圖 10所示 ,詳細程序見附錄 D。設(shè)計鍵盤的各個按鍵功能如 表 2 所示。如圖 13 所示 圖 13 計算結(jié)果 顯示界面 ( 3)當輸入數(shù)字 765,按下 十進制轉(zhuǎn)十六進制 DEC 功能鍵后,計算的的數(shù)據(jù)為2FD。 ( 2) 程序 參數(shù)設(shè)計不 夠 合理 , 以及計算過程中沒有保留小數(shù)點,計算量多的話導(dǎo)致不精準,主要是精確度不高。 15 ( 3)要善于思考,程序中有些實現(xiàn)難點和最初完成程序時免不了的許多不足就需要自己根據(jù)代碼認真思考來解決。 16 結(jié)束語 通過這次設(shè)計,攻克了許多難題。 萬事開頭難,只要你去做,你 就會 發(fā)現(xiàn)這個沒有你想象中的那么難,你不去做,就會覺得很難。更重要的是, 她 善于與學生溝通,不僅在畢業(yè)設(shè)計上給我及時的指導(dǎo),更為我大學最后階 段的學習提出了許多寶貴的意見。//開方是 16號鍵 sbit COS=P2^1。 23 uchar opr[4]=\n。,39。,39。,39。,39。//寫指令 void write_data(uchar date)。 int hexToDec(char* h,int count)。 //一個高脈沖讀走 delay(1)。 int size。 if(count==1)//第一次按下時,清屏 { clear()。 opr_flag==0)//沒有按下等號之前,更新顯示輸入的字符 { clear()。 show_word(1,count,key)。opr[2]=39。opr[1]=39。//squre root case 18:opr[0]=39。opr_flag=6。opr[3]=39。opr[2]=39。opr[1]=39。//hex case 22:opr[0]=39。opr_flag=10。 show_word(1,4,opr)。 } else if(KeyValue==15 amp。 } else if(KeyValue==15 amp。 } } } } //十進制轉(zhuǎn)十六進制 char* decToHex(char* d,int count,int *s) { int i。039。i++)//反序 { temp=result[i]。icount。 else temp=n。 int temp=(int)num。039。 result[i]=a+39。j++) { a=temp/pow(10,dSizej1)。 result[i+2]=39。 double decimal。i++) { value*=10。break。 } //鍵值轉(zhuǎn)換成字符函數(shù) uchar getkey(int value) { uchar temp。239。 case 6:temp=39。break。+39。 case 14:temp=39。 } uchar* getValue(uchar* temp) { int i=0。temp[i]!=39。||temp[i]==39。 temp[i]=39。039。 right_Val+=temp[i]39。 amp。+39。break。:val=left_Val/right_Val。 } i=0。i++) { result[i]=val_tmp/((int)pow(10,result_sizei1)) +39。 } //延時函數(shù) void delay(uint z) //延時函數(shù)當 Z=1,延時 1ms { unsigned char a,b,c。 } //LCD1602顯示程序模塊 void write_mand(uchar )//寫指令, 即為指令 { while((busy_check() amp。 delay(1)。 delay(1)。 write_mand(0x06)。 EA=1。i++) { write_data(str[i])。 delay(1)。//延時 10ms進行消抖 if(GPIO_KEY!=0x0f)//再次檢測鍵盤是否按下 { //測試列 GPIO_KEY=0X0F。break。 case(0Xe0): KeyValue=KeyValue+4。 while(!COS)。 if(HEX==0) { KeyValue=21。 } 。 while(!TAN)。 } } if(COS==0) { delay(15)。 case(0Xd0): KeyValue=KeyValue+3。break。 GPIO_KEY=0x0f。isize。//選擇要寫入字符的首地址,每寫入一個字符,地址加 1 for(i=0。 //選擇定時器 T0的工作模式和工作方式 TH0=(6553650000)/256。 write_mand(0x0c)。 EN=0。 delay(1)。a0。 39。 for(i=0。break。 case 39。:val=left_Valright_Val。o39。 temp[i]=39。amp。039。 amp。||temp[i]==39。 int val_tmp。 default :break。*39。break。 case 8:temp=39。439。break。 } } else if(flag==9) //hex to dec { temp=hexToDec(key,count1)。break。key[i]!=39。 30 int value=0。 result[i+1]=39。 for(j=0。i++) { a=temp/pow(10,iSizei)。 temp%=(int)pow(10,iSizei1)。 int j=0。 int temp。 int temp=0。 for(i=0。i++) { temp*=10。size))。 ftoa(temp,result_size,3)。鍵被按下 { show_word(2,result_size,getValue(key))。amp。opr[3]=39。opr_flag=9。//tan case 21:opr[0]=39。opr[1]=39。opr[2]=39。opr[3]=39。opr_flag=5。//squre case 17:opr[0]=39。opr[1]=39。 opr_flag==1)//等號按下后,清屏,標志置 0,顯示第一行 25 { clear()。 KeyValue15 amp。 while(1) { KeyValue=keyscan()。 int i=0。//選擇命令寄存器 RW=1。 double func_calc(uchar* key,int flag)。 void init()。,39。,39。,39。,39。//待查詢的按鍵值 uchar dat[16]=p.。 //使能 信號 sbit BEEP=P2^4。在寫 課程設(shè)計 的階段,凌 老師讓我們提前給 她 評審,不論內(nèi)容字體,還是格式上的問題都一一指出。 所以最先做個詳細的分析,結(jié)構(gòu)分析,再著手寫程序,這樣各部分就很好的銜接下去了,而不是一個頭就扎到程序里去,這樣做不好。通過這次課程設(shè)計,掌握了對話框的相關(guān)操作,也體會到書寫代碼一定要仔細,有時候一小點拼寫錯誤會浪費很多調(diào)試程序的時間。開始著手程序設(shè)計時,有些功能感覺無從下手,都不知道要干什么,這些問題這要找到相關(guān)的資料就會得到提示從而理解所要解決問題的大致方向。 14 圖 16 計算結(jié)果 顯示界面 計算器誤差分析 計算器的計算功能有精度上的誤差,不適用保留小數(shù)點的計算,因為不能約到整數(shù)。 如圖 12 所示。 11 4 實物調(diào)試 操作使用說明 該設(shè)計利用 4*4 矩陣鍵盤 和 6 個獨立按鍵 作為數(shù)據(jù)和命令的輸入裝置 ,LCD1602 液晶 為 顯示器,實現(xiàn)的運算有加、減、乘、除、平方 SQU、開方 SQR、三角函數(shù)( sin、 cos、 tan)、十進制轉(zhuǎn)十六進制 DEC、十六進制轉(zhuǎn)十進制 HEX。 圖 9 監(jiān)控 函數(shù)流程圖 顯示模塊 液晶顯示是通過在主程序中調(diào)用相關(guān)的液晶功能函數(shù)來執(zhí)行相應(yīng)功能,經(jīng)過液晶接在單片機上的 P2部分管腳,通過液晶功能函數(shù) LCD1602的調(diào)用對液晶進行操作,將各類指令寫入液晶模塊,用來驅(qū)動液晶以實現(xiàn)不同的顯示功能。如圖 8 所示。 1602 型 LCD 基本操作程序如表 1 所示。并 由 下載電路產(chǎn)生電源提供給單片機工作。而分頻電路則用于把
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1