原创 GCC STM23 cannot find -lstdc++

zhzChose the C++ project incorrectly when create the new project. The correct way is: File–>Project–>C Project–>Pro

原创 IP178G交換機啓動失敗的症狀

IP178G芯片,配合MP2307開關電源。 啓動後,pin41的LED亮後一段時間,熄滅。同時VDD1V1的電壓在1.4V和1.8V變動。沒有穩定在1.1V。 經檢查發現底部散熱焊盤對地電阻爲20歐姆。對比好的板子爲2歐姆。 因此飛線連

原创 STM32 C++ 底層封裝的嘗試[1]

現在在伊頓公司實習,用的是freescale的mpc563處理器。開發流程大致是:應用層在Matlab建模,然後通過matlab的code generation自動生成代碼,得到應用層的*.cpp和*.h文件。然後手打底層代碼,同樣是*.

原创 串口通信的幀同步問題

封裝STM32串口的底層時,遇到了串口幀同步的問題。雖然以前也遇到類似場合,寫出來的代碼基本能夠解決問題,但是在邏輯上總是不能徹底的解釋一些細節。 當前的工作環境: 由於代碼想用在一個簡單的PID閉環上,做在線的參數整定。假設當前PID解

原创 DSP 連不上 JTAG, 'SC_ERR_PATH_BROKEN', 關注EMU1 EMU0

早先設計28335的板子,有EMU0 EMU1兩線和DSP上兩個引腳對應。 這次做28069的原理圖時,看到沒有這兩個對應引腳,網上查了一下EMU0 EMU1似乎也沒什麼用途,於是就把2條線省去。 板子焊出來後,發現JTAG連不上芯片。報

原创 DRV8301芯片調試總結

2016/06/14 問題1: 芯片內置BUCK電壓不正確-解決 DRV8301 自帶BUCK輸出應爲3.3V。 實測兩塊分別爲5.5V和5.3V。 後重焊DRV8301,將底部散熱焊盤焊上,BUCK輸出電壓正常 2016/07/19

原创 底盤運動學裏程計軟件及測試

背景: 大量不同參數的移動機器人底盤。部分底盤本地並沒有樣機,更新代碼後無法保證是否正常工作。 需要簡單有效的反轉定義每個輪的左右方向,高效互換各個輪的ID。 AGV停止狀態判斷。對於高分辨率的編碼器,不被誤判爲運動。 在下發

原创 TK1時間同步

關於時鐘與網絡同步問題,需要聯網開機後鍵入以下命令。 $sudo dpkg-reconfigure tzdata 選擇 Asia   Shangha

原创 stm32復位電阻設置過小導致的各類症狀

STM32F103T8U6,焊接時誤將復位電容的上拉電阻焊成10歐,出現症狀有: 燒寫一次程序後,程序無法運行,無法第二次燒寫程序。燒寫到最後,會報錯:Error: Flash Download failed - "cortex-M3"

原创 C++讀取*.bin文件時無法獲取0x20

http://www.cplusplus.com/forum/beginner/145308/ Angeljruiz (185): 大家好,我在讀取一個二進制文件時,有些值不正確,請幫助一下我! 下面是相關的代碼: #include <

原创 Nuttx編譯時報:ERROR: arm-nuttx-eabi-gcc failed: 127

在make menuconfig時,檢查下編譯工具 System Type -> Tool chain selection -> Generic GNU eabi tool chain under linux 這個纔是正解。 之前默認是B

原创 Linux vi中查找字符內容的方法

使用vi編輯器編輯長文件時,常常是頭昏眼花,也找不到需要更改的內容。 這時,使用查找功能尤爲重要。 方法如下: 1、命令模式下輸入“/字符串”,例如“/Section 3”。 2、如果查找下一個,按“n”即可。 要自當前光標位

原创 Windows下Qt和Qwt的安裝

http://m.blog.csdn.net/blog/swrd456/11266991 qt creater中不顯示qwt的原因 http://blog.csdn.net/e5max/article/details/8762350

原创 visualgdb下stm32工程模板修改

最近嘗試試用Visualgdb來調stm32。由於剛從Keil轉到visualgdb,有一些部分還不是很習慣。比如visualgdb中ST的std periph lib是以只讀的形式保存在軟件安裝路徑下,而不是在工程文件路徑下的。因此和k

原创 The way to minimize the C++ binary file compiled by arm g++

CFLAGS += -Os It means optimize for space. CFLAGS += -ffunction-sections -fdata-sections It means save the fun