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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)+74hc165+Bee proteus仿真程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:78322 發(fā)表于 2017-12-30 10:03 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
Protues+74hc165+Bee

單片機(jī)源程序如下:
  1. #include "../inc/main.h"
  2. //==============================================================================
  3. // 參數(shù)定義
  4. //==============================================================================
  5. bool    F_Timer01ms;
  6. bool    F_Timer02ms;
  7. bool    F_Timer10ms;
  8. bool    F_Time1_TimeOut;
  9. uint8   P_TimerCount;
  10. uint8   P_KeyValue;


  11. Struct_BeeData  BeeData;
  12. Struct_SongData SongData;

  13. uint16  P_TimerCountForBee;
  14. //==============================================================================
  15. // Function Name:  void Setup_Timer(void)
  16. // Function     :  setup timer0
  17. // return value :  void
  18. //==============================================================================
  19. void Setup_Timer(void)
  20. {
  21.     //TMOD  = 0xF0;               //
  22.     //TH0   = (65536-TIME0)/256;
  23.     //TL0   = (65536-TIME0)%256;
  24.     //ET0   = 1;                  //
  25.     //EA    = 1;                  //
  26.     //TR0   = 1;                  //
  27.     TMOD  = 0x01 | 0x10;
  28.     //==========================================================================
  29.     // 定時器0用于播放一個音符的聲音
  30.     //==========================================================================
  31.     ET0   = 1;
  32.     //==========================================================================
  33.     // 定時器1用于計時一個音符的時間,然后切換下一個音符
  34.     //==========================================================================
  35.     ET1   = 1;
  36.     TR1   = 0;
  37.     //==========================================================================
  38.     // 定時器2用于1ms的計時
  39.     //==========================================================================
  40.     T2MOD = 0;
  41.     T2CON = 0;
  42.     TH2   = (65536-TIME2)/256;
  43.     TL2   = (65536-TIME2)%256;
  44.     ET2   = 1;
  45.     TR2   = 1;
  46.     //==========================================================================
  47.     // 開總中斷
  48.     //==========================================================================
  49.     EA    = 1;
  50. }
  51. //==============================================================================
  52. // Function Name:  void main(void)
  53. // Function     :  main function
  54. // return value :  void
  55. //==============================================================================
  56. void main(void)
  57. {
  58.      HC165_CLK    = 0;
  59.      HC165_INT    = 0;
  60.      F_Timer01ms  = 0;
  61.      F_Timer10ms  = 0;
  62.      P_TimerCount = 0;
  63.      SongData.sFreq = 0;
  64.      Setup_Timer();
  65.      TF_Bee_Init_BeeData();
  66.      while(1)
  67.      {
  68.          TF_Key_GetKeyValue();
  69.          TF_Song_Proccess();
  70.      }
  71. }
  72. //==============================================================================
  73. // Function Name:  void TF_Timer0(void)
  74. // Function     :  timer0 interrupt
  75. // return value :  void
  76. //==============================================================================
  77. void TF_Timer0(void) interrupt 1
  78. {
  79.     TR0 = 0;
  80.     TH0 = SongData.sTH;
  81.     TL0 = SongData.sTL;
  82.     BEE_OUTPUT = ~BEE_OUTPUT;
  83.     TR0 = 1;
  84. }
  85. //==============================================================================
  86. // Function Name:  void TF_Timer1(void)
  87. // Function     :  Timer1 interrupt
  88. // return value :  void
  89. //==============================================================================
  90. void TF_Timer1(void) interrupt 3
  91. {
  92.     TH1   = (65536-TIME1)/256;
  93.     TL1   = (65536-TIME1)%256;
  94.     //==========================================================================
  95.     // 定時時間到了就進(jìn)行下一個音符并且準(zhǔn)備下一個節(jié)拍
  96.     //==========================================================================
  97.     if(++SongData.sCount >= 3*SongData.sTime)
  98.     {
  99.         TR0 = 0;
  100.         TR1 = 0;
  101.         SongData.sCount = 0;
  102.         SongData.sFlag  = true;
  103.         SongData.sIndex++;
  104.     }
  105. }
  106. //==============================================================================
  107. // Function Name:  void TF_Timer2(void)
  108. // Function     :  Timer2 interrupt
  109. // return value :  void
  110. //==============================================================================
  111. void TF_Timer2(void) interrupt 5
  112. {
  113.     TH2   = (65536-TIME2)/256;
  114.     TL2   = (65536-TIME2)%256;

  115.     F_Timer01ms = 1;
  116.     P_TimerCount++;
  117. ……………………

  118. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
Protues+74hc165+Bee.zip (108.18 KB, 下載次數(shù): 51)


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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91视频18| 琪琪午夜伦伦电影福利片 | 亚洲一区二区三区视频免费观看 | 91色网站| 婷婷免费视频 | 在线中文字幕国产 | 在线91 | 中文字幕日韩在线 | 一区二区三区在线 | 久操伊人| 国产精品成人av | 黑人一级黄色大片 | 午夜三级在线观看 | 国产精品美女 | 一区二区av| 日一区二区三区 | av一级久久| 精品国产一区二区久久 | 色婷婷av久久久久久久 | 羞视频在线观看 | 亚洲精品视频网站在线观看 | 国产激情在线 | 精品国产欧美 | wwwww在线观看 | 超碰免费在线 | 欧美国产日韩在线观看 | 午夜视频一区二区 | 91精品国产91久久久久久 | 国产精品久久久久久久久久久久 | 操人网| 91视视频在线观看入口直接观看 | 天天射天天干 | 成人中文字幕av | 亚洲精品久久久一区二区三区 | 国产精品久久久久久久久久 | 欧美成人在线影院 | 国产高清视频在线播放 | 国产精品毛片av一区 | 成人性生交大片免费看r链接 | 日韩精品一区二区三区视频播放 | 国产精品永久免费视频 |