天天看點

通過gr-modtool在gnuradio中編寫自己的C++子產品

雖然gnuradio給我們提供了近百種常用的功能子產品block,但是在我們自己的系統設計中,需要不同的子產品完成特定的功能,這樣就需要我們自己來編寫c++源代碼,生成新的block以供系統調用。如果源代碼、編譯檔案都要自己編寫,需要很強的專業知識。利用模闆寫子產品gnuradio3.7用的都是gr_modtool

在終端進入主檔案夾,輸入: $gr_modtool newmod howto(這裡以howto為例),主檔案夾下就生成一個gr-howto檔案夾

接下來就是添加要編寫的子產品。先進入剛才生成的gr-howto檔案夾,在終端輸入

$gr_modtool add -t general square

下面選項選擇預設

接下來就是編寫c++代碼:進入lib檔案夾,修改square_impl.cc檔案(由于例子比較簡單兩個頭檔案都不需要修改)

編寫完.cc檔案後,進入gr-howto檔案夾,建立檔案夾:$mkdir build

進入build檔案夾:$cd build

編譯:$cmake ../

           $ make

使子產品可以在grc中使用:在gr-howto目錄下輸入$gr_modtool makexml square,選擇y

安裝子產品:進入build目錄,$sudo make install

ubuntu可能要整理一下依賴關系:$sudo ldconfig

完成