我想使用Simulink爲Arduino Uno硬件創建程序。但是我想使用像liquidcrystal這樣的現有庫來處理輸出到LCD顯示器。如何創建包含液晶類文件的s函數?爲Arduino庫創建Simulink塊,如liquidcrystal
我認爲s函數是要走的路,因爲現有的Simulink Arduino庫塊實際上是被屏蔽的s函數。我使用的是Simulink學生版本,因此我不認爲我可以編譯模型中的C代碼,並將其合併到Arduino IDE中的項目中。
我想使用Simulink爲Arduino Uno硬件創建程序。但是我想使用像liquidcrystal這樣的現有庫來處理輸出到LCD顯示器。如何創建包含液晶類文件的s函數?爲Arduino庫創建Simulink塊,如liquidcrystal
我認爲s函數是要走的路,因爲現有的Simulink Arduino庫塊實際上是被屏蔽的s函數。我使用的是Simulink學生版本,因此我不認爲我可以編譯模型中的C代碼,並將其合併到Arduino IDE中的項目中。
我要把我的意見爲答案... :)
好了,所以創建一個程序從Simulink中,你需要的代碼生成工具安裝。 ver
會告訴你是否有Simulink編碼器和嵌入式編碼器。如果您使用的是較舊版本的MATLAB,那麼它被稱爲實時工作室。如果沒有其中一個,你就不會生成任何代碼。
因此,假如你可以編碼,生成:
S-功能是他們的路要走:http://www.mathworks.co.uk/help/simulink/s-function-basics.html
...雖然有各種工具來幫助創建S-功能。
總之,這個過程是:
這些步驟全部可以在大量的擴展。這個過程是第一次,但你會學到很多關於S函數,model.RTW文件,TLC和調試以上所有內容。
哦,是的,調試S-函數可以是一個球。準備好使用類似visual studio的東西來「附加」到matlab過程來進行調試。
豐富
我認爲值得澄清/添加的一件小事:例如,您需要提到的工具箱來生成C代碼,但它們不是簡單地生成針對Arduino的可執行文件所必需的。您可以使用基於Simulink的[Run-On-Target Hardware](http://www.mathworks.com/help/simulink/ug/about-run-on-target-hardware-feature.html)來部署Simulink模型到Arduino。也就是說,與您提到的工具箱相比,該功能顯然非常有限,因此OP可能不是最好的方法,因爲OP想要合併外部庫。 – grungetta
我假設你已經看過[這裏](http://www.mathworks.com/academia/arduino-software/arduino-simulink.html)。 MathWorks的Arduino模塊不需要任何額外的工具箱即可運行。 MATLAB/Simulink的學生版本不一定比標準版本具有更少的功能*,但是*您可能受限於您安裝的工具箱。使用'ver'命令獲取您可用的工具箱列表。這可能會極大地影響你如何解決這個問題。 – grungetta
另外,你可以提供關於liquidcrystal類文件的更多信息。這是你指的Arduino庫嗎?如果您有一些鏈接提供了您想要使用的確切文件的更多信息,那麼這對於準確理解您的目標是非常有用的。 – grungetta
您使用的是什麼版本的MATLAB?在命令提示符處使用ver - 您是否擁有Real-time Workshop,Simulink Coder或Embedded Coder?如果你沒有這些代碼生成工具,那麼你將很難從Simulink創建一個程序,你只能以仿真的方式運行。 – RichColours