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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3415|回復(fù): 0
收起左側(cè)

mini1608電子時(shí)鐘分享

[復(fù)制鏈接]
ID:122843 發(fā)表于 2017-7-1 20:19 | 顯示全部樓層 |閱讀模式
最近玩了一下杜楊的1608點(diǎn)陣電子鐘  分享一下
mini1608_SCH.jpg 0.png
單片機(jī)源程序如下:
  1. /*********************************************************************************************
  2. 程序名:    DoClock_mini1608_V1 時(shí)鐘程序
  3. 編寫(xiě)人:    杜洋 
  4. 編寫(xiě)時(shí)間:  2009年5月18日
  5. 硬件支持:  STC11F60(XE) 外部12MHZ晶振
  6. 接口說(shuō)明:  詳見(jiàn)《DoClock_mini1608電路原理圖》  
  7. 修改日志:  
  8.   NO.1-20090518_20.13 已經(jīng)可以實(shí)現(xiàn)靜態(tài)顯示,可控制50級(jí)灰度(20090518_1備)
  9.         NO.2-20090518_21.39 基本決定了流動(dòng)速度和亮度的平衡,改為空點(diǎn)也掃描。(20090518_2備)
  10.         NO.3-20080519_14.30 使用匯編語(yǔ)言精確延時(shí)解決了DS18B20溫度顯示的問(wèn)題。(20090519_3備)
  11.         NO.4-20090519_17.48 完成高亮度變速流動(dòng)顯示,并加入開(kāi)機(jī)LOGO(20090519_4備)
  12.         N0.5-20090520_01.18 顯示速度、亮度與方式確定,下一步開(kāi)始設(shè)計(jì)縱向漢字顯示。(20090520_5備)
  13.         NO.6-20090520_04.07 完成了漢字的縱向顯示,效果良好。加入開(kāi)機(jī)顯示“杜洋工作室”(20090520_6備)
  14.         NO.7-20090523_20.33 制作了新的硬件,開(kāi)始使用新硬件調(diào)試。(20090523_7備)
  15.         NO.8-20090528_16.34 下面開(kāi)始寫(xiě)公歷20年日期計(jì)算和按鍵調(diào)時(shí)部分的程序。(20090528_8備)
  16.         NO.9-20090529_01.51 完成了V1正式版的功能(調(diào)整時(shí)間、亮度、速度),正在實(shí)測(cè)。(20090529_9備)
  17.         NO.10-20090529_03.27 時(shí)間設(shè)置時(shí)關(guān)定時(shí)器,同時(shí)改正了一個(gè)走時(shí)問(wèn)題的重大錯(cuò)誤。
  18.         NO.11-20090529_05.59 設(shè)計(jì)了反向LED的三個(gè)檢測(cè)環(huán)境光模式(強(qiáng)光、正常和夜間)(20090529_10備)
  19.         NO.12-20090529_16.52 改進(jìn)了反向LED亮度檢測(cè)的穩(wěn)定性,但在臨界值依然有快速跳變。(20090529_11備)
  20.         NO.13-20090529_18.55 將反向LED亮度改為正常和睡眠2個(gè)等級(jí),修改后更穩(wěn)定。(20090529_12備)
  21.         NO.14-20090601_03.14 星期值沒(méi)有限定,導(dǎo)致出錯(cuò)。已經(jīng)改正并調(diào)整了菜單順序。(20090601_13備)
  22.         NO.15-20090624_01.45 減少了定時(shí)器中斷中的指令,以減小時(shí)間誤差(走時(shí)慢)。(20090624_14備)
  23.         NO.16-20090626_01.45 還原到“13備”因減少指令數(shù)沒(méi)有效果,計(jì)劃設(shè)計(jì)補(bǔ)償校準(zhǔn)功能。(20090626_15備)
  24. /*********************************************************************************************
  25. 說(shuō)明:《DoClock mini1608 V1版本源程序包說(shuō)明》

  26. [必讀說(shuō)明]
  27.   * 請(qǐng)參考本站相應(yīng)的電路原理圖制作
  28.   * 將STC11Fxx.H文件復(fù)制到C:\Keil\C51\INC中(如已安裝頭文件可省略)。
  29.   * 使用STC-ISP軟件下載時(shí),需選擇“RST作為P4.7使用”項(xiàng)
  30.   * 使用STC-ISP軟件下載時(shí),需選擇“使用外部晶體或時(shí)鐘”項(xiàng)
  31.   * 使用STC-ISP軟件下載時(shí),需選擇右下方選項(xiàng)“復(fù)位電壓3.7V”項(xiàng)
  32.   
  33. [硬件特點(diǎn)]
  34. - 16×8點(diǎn)陣屏顯示
  35. - 3按鍵操作
  36. - DS18B20數(shù)字溫度傳感器
  37. - 使用單片機(jī)產(chǎn)生時(shí)鐘,無(wú)需RTC芯片
  38. - 鬧鐘、整點(diǎn)報(bào)時(shí)用蜂鳴器
  39. - 使用STC系統(tǒng)高級(jí)單片機(jī)
  40. - 大容量EEPROM,儲(chǔ)存用戶設(shè)置和環(huán)境狀態(tài)的各種信息
  41. - 5V外電源或USB接口供電,備用電池用來(lái)保持走時(shí)。
  42. - 無(wú)PCB板、無(wú)更多外圍元器件,極簡(jiǎn)單制作過(guò)程。

  43. [V1版本功能]
  44. - LED點(diǎn)陣屏橫向日期、時(shí)間與英文顯示。
  45. - LED點(diǎn)陣屏縱向漢字顯示。
  46. - LED點(diǎn)陣屏自動(dòng)變速流動(dòng)顯示。
  47. - 全中文3按鍵菜單操作(設(shè)置、加1、減1)。
  48. - 20級(jí)流動(dòng)速度設(shè)置。
  49. - 9級(jí)LED顯示亮度設(shè)置。
  50. - 自動(dòng)檢測(cè)環(huán)境亮度并變化LED屏亮度(正常亮度和睡眠亮度;不需要外擴(kuò)任何光敏電路)
  51. - 自動(dòng)檢光開(kāi)關(guān)設(shè)置。
  52. - 1~60攝氏度溫度顯示。
  53. - 單片機(jī)程序?qū)崿F(xiàn)20年內(nèi)的時(shí)間、日期計(jì)算并顯示。(2009~2029)
  54. /*********************************************************************************************/

  55. #include <STC11Fxx.H> //STC頭文件

  56. /**********************************************************************************************/
  57. //“程序開(kāi)發(fā)調(diào)試設(shè)置項(xiàng)”
  58. #define DY_LOGOSPEED        10 //設(shè)置開(kāi)機(jī)LOGO部分的流動(dòng)速度
  59. #define DY_DELAY                12 //設(shè)置每一個(gè)點(diǎn)顯示的時(shí)間長(zhǎng)度(1~20)
  60. //#define DY_B_SPEED                7 //設(shè)置流動(dòng)速度(與DY_DELAY配合實(shí)現(xiàn))
  61. #define DY_DIS_RAM                80 //設(shè)置時(shí)間顯示緩沖區(qū)大小
  62. /**********************************************************************************************/
  63. sbit        DY_LED1_H1        =P4 ^ 7; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  64. sbit        DY_LED1_H2        =P1 ^ 3; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  65. sbit        DY_LED1_H3        =P0 ^ 7; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  66. sbit        DY_LED1_H4        =P1 ^ 5; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  67. sbit        DY_LED1_H5        =P0 ^ 0; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  68. sbit        DY_LED1_H6        =P0 ^ 6; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  69. sbit        DY_LED1_H7        =P0 ^ 1; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  70. sbit        DY_LED1_H8        =P0 ^ 4; //設(shè)置LED點(diǎn)陣屏連接的I/O口

  71. sbit        DY_LED1_L1        =P1 ^ 4; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  72. sbit        DY_LED1_L2        =P0 ^ 2; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  73. sbit        DY_LED1_L3        =P0 ^ 3; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  74. sbit        DY_LED1_L4        =P1 ^ 7; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  75. sbit        DY_LED1_L5        =P0 ^ 5; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  76. sbit        DY_LED1_L6        =P1 ^ 6; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  77. sbit        DY_LED1_L7        =P1 ^ 2; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  78. sbit        DY_LED1_L8        =P1 ^ 1; //設(shè)置LED點(diǎn)陣屏連接的I/O口

  79. sbit        DY_LED2_H1        =P3 ^ 7; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  80. sbit        DY_LED2_H2        =P3 ^ 2; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  81. sbit        DY_LED2_H3        =P2 ^ 3; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  82. sbit        DY_LED2_H4        =P3 ^ 4; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  83. sbit        DY_LED2_H5        =P4 ^ 6; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  84. sbit        DY_LED2_H6        =P2 ^ 4; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  85. sbit        DY_LED2_H7        =P4 ^ 5; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  86. sbit        DY_LED2_H8        =P2 ^ 6; //設(shè)置LED點(diǎn)陣屏連接的I/O口

  87. sbit        DY_LED2_L1        =P3 ^ 3; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  88. sbit        DY_LED2_L2        =P4 ^ 4; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  89. sbit        DY_LED2_L3        =P2 ^ 7; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  90. sbit        DY_LED2_L4        =P3 ^ 6; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  91. sbit        DY_LED2_L5        =P2 ^ 5; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  92. sbit        DY_LED2_L6        =P3 ^ 5; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  93. sbit        DY_LED2_L7        =P3 ^ 1; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  94. sbit        DY_LED2_L8        =P3 ^ 0; //設(shè)置LED點(diǎn)陣屏連接的I/O口
  95. sbit        LED_LOOK_A        =P0 ^ 1;
  96. sbit        LED_LOOK_B        =P0 ^ 0;

  97. sbit        DY_BEEP                =P2 ^ 2; //揚(yáng)聲器
  98. sbit        DY_KEY1                =P0 ^ 2; //按鍵1(M鍵)(連接在P1.3和P0.2,讀P0.2為低時(shí)表示有按鍵動(dòng)作)
  99. sbit        DY_KEY2                =P3 ^ 0; //按鍵2(+鍵)(連接在P4.6和P3.0,讀P3.0為低時(shí)表示有按鍵動(dòng)作)
  100. sbit        DY_KEY3                =P3 ^ 6; //按鍵3(-鍵)(連接在P2.4和P3.6,讀P3.6為低時(shí)表示有按鍵動(dòng)作)
  101. //sbit        DY_18B20        =P2 ^ 1; //溫度傳感器(已經(jīng)在匯編語(yǔ)言中定義)
  102. //sbit        DY_POWER        =P2 ^ 0; //電源監(jiān)測(cè)

  103. #define DY_P0M1SET                0x00 //設(shè)置I/O口工作方式//00000000
  104. #define DY_P0M0SET                0xd3 //設(shè)置I/O口工作方式//11010011(PxM0為1時(shí)設(shè)置為強(qiáng)推)
  105. #define DY_P1M1SET                0x00 //設(shè)置I/O口工作方式//00000000(左到右,高到低位)
  106. #define DY_P1M0SET                0x28 //設(shè)置I/O口工作方式//00101000
  107. #define DY_P2M1SET                0x00 //設(shè)置I/O口工作方式//00000000
  108. #define DY_P2M0SET                0x5C //設(shè)置I/O口工作方式//01011100
  109. #define DY_P3M1SET                0x00 //設(shè)置I/O口工作方式//00000000
  110. #define DY_P3M0SET                0x94 //設(shè)置I/O口工作方式//10010100
  111. #define DY_P4M1SET                0x00 //設(shè)置I/O口工作方式//00000000
  112. #define DY_P4M0SET                0xe0 //設(shè)置I/O口工作方式//11100000

  113. data unsigned char Ledplay [DY_DIS_RAM];//定義顯示緩沖寄存器
  114. data unsigned char TIME_DD,TIME_MO,TIME_YY,TIME_WW,TIME_HH,TIME_MM,TIME_SS,ty;//設(shè)置日、月、年、周、時(shí)、分、秒和溫度存放區(qū)
  115. data bit DAY_BIT = 0;//天數(shù)增加標(biāo)志位(用于日期進(jìn)位的啟動(dòng))
  116. data unsigned char DIS_BIT = 0; //多種信息的切換顯示
  117. data unsigned char cou  = 0;     // 軟計(jì)數(shù)器,對(duì)10ms時(shí)基信號(hào)累加到1s
  118. data unsigned char bn;//掃描映射全局變量
  119. idata unsigned char DY_PWM;//顯示亮度
  120. idata unsigned char DY_PWM2;//顯示暫存
  121. idata bit PWM_BIT;//自動(dòng)調(diào)光開(kāi)關(guān)標(biāo)志
  122. idata unsigned char DY_B_SPEED;//流動(dòng)速度
  123. idata unsigned char MENU;//菜單切換標(biāo)志位
  124. idata unsigned char KEY_BIT = 0;//按鍵值
  125. idata unsigned char pp=1;//最終顯示程序調(diào)用的普通變量
  126. idata unsigned char LEDLOOK_a=1;//用來(lái)保存目前的環(huán)境光狀態(tài)

  127. unsigned char DSS (void); //匯編語(yǔ)言讀18B20溫度程序聲明
  128. ……………………

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

