編程流程圖 單片機的主程序為什么是死循環(huán)?
單片機的主程序為什么是死循環(huán)?單片機是集CPU、ram、ROM、GPIO、定時器、中斷等功能于一體的“微型計算機”。編譯完成后,需要將程序下載到單片機的ROM中。開機后,單片機可以讀取并執(zhí)行ROM程序
單片機的主程序為什么是死循環(huán)?
單片機是集CPU、ram、ROM、GPIO、定時器、中斷等功能于一體的“微型計算機”。編譯完成后,需要將程序下載到單片機的ROM中。開機后,單片機可以讀取并執(zhí)行ROM程序。經過編譯,我們編寫的程序實際上是一些可以被單片機識別和執(zhí)行的指令。單片機的CPU只有一個線程,一次只能執(zhí)行一條指令。指令自上而下執(zhí)行。最后,他們需要跳回前線來產生新的執(zhí)行。因此,單片機的主程序是一個死循環(huán)。
MCU上電后需要初始化,只需執(zhí)行一次,所以初始化程序一般不會進入主程序的死循環(huán)。主程序需要連續(xù)執(zhí)行,因此會進入死循環(huán)。
由此可見,MCU程序是按從上到下的順序執(zhí)行的,需要在隊列中運行。MCU還有一個中斷系統(tǒng)。如果有需要立即響應的事件,可以暫停和中斷主程序。中斷事件處理后,主程序可以繼續(xù)執(zhí)行。就像開會時,老板突然打來電話,你需要暫停會議,先接老板電話,然后繼續(xù)開會。當然,中斷事件也可以被阻止,就像會議中的騷擾電話一樣,你可以忽略它或掛斷。
關于C語言中的程序循環(huán),怎么可以看出是外循環(huán)和內循環(huán)?
A:首先,看大括號,即{}
如果沒有大括號,下面的for語句將循環(huán),后面的for語句將不循環(huán)
一般來說,大括號將是清晰的
for()
{
!]上面的代碼非常直觀
for()
for()
//在第二個循環(huán)中
//在循環(huán)外
上面的代碼不直觀,所以很容易出錯,因此,建議使用大括號
如果您可以在不繪制流程圖的情況下編程,建議您先學習自己的程序。
如果要繪制主程序的流程圖,需要了解主函數的程序,并根據main()函數中的具體編寫過程進行繪制,例如:
程序開始---定義變量---初始化變量---使用選擇或循環(huán)或序列結構---調用子函數(可以不調用)--程序結束
以上是繪制程序流程圖的最簡單方法。如果你畫了第一個模擬考試或模塊的流程圖,你應該了解算法或模塊。分析算法或模塊的具體方式,根據這種方式可以畫出相應的流程圖。
如果您是初學者,想嘗試按照流程圖的作圖方法編程,建議您一定要學習清楚所使用的每一種算法,閱讀標題,然后開始編程。
下面是讓VISO繪制流程圖的關鍵點:
1、選擇下載合適版本的VISO
2、用capsule開始和結束程序
3、用circle分頁
4、用parallelgome輸入
5、用square語句
6、用diamond判斷
7、用wave打印