基於51微控制器的矩陣計算器設計
當初本科的畢業設計不是很完美,一直想把它完善一下,這學期剛開始有點時間,就以一個小專案的方式,綜合自己這一年多來的程式碼閱讀收穫,重寫了這個工程。
一,平臺的重新搭建
Ø 在win7上重新安裝了proteus7.8用於模擬階段的測試,並從以前的資料中找到了模擬模型;
Ø 為了生成微控制器可執行檔案,選擇使用了Ubuntu系統下的sdcc編譯器,安裝使用都很簡單(想多在Ubuntu下進行程式設計),參考http://blog.csdn.net/adam_embedded/article/details/45310325;
Ø 字模提取軟體,用於各種字元碼的提取;
二,模擬程式碼重寫
Ø 仿照之前見過的比較系統的工程目錄,建立了自己的工程目錄:
Ø 模仿C++類的方式,按照不同的功能,將之前冗雜的單個工程檔案分成了幾個分開的功能檔案:
Ø 每個.c實現不同類的功能:
keyboard_function:
lcd_function:
core_function:
三,實驗效果
完成了相加,相乘,求模,求轉置的功能,求逆運算因為會牽扯到小數運算和顯示,並未將其放入該工程,以下是主要的顯示效果:
四,專案缺陷
Ø 由於螢幕尺寸問題,侷限在3*3的矩陣計算上;
Ø 沒有刪除錯誤輸入的清除功能(待實現);
Ø 較小的RAM使得很容易記憶體不足,程式編寫受到限制(待配合硬體加入外部儲存器);
Ø 單迴圈機制,沒有有效的使用中斷來避免各種意外情況(待將鍵盤掃面、功能選擇等函式寫入中斷函式);
2018.3.15