單片機(jī)中晶振的選用原因
單片機(jī)工作時(shí),是一條一條地從RoM中取指令,然后一步一步地執(zhí)行。單片機(jī)訪問一次存儲(chǔ)器的時(shí)間,稱之為一個(gè)機(jī)器周期,這是一個(gè)時(shí)間基準(zhǔn)。-個(gè)機(jī)器周期包括12個(gè)時(shí)鐘周期。如果一個(gè)單片機(jī)選擇了12MHz晶振,它的時(shí)鐘周期是1/12us,它的一個(gè)機(jī)器周期是12×(1/12)us,也就是1us.
MCS-51單片機(jī)的所有指令中,有一些完成得比較快,只要一個(gè)機(jī)器周期就行了,有一些完成得比較饅,得要2個(gè)機(jī)器周期,還有兩條指令要4個(gè)機(jī)器周期才行。為了衡量指令執(zhí)行時(shí)間的長(zhǎng)短,又引入一個(gè)新的概念:指令周期。所謂指令周期就是指執(zhí)行一條指令的時(shí)間。例如,當(dāng)需要計(jì)算DJNZ指令完成所需要的時(shí)間時(shí),首先必須要知道晶振的頻率,設(shè)所用晶振為12MHz,則一個(gè)機(jī)器周期就是1us.而DJNZ指令是雙周期指令,所以執(zhí)行一次要2us.如果該指令需要執(zhí)行500次,正好1000us,也就是1ms.
機(jī)器周期不僅對(duì)于指令執(zhí)打有著重要的意義,而且機(jī)器周期也是單片機(jī)定時(shí)器和計(jì)數(shù)器的時(shí)間基準(zhǔn)。例如一個(gè)單片機(jī)選擇了12MHz晶振,那么當(dāng)定時(shí)器的數(shù)值加1時(shí),實(shí)際經(jīng)過(guò)的時(shí)間就是1us,這就是單片機(jī)的定時(shí)原理。
評(píng)論