所有資料51hei提供下載:
mini1608源程序.rar (772.22 KB, 下載次數(shù): 25)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品欧美一区二区三区久久久小说 | 国产精品视频一二三区 | www.婷婷亚洲基地 | 亚洲日本中文 | 日韩精品一区二区三区中文字幕 | 羞羞的视频在线观看 | 中文字幕 欧美 日韩 | 一区二区三区亚洲精品国 | 一区二区免费在线视频 | 国产精品美女久久久久久不卡 | 国产精品99999 | 日韩有码一区二区三区 | 四虎国产 | 亚洲福利 | 欧美男人的天堂 | 国产精品第2页 | 国产韩国精品一区二区三区 | 人人九九精| 国产精品永久久久久久久www | 免费成人午夜 | 欧美一区二区在线观看 | 91中文| 久久久婷 | 视频在线观看亚洲 | 久热精品视频 | 天堂久久网| 久久lu| 在线免费观看黄色 | 亚洲一区二区电影在线观看 | 欧美精品一区二区三区在线 | 狠狠综合久久av一区二区小说 | 成人黄色av网站 | 天天射天天干 | 亚洲精品在线看 | 男女一区二区三区 | 狠狠插狠狠操 | 亚洲一区二区三区视频 | 亚洲人成人一区二区在线观看 | 亚洲视频中文字幕 | 少妇黄色 | 久草视 |