在DE2上运行uCOSII
NiosII本身提供有uCOSII RTOS,我们所要做的仅仅是把硬件搭好(或者直接用现成的.sof文件),用鼠标点一下选项,即可跑“Hello from uCOSII”。但参照Altera的“Using MicroC/OS-II RTOS with the Nios II Processor Tutorial”文档会发现Run an hardware时出现错误,首先检查硬件无法Compile通过,管脚映像也不对。
现在转自萧大的一篇文章,解决了上述问题。
全文地址:http://www.cnblogs.com/oomusou/archive/2007/09/26/906022.html
如何成功執行『Using μC/OS-II RTOS with the Nios II Processor Tutorial』? (IC Design) (Quartus II) (Nios II) (μC/OS-II)
Abstract
這是一份Altera官方提供的μC/OS-II tutorial,但我測了兩個星期,都無法成功,以下是我的研究心得。
Introduction
Altera官方提供了『Using μC/OS-II RTOS with the Nios II Processor Tutorial』。
選擇MicroC/OS-II Tutorial Project Template
這篇tutorial的Figure 1-3圖片有錯,應該是選擇MicroC/OS-II,但文字部分敘述正確。
儘管如此,若你繼續跟著這份tutorial做下去,並不能得到預期的結果,而是以下的結果
而且就算你用Nios II IDE所提供最簡單的『Hello MicroC/OS-II』這個 template,所做出的依然是這個結果。
Proposed Steps
以下是修正後,能夠正確執行出結果的步驟。
1.重新Compile『DE2_SD_Card_Audio』
Step 1:
將DE2實驗板所附的光碟『DE2 System』中[CD-ROM:]\DE2_demonstrations\DE2_SD_Card_Audio 目錄複製到硬碟,別忘了須將此目錄的唯讀屬性拿掉,否則新compile的DE2_SD_Card_Audio.sof將無法覆蓋過去。
Step 2:
使用Quartus II重新compile『DE2_SD_Card_Audio』,產生新的DE2_SD_Card_Audio.sof,需要一段時間,在我們Pentium M 1.2G + 2.0G Ram下須compile約12分鐘,若compile成功將出現以下畫面。
Step 3:
使用Programmer將DE2_SD_Card_Audio.sof燒錄到DE2實驗板,方法同tutorial內所示,不再重述。
2.建立新的Nios II IDE Project
Step 4:
SOPC Builder System需指向新的DE2_SD_Card_Audio的system_0.ptf,剩下建立步驟如同tutorial所示,不再重述。
最後執行結果如tutorial所示。
Discussion
Q:為什麼不重新compille『C:\altera\61\nios2eds\examples\verilog\niosII_cycloneII_2c35\standard\』產生新的standard.sof?
A:在Quartus II 6.1直接compile這個project,compile到9%即產生以下錯誤。
若能直接修改source通過編譯,應該也是個方法。
Q:為什麼要重新compile『DE2_SD_Card_Audio』?不能直接燒錄原本光碟所附的DE2_SD_Card_Audio.sof嗎?
A:若直接燒錄原本光碟所附的DE2_SD_Card_Audio.sof到DE2實驗板,執行後將出現以下錯誤訊息。
Conclusion
這是我較早期摸索SOPC的文章,雖然借用SD Player範例的ptf可行,但終究不是解決之道,更完整的方法請參考(原創) 如何自己用SOPC Builder建立一個能在DE2上跑μC/OS-II的Nios II系統? (IC Design) (DE2) (Quartus II) (Nios II) (SOPC Builder) (μC/OS-II) 。