其實,說智慧型也不算智慧型,就是在計算器上加上了日曆、時鐘和溫度顯示而已。具體用到的也是51很基礎的模組,乙個鍵盤,乙個1602,溫度顯示那塊用到了ds18b20,硬體除錯的部分也很少,主要是**的書寫。
功能簡介:
1、開啟電源時,顯示歡迎字樣
2、計算器功能
3、日曆及時鐘功能
4、溫度實時測量
然後用**依次實現各個功能
剛開始只用矩陣鍵盤來控制計算器的時候是很簡單的,定義乙個陣列,確定每個鍵盤所對應的符號或數字,然後用列檢測法確定按鍵是否按下,並將其顯示在1602上。我設定的鍵盤包括數字鍵(
0-9)、符號鍵(+、
-、*、
/),清除鍵和等號鍵。
附上矩陣鍵盤的電路圖:
其中4*
4矩陣鍵盤分別表示
1, 2
,3, +,
4, 5, 6, -,
7, 8, 9, *, 0
,=,off , /,
最開始只能做整數運算,後來我又定義了浮點型的資料,並且擴寬了加減運算的範圍,整個計算器就比較完整了。
實現計算器的功能後,我開始加上日曆及時鐘的功能。先給年月日時分秒初始化乙個值,並設定最大值,將前兩行矩陣鍵盤作為調節日曆及時鐘的按鍵,s1,s2,s3分別用來調節時分秒,s5,s6,s7分別用來調節年月日,按下鍵後進行相應的加一操作,並使用定時器進行計時,若加到我們設定的最大值時,則置為0,並且令前一位加一。
緊接著是加上溫度顯示,我採用的ds18b20模組,工作原理圖如下:
溫度解析度如下:
利用ds18b20對外界溫度進行檢測,並將溫度以一定的格式顯示在1602上。
最後也是最關鍵的是設定功能模式的切換,切換鍵大致如下:
k1=0時,表示選擇時間顯示功能
k2=0
時,表示選擇溫度顯示功能
k3=0
時,表示選擇計算器功能
按下相應的切換鍵即表示選擇相應的功能。
基於51微控制器的計算器
繼續寫一下寒假做的51小專案,這一次是基於at89c51的計算器,帶乙個八位密碼鎖功能。具體實現了計算器的加減乘除功能,並且自帶八位密碼鎖,輸入密碼後按 確定,錯誤輸入三次密碼就會鎖定,重啟後解除鎖定,密碼可以在密碼表中設定。顯示部分採用了1602顯示屏。這一次在使用ad畫pcb時,考慮到計算器要脫...
基於51微控制器的簡易計算器
矩陣鍵盤有16個按鍵,滿足對簡易計算器的計算實現,顯示部分採用lcd1602,第一行顯示計算的數值符號,第二行顯示計算結果。最大能計算7位數 7位數的值,可以計算負數,小數點結果保留有三位,在每次按下計算符號後,接著只能按下數字,再按下符號鍵無效,也就是每次計算只能按乙個計算符號,如輸入錯誤需按n清...
基於51微控制器的計算器程式
用51微控制器製作計算器 include t define uint unsigned int define uchar unsigned char sbit lcden p2 7 lcd1602?y?sbit rs p2 6 sbit rw p2 5 char i,j,temp,num,num 1...