單片機中數制與數制的轉換是怎樣實現的? ?
關于數制之間的轉換,其實在數字電路的書中會講到,也很容易理解。在我們生活中,十進制經常被我們用到:數字0,1,2,3,4,5,6,7,8,9,逢十進一。那在單片機運用中,常見數制有:二進制、八進制、十進制、十六進制。
在單片機編程中經常應用到二進制和十六進制。比如現在有八個LED燈,在某一時刻,前四個燈全亮,后四個燈全滅。LED正極接電源,那么用51單片機P1八個口控制LED的亮滅(輸出低電平LED亮,高電平LED滅),前四個LED分別連接P1.0~P1.3,后四個連接P1.4~P1.7。這一段的代碼用二進制和十六進制分別可以這樣編寫:
二進制代碼:
P1.0=0;P1.1=0;P1.2=0;P1.3=0;P1.4=1;P1.5=1;P1.6=1;P1.7=1;
十六進制代碼:P1=0xF0;
由此可見,單片機中利用到多個串口時,編程使用十六進制比較方便,另外如果要循環移位常用十六進制。單片機中利用到單個串口時,編程使用二進制比較方便
進制簡略介紹;
1、二進制:使用數碼只有0和1兩個數字,逢二進一
一般使用單片機IO輸出兩種狀態:高電平、低電平。一般用0表示低電平,1表示高電平。編程控制就是以這個概念來編寫程序邏輯。如果是3.3V系統,高電平就為3.3V,如果為5V,那高電平就為5V,低電平為0V。如果做輸出口的話,就是單片機通過軟件置位相關寄存器讓端口置高電平或低電平,達到電平輸出的目的,如果做輸入口,就是單片機捕捉端口的電平然后置位相關寄存器,然后軟件讀取寄存器中0或1,達到輸入作用。
2、八進制:使用數碼有0~7共八個數字,逢八進一
3、十進制:使用數碼有0~9共十個數字,逢十進一
4、十六進制:數碼有0~9,A~F共十六個數,逢十六進一
十六進制在單片機中經常使用,程序中會用到,通訊會用到,程序生成的HEX文件也是十六進制的。而bin文件是二進制文件。
審核編輯:湯梓紅
-
單片機
+關注
關注
6032文章
44525瀏覽量
633266 -
二進制
+關注
關注
2文章
794瀏覽量
41603 -
數制轉換
+關注
關注
0文章
5瀏覽量
7137
發布評論請先 登錄
相關推薦
評論