欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2268|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)按鍵控制數(shù)碼管加1程序,結(jié)果不亮

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
/*
*功能:開關(guān)key1控制實(shí)現(xiàn)每按一次,數(shù)碼管數(shù)字加1,實(shí)現(xiàn)00-99的循環(huán)
*開關(guān)key2實(shí)現(xiàn)隨時(shí)清零
*/

  1. #include<reg52.h>
  2. sbit SEG1 = P1^0;  //定義顯示十位的數(shù)碼管
  3. sbit SEG2 = P2^0;  //定義顯示個(gè)位的數(shù)碼管
  4. sbit key1 = P3^2;  //定義實(shí)現(xiàn)數(shù)碼管加1的開關(guān)key1
  5. sbit key2 = P3^3;  //定義實(shí)現(xiàn)清零的開關(guān)key2
  6. typedef unsigned int uint;
  7. uint i,j;
  8. uint sum = 0;
  9. unsigned char code DSY_CODE[] = {0xC0,0xF9,0xA4,
  10.                                  0xB0,0x99,0x92,
  11.                                                                  0x82,0xF8,0x80,0x90}; //共陽極數(shù)碼管
  12. void display(uint i,uint j); //數(shù)碼管顯示函數(shù)   


  13. void main()
  14. {
  15.         IE = 0X85;
  16.         IT0 = 1;
  17.         IT1 = 1;
  18.         while(1)
  19.         {           
  20.           display(i,j);                                
  21.         }
  22.                
  23. }


  24. void EX0_INT(void) interrupt 0        // 外部中斷0,實(shí)現(xiàn)按鍵按一下數(shù)碼管數(shù)字加一
  25. {
  26.         sum++;        
  27. }

  28. void EX1_INT(void) interrupt 2//外部中斷1,實(shí)現(xiàn)清零
  29. {
  30.         sum = 0;        
  31. }


  32. void display(uint i,uint j)        //數(shù)碼管顯示數(shù)字
  33. {
  34.         i = sum/10;                        //數(shù)碼管顯示十位數(shù)字
  35.         j = sum%10;                    //數(shù)碼管顯示個(gè)位數(shù)字
  36.         if(sum == 100)
  37.         sum = 0;
  38.         P1 = DSY_CODE[i];
  39.         P2 = DSY_CODE[j];
  40. }
復(fù)制代碼

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:213173 發(fā)表于 2019-5-19 21:17 | 只看該作者
樓主顯示程序錯(cuò)誤




  1. #include<reg52.h>
  2. sbit SEG1 = P1^0;  //定義顯示十位的數(shù)碼管
  3. sbit SEG2 = P2^0;  //定義顯示個(gè)位的數(shù)碼管
  4. sbit key1 = P3^2;  //定義實(shí)現(xiàn)數(shù)碼管加1的開關(guān)key1
  5. sbit key2 = P3^3;  //定義實(shí)現(xiàn)清零的開關(guān)key2
  6. typedef unsigned int uint;
  7. //uint i,j;
  8. uint sum = 0;
  9. unsigned char code DSY_CODE[]={ //共陽極數(shù)碼管
  10.                 0xC0,0xF9,0xA4,0xB0,0x99,
  11.                 0x92,0x82,0xF8,0x80,0x90};
  12. void display(unsigned char i); //數(shù)碼管顯示函數(shù)   

  13. void main()
  14. {
  15.         IE = 0X85;
  16.         IT0 = 1;
  17.         IT1 = 1;
  18.         while(1)
  19.         {           
  20.                 display(sum);
  21.         }
  22.                
  23. }


  24. void EX0_INT(void) interrupt 0 // 外部中斷0,實(shí)現(xiàn)按鍵按一下數(shù)碼管數(shù)字加一
  25. {
  26.         sum++;        
  27.         if(sum >= 100)
  28.                 sum = 0;
  29. }

  30. void EX1_INT(void) interrupt 2//外部中斷1,實(shí)現(xiàn)清零
  31. {
  32.         sum = 0;        
  33. }


  34. void display(unsigned char i)        //數(shù)碼管顯示數(shù)字
  35. {       
  36.         P1 = DSY_CODE[i/10];
  37.         P2 = DSY_CODE[i%10];
  38. }
復(fù)制代碼



回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表