久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5398|回復: 3
收起左側

虛擬HD7279的位移程序 利用單片機、4*4矩陣鍵盤和8位數碼管

[復制鏈接]
ID:120703 發表于 2016-5-14 15:41 | 顯示全部樓層 |閱讀模式
利用單片機、4*4矩陣鍵盤和8位數碼管,虛擬HD7279部分輸入功能
按下數字鍵,將按下鍵對應位置值(0-9)顯示在8位數碼管最右邊,原先內容依次左移一位

仿真圖
0.png

源程序:
  1. #include<reg51.h>
  2. #define KEYPORT P1
  3. #define SEGPORT P0
  4. #define uchar unsigned char
  5. sbit TPORT=P3^0;
  6. sbit SPORT=P3^1;
  7. sbit FPORT=P3^2;
  8. uchar value;
  9. uchar flag=0;
  10. uchar one,two,three,four,five,six,seven,eight;
  11. void JKEY();
  12. void RKEY();
  13. void DISPLAY();
  14. void delay();
  15. void delay2ms();
  16. unsigned char code SEG[17]={
  17. 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
  18. 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40};                       
  19. void main()
  20. {
  21.         one=two=three=four=five=six=seven=eight=16;
  22.         while(1)
  23.         {
  24.                 RKEY();
  25.                 DISPLAY();
  26.         }
  27. }
  28. void JKEY(void)
  29. {
  30.         KEYPORT=0x0f;
  31.         if(KEYPORT!=0x0f)
  32.         {
  33.                 delay();
  34.                 if(KEYPORT!=0x0f)
  35.                 {
  36.                         KEYPORT=0x0f;
  37.                         switch(KEYPORT)
  38.                         {
  39.                                 case(0x07): value=0;break;
  40.                                 case(0x0b): value=1;break;
  41.                                 case(0x0d): value=2;break;
  42.                                 case(0x0e): value=3;break;
  43.                         }
  44.                         KEYPORT=0xf0;
  45.                         switch(KEYPORT)
  46.                         {
  47.                                 case(0x70): value=value;break;
  48.                                 case(0xb0): value=value+4;break;
  49.                                 case(0xd0): value=value+8;break;
  50.                                 case(0xe0): value=value+12;break;
  51.                         }
  52.                        
  53.                         while(KEYPORT!=0xf0)
  54.                         {
  55.                                 DISPLAY();
  56.                         }
  57.                                 flag=1;
  58.                 }
  59.         }
  60.        
  61. }

  62. void RKEY()
  63. {
  64.         JKEY();
  65.         if(flag)                //當有按鍵按下 左移
  66.         {
  67.                 flag=0;
  68.                 one=two;
  69.                 two=three;
  70.                 three=four;
  71.                 four=five;
  72.                 five=six;
  73.                 six=seven;
  74.                 seven=eight;
  75.                 eight=value;
  76.         }
  77. }

  78. void DISPLAY()
  79. {
  80.         P2=0X00;
  81.         SEGPORT=SEG[one];
  82.         delay2ms();
  83.         P2=0X01;
  84.         SEGPORT=SEG[two];
  85.         delay2ms();
  86.         P2=0X02;
  87.         SEGPORT=SEG[three];
  88.         delay2ms();
  89.         P2=0X03;
  90.         SEGPORT=SEG[four];
  91.         delay2ms();
  92.         P2=0X04;
  93.         SEGPORT=SEG[five];
  94.         delay2ms();
  95.         P2=0X05;
  96.         SEGPORT=SEG[six];
  97.         delay2ms();
  98.         P2=0X06;
  99.         SEGPORT=SEG[seven];
  100.         delay2ms();
  101.         P2=0X07;
  102.         SEGPORT=SEG[eight];
  103.         delay2ms();
  104. }


  105. void delay(void)
  106. {
  107.     unsigned char a,b;
  108.     for(b=249;b>0;b--)
  109.         for(a=17;a>0;a--);
  110. }

  111. void delay2ms(void)  
  112. {
  113.     unsigned char a,b;
  114.     for(b=133;b>0;b--)
  115.         for(a=6;a>0;a--);
  116. }
復制代碼

0.png

仿真文件和與源碼下載:
虛擬HD7279.zip (119.95 KB, 下載次數: 52)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:258520 發表于 2019-12-24 14:52 | 顯示全部樓層
可以運行!!。。。。。。。。。。。。!11
回復

使用道具 舉報

ID:289013 發表于 2021-4-27 23:02 | 顯示全部樓層
好  但是我的沒有成功????
回復

使用道具 舉報

ID:1134495 發表于 2024-11-3 00:40 | 顯示全部樓層
可以!非常感謝大佬!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品色综合 | 日韩精品免费在线观看 | 一区二区三区视频在线观看 | 亚洲综合久久精品 | 久久一区二区精品 | 在线欧美一区 | 日韩精品久久久久 | 欧美精品一区二区三区四区 在线 | 午夜影晥 | 国产中文视频 | 亚洲精品中文字幕中文字幕 | 一级黄色片网址 | 99re在线免费视频 | 欧美日韩亚洲一区 | 中文无吗 | 久久国内 | www.天天操| 日韩一二区在线 | 久久97精品 | 一区二区在线免费观看 | 欧美黑人一区二区三区 | 欧美中文字幕一区二区三区亚洲 | 天天色天天射天天干 | 欧美色专区 | 欧美日韩久久精品 | www.精品国产| 国产精品一区二区欧美黑人喷潮水 | av一级| 一级片网址 | 久久久精品一区二区三区四季av | 日韩精品视频在线 | 久久久久久亚洲精品 | 国产一区二区在线看 | 久久久久久久一区 | 日韩免费av | 精品无码久久久久久国产 | 亚洲精品黑人 | 精品视频一区二区三区在线观看 | 操操日| 色视频欧美 | 天天视频成人 |