|
PIC16F877單片機(jī)設(shè)計,做了一個簡易加法計算器
單片機(jī)源程序如下:
- /*
- 簡單的加法計算器例程。
- 當(dāng)前使用方法:
- 1) 輸入第一個數(shù)(<4位);
- 2) 按+號;清空數(shù)碼管;
- 3) 輸?shù)诙䝼數(shù)(<4位) ;
- 4) 按=號出結(jié)果;顯示在數(shù)碼管上
- 5) 按C號,返回1) 繼續(xù)等待輸入
- */
- #include "pic.h"
- #include "delay.h"
- #include "keyboard.h"
- #include "seg74.h"
- // ICD2調(diào)試時必須設(shè)定的配置字內(nèi)容
-
- main()
- {
- int i=0,k=9,Number[2]={0,0},NumIndex=0;
- SEG_FONT_PORT_DIR=0x00;
- SEG_FONT_PORT=0x00;
- SEG_BITSEL_PORT_DIR=0xF0; // low 4 bits is selecting bit
- SEG_BITSEL_PORT=0x0; // deselect all 4 bits
- NumIndex=0; // 開始時輸入數(shù)據(jù)放在Number[0]中。
- while(1)
- {
-
- i=GetKeyValue(); //獲得鍵值
- if(i!=NO_KEY) //如果有按鍵按下
- {
- if(i>=0 && i<=9) // 如果是數(shù)字鍵
- {
- Number[NumIndex]=Number[NumIndex]*10+i; //原顯示數(shù)字×10+新數(shù)字
- }
- else
- {
- switch(i)
- {
- case '+' : NumIndex=1; break; //按加號則開始記錄下一個數(shù)字
- case '=' : NumIndex=0; // 按等號說明用戶要求計算結(jié)果了
- Number[0]=Number[0]+Number[1]; //Number[0]+計算加法
- Number[1]=0; // 第二個數(shù)清零,這樣可以實現(xiàn)連加
- break;
- case 'C' : Number[0]=0; // C鍵表示計算器清零
- Number[1]=0;
- NumIndex=0;
- break;
- case NO_KEY : break; // 說明無按鍵按下
- default : break;
- };
- }
- }
- DisplayData(Number[NumIndex]);
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
PIC16F877簡易加法計算器.zip
(135.59 KB, 下載次數(shù): 37)
2021-3-16 18:01 上傳
點擊文件名下載附件
|
評分
-
查看全部評分
|