找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1365|回复: 1
打印 上一主题 下一主题
收起左侧

蓝桥杯各个模块源码下载-强烈推荐

[复制链接]
跳转到指定楼层
楼主
参加蓝桥杯的小伙伴可以学习一下。


全部资料51hei下载地址:
课后练习及课上例程.rar (282.49 KB, 下载次数: 10)

单片机源程序如下:
  1. /*
  2.           例程:数码管课后习题例程
  3.                 作者:电子设计工坊
  4. */

  5. #include "reg51.h"
  6. #include "intrins.h"
  7. typedef unsigned char BYTE;
  8. typedef unsigned int WORD;
  9. unsigned char distance_table[3];
  10. //-----------------------------------------------

  11. /* define constants */
  12. #define FOSC 11059200L

  13. #define T1MS (65536-FOSC/12/1000)   //1ms timer calculation method in 12T mode

  14. /* define SFR */
  15. sbit TEST_LED = P1^0;               //work LED, flash once per second

  16. /* define variables */
  17. WORD count;                         //1000 times counter
  18. WORD sonic_count;
  19. bit sonic_flag;
  20. //-----------------------------------------------
  21. unsigned char code T_display[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
  22. unsigned char code T_COM[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

  23. /* Timer0 interrupt routine */
  24. void tm0_isr() interrupt 1 using 1
  25. {
  26.                 static char i;
  27.     TL0 = T1MS;                     //reload timer0 low byte
  28.     TH0 = T1MS >> 8;                //reload timer0 high byte
  29.           if (sonic_count-- ==0)
  30.                 {
  31.                         sonic_count=200;
  32.                         sonic_flag=1;
  33.                 }
  34.     if (count-- == 0)               //1ms * 1000 -> 1s
  35.     {
  36.                                         count = 1;               //reset counter
  37.                        P2=0xe0;P0=~distance_table[i];P2=0;
  38.                                         P2=0xc0;P0=T_COM[i];P2=0;
  39.                                         i++;
  40.                                         if(i==3) i=0;
  41.     }
  42. }

  43. //-----------------------------------------------
  44. sbit TX = P1^0;
  45. sbit RX = P1^1;
  46. #define somenop {_nop_();_nop_();_nop_();_nop_();_nop_();}
  47. void send_wave(void)
  48. {
  49.         unsigned char i = 8;  //??8???
  50.        
  51.         do
  52.         {
  53.                 TX = 1;
  54.                 somenop;somenop;somenop;somenop;somenop;
  55.                 TX = 0;
  56.                 somenop;somenop;somenop;somenop;somenop;
  57.         }
  58.         while(i--);
  59. }


  60. void Delay2ms()                //@11.0592MHz
  61. {
  62.         unsigned char i, j;

  63.         _nop_();
  64.         i = 4;
  65.         j = 146;
  66.         do
  67.         {
  68.                 while (--j);
  69.         } while (--i);
  70. }

  71. /* main program */
  72. void main()
  73. {
  74.                 unsigned int t,distance;
  75.                
  76.     TMOD = 0x01;                    //set timer0 as mode1 (16-bit)
  77.     TL0 = T1MS;                     //initial timer0 low byte
  78.     TH0 = T1MS >> 8;                //initial timer0 high byte
  79.     TR0 = 1;                        //timer0 start running
  80.     ET0 = 1;                        //enable timer0 interrupt
  81.     EA = 1;                         //open global interrupt switch
  82.     count = 0;                      //initial counter

  83.         while(1)
  84.         {
  85.                 if(sonic_flag)
  86.                 {
  87.                         sonic_flag=0;
  88.                         send_wave();  
  89.                         TR1 = 1;  
  90.                         while((RX == 1) && (TF1 == 0));
  91.                         TR1 = 0;

  92.                         if(TF1 == 1)
  93.                         {
  94.                                 TF1 = 0;
  95.                                 distance = 999;  
  96.                         }
  97.                         else
  98.                         {
  99.                                 t = TH1;
  100.                                 t <<= 8;
  101. ……………………

  102. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:140592 发表于 2018-4-6 14:45 | 只看该作者
盖楼,来个人审核下啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表