首先要寫入單片機的頭函數,定義單片機P1口的8個管腳,讓他們分別代表流水燈的8個led。寫一個大約一小時的延時函數,為了清楚的看到流水燈的、效果。
成都創新互聯公司始終堅持【策劃先行,效果至上】的經營理念,通過多達10多年累計超上千家客戶的網站建設總結了一套系統有效的全網整合營銷推廣解決方案,現已廣泛運用于各行各業的客戶,其中包括:白烏魚等企業,備受客戶表揚。
crol()是循環左移,在匯編相當于多個 RL A,的組合。
C51系列單片機中_crol_指令是循環左移函數,_cror_是循環右移函數,這是51中特有的指令,別的類型單片機就不能使用了。易于程序的移植和通用性考慮個人比較推薦用 左移, 右移這兩個C中的移位符號。
你的led燈是共陽的,從你給的條件可以判斷。p1=0xfe,即最低位為‘0’,故點亮的是p0引腳所對應的led燈,也就是你所謂的c0。所以你的程序沒有問題啊。
1、循環左移n: (a(N-n))|(an)循環右移n: (a(N-n))|(an)C語言的位運算功能是其區別于其他大多數高級程序設計語言的特色之一,用它可以方便實現一些特殊功能,靈活掌握是用C程序編寫系統程序的基礎。
2、加入一個頭文件INTRINS.H使用里面的循環左移、循環右移函數就可以了。這兩個函數分別是_crol_()和_cror_()如A=10100000即0xA0。
3、你的led燈是共陽的,從你給的條件可以判斷。p1=0xfe,即最低位為‘0’,故點亮的是p0引腳所對應的led燈,也就是你所謂的c0。所以你的程序沒有問題啊。
intrins.h一般出現在C51單片機編程中,一般程序中需要使用到空指令_nop_();字符循環移位指令_crol_等時使用。
這個函數是延時一個機器周期的意思,它包含在頭文件intrins.h中,只要程序應用到_nop_(),就需要有頭文件intrins.h的聲明。
在單片機c語言中直接調用庫函數即可,具體如下:includeintrins.h // 聲明了void _nop_(void);_nop_(); // 產生一條NOP指令。
includereg5h是52單片機的頭文件;#includeintrins.h也是頭文件,且這個頭文件主要是包含了有關51單片機的幾條匯編語句的C語言調用接口,是直接編譯成對應的匯編語句的。
再發一個10個燈的,不過函數是IROL / _crol_不好實現,我用_irol_實現的。
_crol_不好實現,我用_irol_實現的。延時部分自己修改。
可以通過左移函數_crol_()和右移函數_cror_()來實現LED等的來回流動。
用精確定時的方法,設置流水燈運行時的時間間隔,延時時間為500MS。#include reg5h首先寫出單片機的頭函數。#include intrins.h輸入位移函數。unsigned int count=0,led;定義函數。
_crol_是字符循環左移,就是只左移低8位,高位舍掉,且左移出的第7位會移到第0位,是循環的。而只是純粹地左移。
crol是character to rotate left的縮寫,也就是字符循環左移的意思,教你怎么找KEIL自帶的庫函數吧,里面有所有庫函數的調用說明和例子。
第一個c是circle的第一個字母,循環的意思。第二個字母是roll的字母縮寫,滾動、移動的意思。第三個是of的縮寫。第四個l是left,向左的意思,第四個是r,就是right,向右的意思。
C51系列單片機中_crol_指令是循環左移函數,_cror_是循環右移函數,這是51中特有的指令,別的類型單片機就不能使用了。易于程序的移植和通用性考慮個人比較推薦用 左移, 右移這兩個C中的移位符號。
例如,如果有一個二進制數字 outdata = 10100110,執行 crol(outdata,1) 操作后,得到的結果是 01001101。具體算法如下:將數字轉換為二進制表示。將二進制位數限制在 8 位內。將數字左移指定的位數。
1、故點亮的是p0引腳所對應的led燈,也就是你所謂的c0。所以你的程序沒有問題啊。
2、在左邊還有個sec 寄存器,可以看到執行到當期指令時所花的時間。不過首先你要去project option里面把晶振頻率設置成和你單片機一樣的。選擇變量i,右鍵,點擊add to watch 1。這里是看變量i的變化的。
3、用個移位處理就行了 set(void) { 流水燈.c * 描述 : 該程序實現LED的流水燈顯示。
4、所以移動到最后,aa就等于0了。而_crol_是循環左移,aa的最高位左移后會寫入aa的最低位,所以燈看起來是流動的。
5、_crol_不好實現,我用_irol_實現的。延時部分自己修改。
6、想用這個函數,只要先在程序的開頭加入一條引用聲明就可以了。includeINTRINS.H 因為_crol_這個函數是包含在INTRINS.H文件之中的函數。
當前名稱:c語言crol函數 c語言crc
文章路徑:http://vcdvsql.cn/article22/diopscc.html
成都網站建設公司_創新互聯,為您提供Google、云服務器、商城網站、網站策劃、軟件開發、網站內鏈
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