資料介紹
#includesbit P1_0 = P1^0;void Delay(); // 下面引用時一定要和這里的大小寫一致否則會有警告或錯誤void Main(){while (1) // 開始一直循環{P1_0 = 0;Delay(); // 沒有參數也要加 () 否則會有WarningP1_0 = 1;Delay();}}void Delay() // 12M晶振1s延時{unsigned char h, i, j, k;for (h = 5; h 》 0; h--)for (i = 4; i 》 0; i--)for (j = 116; j 》 0; j--)for (k = 214; k 》 0; k--); // 最后個要有 ; 號}//=======以下非代碼==========//原理,利用h,i,j,k循環指令消耗掉一定時間來達到延時,為什么利用循環延時的做法,在12M晶振延時1秒中需要h,i,j,k四個變量,且各變量的值是上面代碼中那樣呢?這要從單片機的周期說起,單片機有指令周期,機器周期,狀態周期,時鐘周期;時鐘周期:也就晶振的振蕩周期,以12MHz為例,時鐘周期為 1/ 12000000 = 1/12us;機器周期:1個機器周期=6個狀態周期=12個時鐘周期=1us;指令周期:單片機執行一條指令所需要的時間稱為指令周期,指令周期是以機器周期為單位的,不同的指令所需要的機器周期不一定相同(1-4個),單片機執行一條單周期指令需要1us,執行一條雙周期指令需要2us,for循環需要8個指令周期;具體執行for循環消耗的時間,可以在Keil里通過代碼測量:#includesbit P1_0 = P1^0;void Delay();void Main(){while (1)// 開始一直循環{P1_0 = 0;Delay();P1_0 = 1;Delay();}}void Delay(){unsigned char h;for (h = 1000; h 》 0; h--); // 此處下斷點}循環1000次執行完后的時間點1000次循環耗時 0.00042850s - 0.00019600s = 0.00023250s = 232.5us;1次循環耗時約 0.2us,1s = 1000000us,1000000us / 0.2us = 500000次,而5 * 4 * 116 * 214 = 496480;因為無符號字符型unsigned char 大小為1 byte,范圍為0~255,所以只能通過循環嵌套,近似的得到一個1s延時。(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 【Practical】51單片機軟件延時1S
- 51單片機定時、中斷練習:用延時程序做閃爍燈資料下載
- 看碼源總結Keil C 51單片機延時程序編寫資料下載
- 使用51單片機實現延時程序控制單燈閃爍的仿真文件免費下載 10次下載
- 單片機C51語言程序設計基礎的資料合集免費下載 18次下載
- 51單片機產生脈沖使LED燈亮1s熄滅3s交替相間的程序免費下載
- 使用51單片機進行精確延時的程序免費下載
- 使用51單片機按鍵控制流水燈換速的程序免費下載
- 51單片機的延時函數程序免費下載
- 51單片機的匯編延時程序免費下載
- 如何進行51單片機的延時計算資料和程序免費下載的
- 使用51單片機定時器中斷控制LED燈亮1S的程序免費下載
- 51單片機的延時函數資料免費下載
- 單片機的計時程序設計資料免費下載 6次下載
- 單片機C 語言的精確延時程序設計
- 基于C51單片機實現LED燈1s閃爍 4450次閱讀
- AT89S51單片機功能及特點 4669次閱讀
- 51單片機燒寫程序的方法 4929次閱讀
- 使用51單片機讀寫AT29C040的C語言程序免費下載 4529次閱讀
- HD44780讀寫單片機C51程序免費下載 4146次閱讀
- 單片機實現按鍵的電路和程序設計資料說明 9433次閱讀
- MCS51單片機程序設計時堆棧的計算方法解析 3678次閱讀
- 51單片機1s延時程序設計的詳細資料說明 7855次閱讀
- 基于51單片機直流電機PWM調速程序 4.8w次閱讀
- 基于AT89C51單片機直流電機PWM調速程序分享 1.6w次閱讀
- 51單片機匯編延時程序算法詳解 2.4w次閱讀
- 單片機延時程序基本知識匯總 2w次閱讀
- 如何使用Keil3開發51單片機程序 7161次閱讀
- 51單片機的幾種精確延時 4480次閱讀
- 單片機與程序設計(上) 3786次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多