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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4504|回復: 1
收起左側

PIC單片機電子鐘程序+仿真電路

[復制鏈接]
ID:471066 發表于 2019-1-21 23:36 | 顯示全部樓層 |閱讀模式
ppppp.jpg

  1. #include<pic.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. #define CS RA5
  5. uchar secs = 0;
  6. uchar minutes = 0;
  7. uchar hours = 0;
  8. unsigned char disbuf[8] = {1,2,3,4,5,6,7,8};
  9. void delay_ms(uint n)
  10. {
  11.         uchar i;
  12.         while(n--)
  13.         {
  14.                 for(i=0;i<100;i++);
  15.         }
  16. }
  17. void Port_Initial(void)
  18. {
  19.         TRISC = 0xD7;
  20.         PORTC = 0x00;
  21.         TRISA = 0x00;
  22.         PORTA = 0x00;
  23. }
  24. void Time0_Initial(void)
  25. {
  26.         T0CS = 0;
  27.         PSA = 1;
  28.         T0IF = 0;
  29.         T0IE = 1;
  30.         GIE = 1;
  31.         TMR0 = 0x00;
  32. }
  33. volatile unsigned int cnt = 0;
  34. void interrupt ISR(void)
  35. {
  36.         TMR0 = 0x13;
  37.         T0IF = 0;
  38.         CLRWDT();
  39.         cnt ++;
  40.         if(cnt==500)
  41.         {
  42.                 cnt = 0;
  43.                 secs ++;
  44.         }
  45.         if(secs==60)
  46.         {
  47.                 secs = 0;
  48.                 minutes ++;
  49.         }
  50.         if(minutes==60)
  51.         {
  52.                 minutes = 0;
  53.                 hours ++;
  54.         }
  55.         if(hours==24)
  56.         {
  57.                 hours = 0;
  58.         }
  59. }
  60. void SPI_Initial(void)
  61. {
  62.         PIR1 = 0;
  63.         SSPCON = 0x30;
  64.         SSPSTAT = 0x00;
  65. }
  66. void Display(uchar *str)
  67. {
  68.         uchar i;
  69.         for(i=0;i<8;i++)
  70.         {
  71.                 MAX7221_WRITE(i+1,str[i]);
  72.         }
  73. }
  74. void HEXTOBCD(void)
  75. {
  76.         disbuf[0] = hours/10;
  77.         disbuf[1] = hours%10;
  78.         disbuf[2] = 10;
  79.         disbuf[3] = minutes/10;
  80.         disbuf[4] = minutes%10;
  81.         disbuf[5] = 10;
  82.         disbuf[6] = secs/10;
  83.         disbuf[7] = secs%10;
  84. }
  85. void main()
  86. {
  87.         SPI_Initial();
  88.         delay_ms(10);
  89.         Port_Initial();
  90.         delay_ms(10);
  91.         Time0_Initial();
  92.         delay_ms(10);
  93.         MAX7221_Initial();
  94.         delay_ms(10);
  95.         while(1)
  96.         {
  97.                 HEXTOBCD();
  98.                 delay_ms(10);
  99.                 Display(disbuf);
  100.                 delay_ms(10);
  101.         }
  102. }
復制代碼

0.png

全部資料51hei下載地址:
PIC電子鐘.rar (16.99 KB, 下載次數: 31)
        

評分

參與人數 6黑幣 +154 收起 理由
正規007 + 10 很給力!
shuisheng + 35 絕世好帖!
areyouok + 12
刀刀見紅 + 12
jinsheng7533967 + 35 贊一個!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:454000 發表于 2019-2-13 17:11 | 顯示全部樓層
值得學習了!謝謝1
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表