This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

新手想請教幾個關於中斷的問題...



您好

剛剛看完LAB4的教學以後我還是有些疑點

1.SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);

一開始使用上列程式碼 這樣出來的頻率應該是40MHZ

但是為何之後ulPeriod = (SysCtlClockGet() / 10) / 2;會便成10HZ呢?

2.現在將範例程式燒入後,只有藍燈會閃爍,請問我該怎麼樣讓它們紅、藍、綠依序閃爍呢?

3.請問我想將我的ARM LM4F120H5QR與XP的超級終端機連結 有範例程式可以參考嗎?

謝謝您的回答  感謝您的用心  祝您工作順利

  • 1. SysCtlClockGet() 得到的值就是始终频率,为40MHz。如果用这个值除以20作为定时器的溢出值,则得到定时器中断的频率为20Hz。你说的10Hz指的是灯闪烁的周期吧。20Hz的频率对灯的状态取反,就得到10Hz的闪烁频率了。

    2.中断服务程序里做个标志,然后分别对三个灯进行操作即可。

    3.Tivaware例程里面的Uart echo就可以使用超级终端。

  • 首先,感謝您的解答,我確實找到了Uart_echo的範例程式

    可是燒入進去之後,連接終端機都一切正常,也確實有顯示出"Enter Text:"的字樣

    但是按了其他按鍵都不會有其他的事情發生...

    請問這個範例本身就只是讓ARM裡面的指定字串顯示在終端機上面嗎?

  • 这个例程,键盘输入的字符会被ARM接收然后再发送给PC。因此你按下一个按键,超级终端上就会限制按下的键值。