原创 opengl介紹 webGL Open Inventor、Cosmo3D、Optimizer 3DLabs
OpenGL是一個開放的三維圖形軟件包,它獨立於窗口系統和操作系統,以它爲基礎開發的應用程序可以十分方便地在各種平臺間移植;OpenGL可以與Visual C++緊密接口,便於實現機械手的有關計算和圖形算法,可保證算法的正確性和可靠性
原创 keil錯誤 ERROR:PREPROCESSOR: MACROS TOO NESTED
1.錯誤顯示 2.找到錯誤文件夾 3.錯誤爲.h文件寫成.c文件 4.更改爲#include "dmafe.h"即可
原创 keil C51代碼優化等級介紹
keil優化等級圖示: 0級 Constan folding 常數合併:編譯器預先計算結果,儘可能用常數代替表達式。包括運行地址計算; 優化簡單訪問:編譯器優化訪問8051系統的內部數據和位地址; 跳轉優化:編譯器總是擴展跳轉到最終
原创 protel常用快捷鍵
enter——選取或啓動 esc——放棄或取消 f1——啓動在線幫助窗口 tab——啓動浮動圖件的屬性窗口 pgup——放大窗口顯示比例 pgdn——縮小窗口顯示比例 end——刷新屏幕 del——刪除點取的元件(1
原创 電池電量的監測方法
電池電量格數的定義: 一般手機設計待機電量時, 比如有4格5檔(4-3-2-1-0)的電量指示。 由於要考慮到電池使用一段時間(比如1年)後, 其放電平臺會降低,上述的比例肯定會失調。 所以需要考慮一點點這方面的餘量.以新電池的6
原创 C語言基礎代碼
1.數組中所有元素清零 void clear(int array[], int n_elements) { while(n_elements > 0) { array[--elements] = 0;
原创 #ifdef、#if defined
因爲對於一個大程序而言,我們可能要定義很多常量( 不管是放在源文件還是頭文件 ),那麼我們有時考慮定義某個常量時,我們就必須返回檢查原來此常量是否定義,但這樣做很麻煩.if defined宏正是爲這種情況提供瞭解決方案.舉個例子,如下:
原创 單節電池電壓容量計
電壓:4.16-4.22V涓流補充:100%電壓:4.15v 剩餘容量:99%電壓:4.14v 剩餘容量:97%電壓:4.12v 剩餘容量:95%電壓:4.10v 剩餘容量:92%電壓:4.08v 剩餘容量:90%電壓:4.05
原创 UART串行通信
通信按照傳統的理解就是信息的傳輸與交換。對於單片機來說,通信則與傳感器、存儲芯片、外圍控制芯片等技術緊密結合,成爲整個單片機系統的“神經中樞”。沒有通信,單片機所實現的功能僅僅侷限於單片機本身,就無法通過其他設備獲得有用
原创 51單片機AD轉換的程序
void Read_init (unsigned char CHA){ unsigned char AD_FIN=0; //存儲A/D轉換標誌 CHA &= 0x07; //選擇A
原创 51系列中data,idata,xdata,pdata的區別
51片內資源簡介 .8位CPU·4kbytes 程序存儲器(ROM) (52爲8K) ·256bytes的數據存儲器(RAM) (52有384bytes的RAM) ·32條I/O口線·111條指令,大部分爲單字節指令
原创 CAN通訊學習筆記
CAN: 控制器局域網絡(Controller Area Network)應用: CAN總線協議成爲汽車計算機控制系統、嵌入式工業控制局域網的標準總線。定義: CAN屬於現場總線的範疇,是一種有效支持分佈式控制或實時控制
原创 i2c 相關知識總結
一. 技術性能: 工作速率有100K和400K兩種; 支持多機通訊; 支持多主控模塊,但同一時刻只允許有一個主控; 由數據線SDA和時鐘SCL構成的串行總線; 每個電路和模塊都有唯一的地址;
原创 i2c中start和restart的區別
有的硬件芯片提供了一個個寄存器,供我們很好的操作i2c,但是,在用的時候,我們是不知道他到地是怎麼操作的,下邊,我就探討下i2c中的start和restart的區別。 start是在scl是高電平的時候sda的一個下降沿來表示一個
原创 --- Error: User Command terminated, Exit-Code = 1解決辦法
使用keil MDK編譯項目時,compiling編譯通過,但是文件最後出現錯誤 Error: User Command terminated, Exit-Code = 1,經查閱資料,MDK需要fromelf.exe文件