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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3200|回復: 0
打印 上一主題 下一主題
收起左側

stc15w4k58s4單片機看門狗復位測試程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:571752 發表于 2019-6-25 15:42 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
stc15w4k58s4看門狗復位測試程序

單片機源程序如下:
  1. /*************        本程序功能說明        **************

  2. 用STC的MCU的IO方式控制74HC595驅動8位數碼管。

  3. 用戶可以修改宏來選擇時鐘頻率.

  4. 顯示效果為: 顯示秒計數, 5秒后不喂狗, 等復位.

  5. ******************************************/

  6. #define MAIN_Fosc                22118400L        //定義主時鐘

  7. #include        "STC15Fxxxx.H"

  8. #define DIS_DOT                0x20
  9. #define DIS_BLACK        0x10
  10. #define DIS_                0x11

  11. /****************************** 用戶定義宏 ***********************************/

  12. #define                Timer0_Reload        (65536UL -(MAIN_Fosc / 1000))                //Timer 0 中斷頻率, 1000次/秒

  13. /*****************************************************************************/






  14. /*************        本地常量聲明        **************/
  15. u8 code t_display[]={                                                //標準字庫
  16. //         0    1    2    3    4    5    6    7    8    9    A    B    C    D    E    F
  17.         0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,
  18. //black         -     H    J         K          L           N        o   P         U     t    G    Q    r   M    y
  19.         0x00,0x40,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e,
  20.         0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x46};        //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1

  21. u8 code T_COM[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};                //位碼



  22. /*************        IO口定義        **************/
  23. sbit        P_HC595_SER   = P4^0;        //pin 14        SER                data input
  24. sbit        P_HC595_RCLK  = P5^4;        //pin 12        RCLk        store (latch) clock
  25. sbit        P_HC595_SRCLK = P4^3;        //pin 11        SRCLK        Shift data clock

  26. /*************        本地變量聲明        **************/

  27. u8         LED8[8];                //顯示緩沖
  28. u8        display_index;        //顯示位索引

  29. u16        ms_cnt;
  30. u8        tes_cnt;        //測試用的計數變量

  31. void        delay_ms(u8 ms);
  32. void         DisplayScan(void);




  33. /********************** 主函數 ************************/
  34. void main(void)
  35. {
  36.         u8        i;
  37.        
  38.         P0M1 = 0;        P0M0 = 0;        //設置為準雙向口
  39.         P1M1 = 0;        P1M0 = 0;        //設置為準雙向口
  40.         P2M1 = 0;        P2M0 = 0;        //設置為準雙向口
  41.         P3M1 = 0;        P3M0 = 0;        //設置為準雙向口
  42.         P4M1 = 0;        P4M0 = 0;        //設置為準雙向口
  43.         P5M1 = 0;        P5M0 = 0;        //設置為準雙向口
  44.         P6M1 = 0;        P6M0 = 0;        //設置為準雙向口
  45.         P7M1 = 0;        P7M0 = 0;        //設置為準雙向口

  46.         display_index = 0;
  47.         for(i=0; i<8; i++)        LED8[i] = DIS_BLACK;        //全部消隱
  48.        
  49.         tes_cnt = 0;
  50.         ms_cnt = 0;
  51.         LED8[7] = ms_cnt;

  52.         while(1)
  53.         {
  54.                 delay_ms(1);        //延時1ms
  55.                 DisplayScan();
  56.                 if(tes_cnt <= 5)        //5秒后不喂狗, 將復位,
  57.                         WDT_CONTR = (D_EN_WDT + D_CLR_WDT + D_WDT_SCALE_16);        // 喂狗

  58.                 if(++ms_cnt >= 1000)
  59.                 {
  60.                         ms_cnt = 0;
  61.                         tes_cnt++;
  62.                         LED8[7] = tes_cnt;
  63.                 }

  64.         }
  65. }

  66. /**********************************************/

  67. //========================================================================
  68. // 函數: void  delay_ms(unsigned char ms)
  69. // 描述: 延時函數。
  70. // 參數: ms,要延時的ms數, 這里只支持1~255ms. 自動適應主時鐘.
  71. // 返回: none.
  72. // 版本: VER1.0
  73. // 日期: 2013-4-1
  74. // 備注:
  75. //========================================================================
  76. void  delay_ms(u8 ms)
  77. {
  78.      u16 i;
  79.          do{
  80.               i = MAIN_Fosc / 13000;
  81.                   while(--i)        ;   //14T per loop
  82.      }while(--ms);
  83. }



  84. /**************** 向HC595發送一個字節函數 ******************/
  85. void Send_595(u8 dat)
  86. {               
  87.         u8        i;
  88.         for(i=0; i<8; i++)
  89.         {
  90.                 dat <<= 1;
  91.                 P_HC595_SER   = CY;
  92.                 P_HC595_SRCLK = 1;
  93.                 P_HC595_SRCLK = 0;
  94.         }
  95. }

  96. /********************** 顯示掃描函數 ************************/
  97. void DisplayScan(void)
  98. {       
  99.         Send_595(~T_COM[display_index]);                                //輸出位碼
  100.         Send_595(t_display[LED8[display_index]]);        //輸出段碼

  101.         P_HC595_RCLK = 1;
  102.         P_HC595_RCLK = 0;                                                        //鎖存輸出數據
  103.         if(++display_index >= 8)        display_index = 0;        //8位結束回0
  104. }
復制代碼

所有資料51hei提供下載:
07-看門狗復位測試程序.zip (29.11 KB, 下載次數: 18)


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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产高清视频在线观看播放 | 91视频电影 | 久久不卡| 国产一区二区免费 | 久久精品色欧美aⅴ一区二区 | 亚洲成人一区二区 | 一区二区三区视频在线免费观看 | 一区二区三区欧美 | 天堂在线www | 久久久久久久国产 | 玖玖玖av| 精品一区二区久久久久久久网站 | 中文字幕亚洲国产 | 精品综合久久久 | 91国内精精品久久久久久婷婷 | 久久精品小短片 | 人人干人人干人人 | caoporn国产精品免费公开 | 精品视频一区二区三区在线观看 | 久久久久久免费观看 | 精品一区二区三区四区 | 在线观看亚洲 | 日韩av在线一区二区 | 国产精品中文 | 欧美成人自拍 | 中文字幕亚洲一区 | 一区二区片| 中文字幕av在线播放 | 久久久久久国模大尺度人体 | 欧美精品一区二区免费 | 精品久久久久香蕉网 | 一区二区三区在线播放视频 | 一本久久a久久精品亚洲 | 精品国产伦一区二区三区观看方式 | 毛片网站在线观看视频 | 欧美精品久久久久 | 国产在线麻豆精品入口 | av毛片 | 亚洲天堂成人在线视频 | 欧美二区在线 | 一区影院 |