新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > LED--8051驅(qū)動(dòng)測(cè)試程序

LED--8051驅(qū)動(dòng)測(cè)試程序

作者: 時(shí)間:2016-11-11 來(lái)源:網(wǎng)絡(luò) 收藏
  1. /************************************************
  2. 功能:LED--8051驅(qū)動(dòng)測(cè)試程序(共陰極)
  3. 使用:調(diào)用函數(shù) LEDn_display(*****)
  4. n表示用幾個(gè)數(shù)碼管顯示n<=4
  5. 參數(shù)傳遞跟據(jù)具體情況確定
  6. 時(shí)間:2011年1月7日
  7. ************************************************/
  8. #include
  9. #include
  10. #defineuintunsignedint
  11. #defineucharunsignedchar
  12. sbit dula=P2^6;//段碼控制
  13. sbit wela=P2^7;//位碼控制
  14. /*共陰(CC)極顯示段碼*/
  15. uchar code LED_table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  16. voidLED_delay(unsignedcharLED_i)//1ms延時(shí)程序
  17. {
  18. unsignedcharLED_j,LED_k;
  19. for(LED_j=LED_i;LED_j>0;LED_j--)
  20. for(LED_k=125;LED_k>0;LED_k--);
  21. }
  22. voidLED1_display(uchar sh_c,uchar g_c)//1位顯示程序
  23. {
  24. //顯示個(gè)位
  25. P0=0xfb;wela=1;wela=0;//第一個(gè)數(shù)碼碼管當(dāng)前顯示
  26. P0=LED_table[g_c];dula=1;dula=0;//顯示的數(shù)字
  27. LED_delay(5);
  28. }
  29. voidLED2_display(uchar sh_c,uchar g_c)//2位顯示程序
  30. {
  31. //顯示十位
  32. wela=0;P0=0xfd;wela=1;wela=0;
  33. dula=0;P0=LED_table[sh_c];dula=1;dula=0;
  34. LED_delay(5);
  35. //顯示個(gè)位
  36. P0=0xfb;wela=1;wela=0;
  37. P0=LED_table[g_c];dula=1;dula=0;
  38. LED_delay(5);
  39. }
  40. voidLED3_display(uchar bai_c,uchar sh_c,uchar g_c)//3位顯示程序
  41. {
  42. //顯示百位
  43. P0=0xfe;wela=1;wela=0;
  44. P0=LED_table[bai_c];dula=1;dula=0;
  45. LED_delay(5);
  46. //顯示十位
  47. wela=0;P0=0xfd;wela=1;wela=0;
  48. dula=0;P0=LED_table[sh_c];dula=1;dula=0;
  49. LED_delay(5);
  50. //顯示個(gè)位
  51. P0=0xfb;wela=1;wela=0;
  52. P0=LED_table[g_c];dula=1;dula=0;
  53. LED_delay(5);
  54. }
  55. voidLED4_display(uchar qian_c,uchar bai_c,uchar sh_c,uchar g_c)//4位顯示程序
  56. {
  57. //顯示千位
  58. P0=0xfe;wela=1;wela=0;
  59. P0=LED_table[bai_c];dula=1;dula=0;
  60. //顯示百位
  61. P0=0xfe;wela=1;wela=0;
  62. P0=LED_table[bai_c];dula=1;dula=0;
  63. LED_delay(5);
  64. //顯示十位
  65. wela=0;P0=0xfd;wela=1;wela=0;
  66. dula=0;P0=LED_table[sh_c];dula=1;dula=0;
  67. LED_delay(5);
  68. //顯示個(gè)位
  69. P0=0xfb;wela=1;wela=0;
  70. P0=LED_table[g_c];dula=1;dula=0;
  71. LED_delay(5);
  72. }


評(píng)論


技術(shù)專區(qū)

關(guān)閉