#include #include #include "lcd1602_8.h" uint temp,num;//鍵盤掃描數值 uchar keynum1=0,keynum2=0,sign=0,i=0,j=0; //按鍵計數,符號標示 uchar num1[8]={0},num2[8]={0}; //按鍵存儲數組 float ans1=0,ans2=0,ans=0,point=0; //運算數據 bit conflag=0; //繼續運算標志位 bit newcalc=0; //新運算標志 bit ac=0; //清零標志,1為清零 bit beepflag=0; //蜂鳴器標志位 bit sqrtflag1=0; //開方1標志位 bit sqrtflag2=0; //開方2標志位 bit powflag=0; sbit keybeep=P3^3;//蜂鳴器開關按鍵 sbit beep=P2^3; //蜂鳴器控制口 sbit keysqrt=P3^4;//開方按鍵 sbit keypow=P3^5;//任意次方按鍵 uchar keyscan(); void maininit(void); /****主程序***/ void main(void) { maininit();//初始化 while(1) //整個系統大循環,讓計算器一直處于工作狀態 { while(1) //第一運算數掃描 { if(ac==1) break; //若清零,則退出輸入 if((keyscan()!='N')&&((num>=0&&num<=9)||num=='.')) //記錄按下的數字 { if(newcalc==1) //新一次運算開始 { lcdwrite_com(0x01);//清屏 newcalc=0; lcd_setxy(0,0); } if(keynum1<=7) //限制輸入位數 { if(num=='.') { lcdwrite_data('.'); //顯示小數點 } else lcdwrite_num1(num); num1[keynum1]=num; keynum1++; } } else if(num=='+'||num=='-'||num=='*'||num=='/'||num=='='||num=='^'||keysqrt==0) { if(keynum1==0&&num1[0]==0) //若直接輸入運算符而沒有輸入數字則執行連續運算 { here: ans1=ans; sign=num; lcdwrite_com(0x01); delayms(5); lcd_setxy(0,0); lcdwrite_float(ans1); if(sqrtflag2!=1&&num!='N') lcdwrite_data(num); break; } for(i=0;keynum1>0;i++) //計算按下的數字的大小 { if(num1[i]!='.') ans1=ans1*10+num1[i]; else if(num1[i]=='.') break; keynum1--; } for(keynum1--,i++,j=0;keynum1>0;j++,i++,keynum1--) point=point*10+num1[i]; for(;j>0;j--) point*=0.1; ans1=ans1+point; sqrtflag1=0; //清除開方標志 sqrtflag2=0;//清除開方標志 if(keysqrt==0) //計算開方 { delayms(5); if(keysqrt==0) { if(beepflag==1) //若開聲音則每一次按鍵均鳴叫 {
上一篇:單片機課程設計報告—溫度報警器
下一篇:基于51的IIC通訊原理及協議詳解(I2C)
推薦閱讀
史海拾趣
經過多年的發展,Continental Industries已經成為電子行業中的佼佼者。公司不斷追求創新和發展,積極拓展新的業務領域和市場空間。未來,隨著電子行業的不斷發展和變革,Continental Industries將繼續保持敏銳的市場洞察力和強大的技術實力,努力成為行業的領導者。
這五個故事展示了Continental Industries在電子行業中的發展歷程和取得的成就。雖然無法涵蓋公司的全部發展細節,但通過這些故事,我們可以感受到公司在技術創新、市場拓展、合作共贏、應對挑戰以及持續發展等方面的努力和成果。
面對日益激烈的市場競爭和不斷變化的市場需求,Exar公司始終堅持以創新為核心競爭力。公司不斷投入研發資金,加強技術創新和產品研發力度,推出了一系列具有自主知識產權的新產品。同時,Exar還積極關注行業發展趨勢和市場動態,不斷調整和優化產品線,以適應市場的變化和發展。在未來,Exar將繼續堅持創新驅動的發展戰略,努力成為電子行業的領軍企業。
請注意,以上故事框架僅供參考,具體的故事內容需要根據實際情況進行補充和完善。
隨著LED背光驅動芯片的成功推出,啟攀微電子(CHIPHOM)逐漸在市場上嶄露頭角。然而,公司并沒有滿足于現狀,而是繼續加大研發投入,拓展產品線。在一次國際電子展上,公司展示了音頻功率放大芯片和電阻式觸摸屏控制芯片,引起了眾多客戶的關注。通過不懈的市場推廣和技術支持,啟攀微電子(CHIPHOM)成功打開了國內外市場的大門,實現了銷售收入的快速增長。
隨著產品線的不斷豐富,Compostar Technology Co Ltd開始積極尋求市場拓展。公司通過與國內外知名電子品牌建立戰略合作關系,成功將產品打入國際市場。同時,公司還積極參加各類行業展會和技術交流會,與業界同行建立了廣泛的聯系。這些努力不僅為公司帶來了更多的商機,也進一步提升了公司的知名度和影響力。
人才是企業發展的核心。Compostar Technology Co Ltd深知這一點,因此一直注重人才培養和團隊建設。公司建立了完善的人才培訓體系,為員工提供了廣闊的職業發展空間。同時,公司還積極營造良好的企業文化氛圍,激發員工的創新精神和團隊合作精神。這些舉措使得公司擁有一支高素質、高效率的員工隊伍,為公司的持續發展提供了有力保障。
為了進一步擴大市場份額,Black Box積極尋求與全球各地的企業合作。通過與跨國公司的戰略合作,Black Box不僅獲得了先進的技術和管理經驗,還成功打開了多個國際市場。同時,公司也在全球范圍內設立了多個分公司和辦事處,以便更好地服務當地客戶。這一系列的全球擴張行動使Black Box成為了真正意義上的國際企業。
本帖最后由 jameswangsynnex 于 2015-3-3 20:02 編輯 1.SMT:是英文“Surface mount technology”的縮寫。即表面安裝技術,這是一種較傳統的安裝方式。其優點是可靠性高,缺點是體積大,成本高,限制LCM的小型化。2.COB:是英文“Chip On Board”的 ...… 查看全部問答∨ |
|
我花了一些時間用 Borland C++Builder 6 制作了一個共享軟件 AVR_fighter for USBASP 做為2008年新年禮物,供大家免費使用.歡迎大家測試使用.歡迎回貼交流! 程序中加入了大量AVR芯片,我目前只測試了Atmega8,Atmega16,Attiny13這3種芯片. 支持 ...… 查看全部問答∨ |
|
外部中斷產生到響應中斷用了25ms,即我的IST中 WaitForSingleObject等到中斷事件用掉了25ms,有什么辦法可以減小中斷產生到響應的時間?可能是什么原因造成這個問題的呢?… 查看全部問答∨ |
|
誰能提供一個vs2005下控制ARM2440的IO或AD的例子呀? 剛開始學WIN CE的菜鳥。想了解VS 2005下如何控制ARM2440的IO或AD。 哪位老大能給個例子,不勝感激。 只有這么多分啦。… 查看全部問答∨ |
|
基于XMLHttpRequest的方法來是實現遠程控制,大部分的工作都是在瀏覽器上完成的,這樣減輕了嵌入式Web服務器的負擔,感覺速度也很快,而且開發還是比較容易的,只要你熟練掌握JavaScript,結合Firefox的fir ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 特斯拉:美國交付的Model Y/3電池包已實現100%美國生產
- 地平線與博世深化合作,攜手為多家車企提供輔助駕駛產品
- 強化中國市場戰略布局,德州儀器正靈活應對全球關稅挑戰
- Molex莫仕通過本地合作和創新加強支持中國汽車行業
- 貿澤開售Texas Instruments適用于高分辨率AR HUD的 全新DLP4620S-Q1 0.46"汽車數字微鏡器件
- ROHM推出高功率密度的新型SiC模塊,將實現車載充電器小型化!
- 用上車規級UFS 4.0,讓出行變得高效且可靠
- 車載測試技術解析:聚焦高帶寬、多通道同步采集與協議分析
- 傳統晶體管的極限!臺積電3nm N3P已量產
- 分析師稱H20出口管制毫無意義:對中國AI發展影響不大