共陰極編程
① P1口以共陰極方式連接8個發光二極體(用單片機語言編程)
不好用
② 畫出一個4位共陰極七段碼顯示電路,並通過編寫程序來實現4位數字的顯示功能
共陰極七段碼顯示電路,並通過編程程序來實現四個功能,這個肯定你可以塗直接通過下載軟體編程軟體直接編程
③ 七段數碼管的共陰級的十六進制編程功能表
7段數碼管其實是八段,有時小數點沒有使用,所以常說7段,
顯示原理是這樣的
數碼管首先從上到右,到下到左,到中間,最後到小數點分別標記為a b c d e f g dp八段其中小數點位DP為最高位,a段為最低位,要想顯示什麼字元只需要使對應的段發光即可,一般的習慣是單片機的埠的最低位接a段,次低位接b段,...最高位(如p0.7)接dp,顯示碼從高往低表示為為 dp g f e d c b a
如要顯示「1」,只需要將b、c段點亮即可,若是共陰極,片選是低電平選中,某一段輸出高電平點亮,即顯示碼為00000110 即0x06,其他的依照該方法類推
你給的碼表為共陰極的。
共陽極的恰巧相反!
數碼管的示意圖如下圖所示
④ 在單片機編程過程中,針對共陰極數碼管0和1的字形碼為什麼
00111111b。單片機c語言編程是基於C語言的單片機編程。單片機的C語言採用C51編譯器(簡稱C51)。在單片機編程共陰極數碼管的字型編碼應為:00111111b。
⑤ 流水燈共陰極代碼
#include //52系列單片機頭文件
#include //_crol_ 字元循環左移
#define uint unsigned int //宏定義
#define uchar unsigned char//宏定義
void delayms(uint); //聲明子函數
uchar a; //定義uchar類型的變數a
void main() //主函數
{
a=0xfe; //賦初值11111110
while(1) //大循環
{
P1=a;
delayms(500); //延時500毫秒
a=_crol_(a,1); //將a循環左移1位後再賦給a
}
}
void delayms(uint xms) //延時函數
{
uint i,j;
for(i=xms;i>0;i--) //i=xms即延時約xms毫秒
for(j=110;j>0;j--);
}
學習單片機,還需要結合實際硬體電路來編程
⑥ 單片機 共陰數碼管。如何編程
你所說的「8」 0xff是共陰的,那麼要是他點亮,8段數碼管abcdefg都應該為1,h是小數點,沒有用到,則是0.
abcdefgh則為:11111110
把順序倒過來就是01111111
把八為二進制分2組,四位一組
根據8421碼:
8 4 2 1 8 4 2 1
-----------------------------------------------------
0 1 1 1 1 1 1 1
4+2+1=7 8+4+2+1=15 (分數下面是0的不用和上面相加的)
16進制中 10=a 11=b 12=c13=d14=e15=f
即 0x7f
你上面說的8=0xff是把小數點也算上去了的!
⑦ 單片機連接共陰極六位數碼管,顯示23.3458....類似這樣的數,選擇顯示前四位。怎麼編程編程啊
首先會分離十位,百位 十分位 百分位,掃描顯示時,對於不需要顯示的位,可以直接跳過,也可以送暗碼0xFF或0x00,對於帶小數點的那一位,可以在沒有小數點的七段碼前加0x80。
⑧ 51單片機C語言共陰極LED數碼管時鍾編程
是4位數碼管吧
只考慮分鍾的調整
沒有考慮小時的調整吧。。。