找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

OLED_12864萬年歷+DS3231+紅外或按鍵控制

  [復(fù)制鏈接]
ID:108715 發(fā)表于 2017-2-18 09:55 | 顯示全部樓層 |閱讀模式
前兩個月淘寶瞎買買,買個DS3231,查資料知道是個高精度芯片,官方數(shù)據(jù)說年誤差2分鐘。難怪以前1302才用一個月就發(fā)現(xiàn)時間不對,對晶振要求高。
然后就是找資料,套公式一樣的移植,讓我看時序圖啥的自己寫,還不如直接殺了我。
資料找了好久,關(guān)于3231的很少,找了好久終于找了個理想的資料。
然后先是在MAX7219數(shù)碼管上移植用,遙控啥的都挺好,然后沒事干瞎逛逛淘寶,看到OLED挺便宜的,而且小巧,所以入手了一塊。
接著問題又來了。買oled送的資料是靜態(tài)顯示的,不會動態(tài)的,所以再找資料,可是既然找不到,沒辦法,只能花錢淘寶買資料。
整個淘寶既然只有區(qū)區(qū)三四家賣,而且還是DS1302的,界面也簡單,最后隨便買了一家,在各種移植,最后再根據(jù)自己需要修改。

現(xiàn)在開源給大家,給大家參考學(xué)習(xí)用。
另外很不明白,3231和1302價格也差不了多少,3231也早就有了,怎么都沒什么人用,資料很少。
很鄙視在論壇上只傳圖片不傳資料的人,這是論壇,學(xué)習(xí)交流用的,不是裝逼用的。要裝逼去淘寶。

各位裝逼的誤噴,實話實說。
對了,由于3231資料少,手頭只有沒有鬧鐘的資料,上次在本論壇找到的一個有鬧鐘的資料還是有問題的,只有鬧鐘2響,1沒反應(yīng)的,所以鬧鐘就不移植了。想試試的可以論壇找找,1602顯示的。如果找出毛病了記得說下哦,相互學(xué)習(xí)。

05.png 04.png 03.png 02.png 01.png

OLED 原理圖:
OLED 原理圖.jpg
紅外遙控接收頭  接  P3.3

DS3231 SDA 接 P0.0
DS3231 SCL 接 P0.1


OLED12864 SCL 接 P1.3
OLED12864 SCL 接 P1.3

可根據(jù)具體需要自行更改

部分源碼預(yù)覽:
  1. /*****************************************************************************************************
  2. ********************************************頭文件、宏定義********************************************
  3. *****************************************************************************************************/
  4. #include <reg52.h>                //oled_12864_IIC連接+DS3231時鐘模塊+紅外遙控和按鍵+STC90C516RD+
  5. #include <intrins.h>                //年 月 日 時 分 秒 星期 溫度顯示  溫度來源DS3231,64S刷新一次
  6. #define uint unsigned int        //年誤差+- 2min
  7. #define uchar unsigned char
  8. /*****************************************************************************************************
  9. **********************************************按鍵定義************************************************
  10. *****************************************************************************************************/
  11. sbit key1=P0^4;        //設(shè)置
  12. sbit key2=P0^5;        //加
  13. sbit key3=P0^6;        //減
  14. sbit key4=P0^7;        //確定
  15. sbit laba=P3^7;        //喇叭
  16. /*****************************************************************************************************
  17. ********************************************紅外遙控定義**********************************************
  18. *****************************************************************************************************/
  19. #define Imax 14000//此處為晶振為11.0592時的取值,   //時間計算          //紅外接口P3.3
  20. #define Imin 8000 //如用其它頻率的晶振時,
  21. #define Inum1 1450//要改變相應(yīng)的取值。
  22. #define Inum3 3000
  23. #define Inum2 700

  24. uchar f;
  25. uchar IrOK;
  26. unsigned long m,Tc;
  27. uchar Im[4]={0x00,0x00,0x00,0x00};
  28. /*****************************************************************************************************
  29. *******************************************DS3231變量定義*********************************************
  30. *****************************************************************************************************/
  31. sbit DS3231_IIC_SDA=P0^0;
  32. sbit DS3231_IIC_SCL=P0^1;
  33. uchar RTC_Data[8];
  34. uchar RTC_Data1[8];
  35. uchar RTC_Set_ID;
  36. code uchar rtc_address[8]={0x00,0x01,0x02,0x04,0x05,0x03,0x06,0x11};//秒分時日月周年 最低位讀寫位
  37. /*****************************************************************************************************
  38. *******************************************OLED12864定義**********************************************
  39. *****************************************************************************************************/
  40. sbit oled_SCL=P1^3;                                                                  //串行時鐘
  41. sbit oled_SDA=P1^2;                                                                 //串行數(shù)據(jù)
  42. uchar display_buff[16];                                                         //時間顯示數(shù)組
  43. /*****************************************************************************************************
  44. *********************************************變量定義*************************************************
  45. *****************************************************************************************************/
  46. bit T0_Flag;                                                                         //定時器T01ms標志位
  47. bit laba_flag;                                                                         //蜂鳴器標志位
  48. bit Open_Flag;                                                                         //蜂鳴器標志位
  49. bit RTC_Save_Flag;                                                                   //設(shè)置時間標志位
  50. bit shezhi_display_flag;

  51. void delayms(uint x);                                                         //延時函數(shù)
  52. void display1();                                                                 //顯示函數(shù)
  53. void display2();
  54. void OLED_12864_Write_commomand(uint dat);                 //命令
  55. void OLED_12864_Write_data(uint dat);                         //數(shù)據(jù)
  56. void OLED_12864_Init();                                                         //初始化
  57. void OLED_Fill(uchar bmp_dat);                                         //屏幕填充
  58. void OLED_SetPos(uchar x, uchar y);                                 //起始坐標
  59. void OLED_8x16Str(uchar x, uchar y, uchar ch);         //8*16的點陣
  60. void OLED_16x16CN(uchar x, uchar y, uchar N);         //16*16的點陣
  61. void OLED_16x32(uchar x, uchar y, uchar ch);

  62. void Time_Fun();                                                                 //時基、走時函數(shù)
  63. void DS3231_Read_time();                                                 //讀取時間
  64. void DS3231_write_time();                                                 //寫入時間
  65. void KeyDataProcess();                                                         //鍵值處理函數(shù)
  66. void DS3231_Init();                                                                 //時間模塊初始化
  67. /*****************************************************************************************************
  68. ******************************************OLED12864點陣數(shù)組*******************************************
  69. *****************************************************************************************************/
  70. uchar code F16x16[]=
  71. {
  72. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  73. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//"不顯示",0
  74.                                                                                                                                                                        
  75. 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,
  76. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//"一",1
  77.        
  78. 0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x00,
  79. 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x00,//"二",2
  80.        
  81. 0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00,
  82. 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,//"三",3

  83. 0x00,0xFC,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00,
  84. 0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x7F,0x00,0x00,//"四",4

  85. 0x00,0x02,0x42,0x42,0x42,0xC2,0x7E,0x42,0x42,0x42,0x42,0xC2,0x02,0x02,0x00,0x00,
  86. 0x40,0x40,0x40,0x40,0x78,0x47,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x00,//"五",5

  87. 0x20,0x20,0x20,0x20,0x20,0x20,0x21,0x22,0x2C,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
  88. 0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x01,0x02,0x04,0x18,0x60,0x00,0x00,//"六",6

  89. ……………由于篇幅有限…余下源碼請下載附件……
復(fù)制代碼
0.png
全部資料下載:
OLED_12864萬年歷IIC(大字體 溫度 遙控).rar (5.61 MB, 下載次數(shù): 1072)

評分

參與人數(shù) 6黑幣 +126 收起 理由
51單片機1234 + 5 很給力!
arther + 6
send + 5 共享資料的黑幣獎勵!
luxianjun + 5 很給力!
zhaok2013 + 5 很給力!
admin + 100 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:478328 發(fā)表于 2022-4-1 14:12 | 顯示全部樓層
電路原理圖,PCB圖都壓縮在里面了?梢灾苯幽玫侥骋粋寶上去做印制板。HEX文件也壓縮在里面了。做好電路板可以直接刷程序。PCB和程序都驗證過了。能直接用。
樓主師傅,我想拜您為師!您愿意收下我這個徒弟嗎?謝謝您。請多賜教!謝謝。

OLED+51+DS3231.7z

2.22 MB, 下載次數(shù): 56, 下載積分: 黑幣 -5

程序.rar

68.23 KB, 下載次數(shù): 59, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:108715 發(fā)表于 2017-2-18 09:58 | 顯示全部樓層
先搶個座,圖片拍的時候正好是秒沒顯示時候,實際秒的“:”是隨3231的秒數(shù)閃爍的。1秒顯示1秒不顯示,不會1秒亮滅一次,會的高手說一下怎么弄,學(xué)習(xí)學(xué)習(xí)。
回復(fù)

使用道具 舉報

ID:116826 發(fā)表于 2017-2-18 19:30 | 顯示全部樓層
高手,mark學(xué)習(xí)一下。
回復(fù)

使用道具 舉報

ID:59279 發(fā)表于 2017-2-19 20:33 | 顯示全部樓層
顯示不錯,清晰,學(xué)習(xí)學(xué)習(xí)。
回復(fù)

使用道具 舉報

ID:162689 發(fā)表于 2017-2-23 22:51 | 顯示全部樓層
好東西,學(xué)習(xí),51黑有你更精彩!!!
回復(fù)

使用道具 舉報

ID:165046 發(fā)表于 2017-2-24 09:49 | 顯示全部樓層
也正準備學(xué)習(xí)OLED,學(xué)習(xí)學(xué)習(xí)!
回復(fù)

使用道具 舉報

ID:164850 發(fā)表于 2017-3-9 21:26 | 顯示全部樓層
OLED_12864萬年歷+DS3231+紅外或按鍵控制,我編譯不成功,能不能把帶hex工程上傳上來。謝謝了!非常喜歡你的日歷
回復(fù)

使用道具 舉報

ID:108715 發(fā)表于 2017-3-13 17:58 | 顯示全部樓層
luxianjun 發(fā)表于 2017-3-9 21:26
OLED_12864萬年歷+DS3231+紅外或按鍵控制,我編譯不成功,能不能把帶hex工程上傳上來。謝謝了!非常喜歡你 ...


編譯不成功是因為你的keil軟件沒破解,小程序可以編譯,這個大的就不行了,你破解下就行了,我給你的附件里是注冊機和使用方法,hex文件也在這個壓縮文件里了。如果還是不成功,你注冊機和軟件都鼠標右鍵管理員身份運行在注冊

keil uv4.zip

23.49 KB, 下載次數(shù): 56, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報

ID:164850 發(fā)表于 2017-3-14 07:11 | 顯示全部樓層
萬分感謝,非常非常喜歡你的時鐘。
回復(fù)

使用道具 舉報

ID:164850 發(fā)表于 2017-3-17 19:57 | 顯示全部樓層
啦啦啦1234 發(fā)表于 2017-3-13 17:58
編譯不成功是因為你的keil軟件沒破解,小程序可以編譯,這個大的就不行了,你破解下就行了,我給你的附 ...

非常感謝樓主的幫助,我以經(jīng)做好了,就是改不了紅外碼,就是不會編程,你能不能把編譯的整個工程上傳上來,萬分感謝,還有就是stc89c516rd+p0口要加上拉,能不能另外改一份用stc15f2k60s2的.
IMG_20170317_192931.jpg
IMG_20170317_193001.jpg
IMG_20170317_193026.jpg
IMG_20170317_193102.jpg
IMG_20170317_193127.jpg
IMG_20170317_193157.jpg
回復(fù)

使用道具 舉報

ID:108715 發(fā)表于 2017-3-17 22:39 | 顯示全部樓層
luxianjun 發(fā)表于 2017-3-17 19:57
非常感謝樓主的幫助,我以經(jīng)做好了,就是改不了紅外碼,就是不會編程,你能不能把編譯的整個工程上傳上來 ...

程序和說明的話太多了,我都分類了,你直接下載附件吧

看你的3231模塊外觀,我淘寶看了下管腳標注,應(yīng)該是+  sda  scl  空  -

給你修改了下程序,更適合你的最小系統(tǒng)板,說的你不曉得明不明白,看不懂在問我。

另外玩單片機的,keil一定要破解了。附件有完整的keil程序和破解軟件,都管理員身份運行安裝。

文件20多M,試了兩個瀏覽器都傳不上,我發(fā)網(wǎng)盤了,你點鏈接下載吧。

回復(fù)luxianjun
回復(fù)

使用道具 舉報

ID:164850 發(fā)表于 2017-3-18 20:32 | 顯示全部樓層
啦啦啦1234 發(fā)表于 2017-3-17 22:39
程序和說明的話太多了,我都分類了,你直接下載附件吧

看你的3231模塊外觀,我淘寶看了下管腳標注,應(yīng) ...

網(wǎng)盤鏈接呢,等著下載呢
回復(fù)

使用道具 舉報

ID:89286 發(fā)表于 2017-3-19 06:59 | 顯示全部樓層
thanks for sharing
回復(fù)

使用道具 舉報

ID:170098 發(fā)表于 2017-3-19 10:42 | 顯示全部樓層
想讓跟多的人去了解
回復(fù)

使用道具 舉報

ID:149167 發(fā)表于 2017-3-19 14:49 | 顯示全部樓層
好東西,學(xué)習(xí)
回復(fù)

使用道具 舉報

ID:169459 發(fā)表于 2017-3-21 10:32 | 顯示全部樓層
這個好,下載來改個12864串口屏的時鐘去,謝謝分享。下載幣總不夠用啊
回復(fù)

使用道具 舉報

ID:62289 發(fā)表于 2017-3-21 19:40 | 顯示全部樓層
高手,mark學(xué)習(xí)一下。
回復(fù)

使用道具 舉報

ID:179705 發(fā)表于 2017-3-25 23:32 | 顯示全部樓層
頂你!
回復(fù)

使用道具 舉報

ID:164850 發(fā)表于 2017-4-7 21:14 | 顯示全部樓層
樓主能不能幫忙改個用15f2k60s2的11.0592,紅外用不了,用90c516rd+的那個秒數(shù)太卡不自然,麻煩幫忙改改。15f2k60s2秒數(shù)自然 . 。
IMG_20170407_204716.jpg
IMG_20170407_205004.jpg
IMG_20170407_205100.jpg
IMG_20170407_205133.jpg
回復(fù)

使用道具 舉報

ID:110780 發(fā)表于 2017-4-12 17:45 | 顯示全部樓層
好東西,感謝分享。。。。。。。。。。。。
回復(fù)

使用道具 舉報

ID:189476 發(fā)表于 2017-4-14 11:29 | 顯示全部樓層
謝謝分享
回復(fù)

使用道具 舉報

ID:171746 發(fā)表于 2017-4-16 18:00 | 顯示全部樓層
請問:紅外接口能改嗎? 系統(tǒng)版P3.3被占了,能改到P3.2嗎?其他的正常。謝謝
回復(fù)

使用道具 舉報

ID:171746 發(fā)表于 2017-4-16 18:16 | 顯示全部樓層
請問:紅外接口怎么改?謝謝
回復(fù)

使用道具 舉報

ID:158835 發(fā)表于 2017-5-5 15:05 | 顯示全部樓層
救命恩人,樓主威武
回復(fù)

使用道具 舉報

ID:200657 發(fā)表于 2017-5-15 11:21 | 顯示全部樓層
樓主 這個適合剛學(xué)不到1年的人嗎??
回復(fù)

使用道具 舉報

ID:113193 發(fā)表于 2017-5-17 15:05 | 顯示全部樓層
網(wǎng)盤在哪里?想下載找不到地方
回復(fù)

使用道具 舉報

ID:35873 發(fā)表于 2017-5-28 00:19 | 顯示全部樓層
這個不錯  支持樓主開源精神
回復(fù)

使用道具 舉報

ID:127220 發(fā)表于 2017-5-28 12:14 | 顯示全部樓層
多謝!小弟學(xué)習(xí)了。
回復(fù)

使用道具 舉報

ID:227832 發(fā)表于 2017-8-16 01:22 | 顯示全部樓層

好東西,學(xué)習(xí)了。
回復(fù)

使用道具 舉報

ID:91165 發(fā)表于 2017-8-16 08:41 | 顯示全部樓層
有機會買個OLED試試
回復(fù)

使用道具 舉報

ID:227842 發(fā)表于 2017-8-16 09:34 | 顯示全部樓層
學(xué)習(xí)學(xué)習(xí) 謝謝樓主
回復(fù)

使用道具 舉報

ID:231488 發(fā)表于 2017-10-3 07:54 | 顯示全部樓層
膜拜樓主
回復(fù)

使用道具 舉報

ID:68515 發(fā)表于 2017-11-14 10:52 | 顯示全部樓層
太好了,
回復(fù)

使用道具 舉報

ID:227321 發(fā)表于 2017-11-14 12:01 | 顯示全部樓層
I need it. Thanks for help.
回復(fù)

使用道具 舉報

ID:242544 發(fā)表于 2017-11-17 15:34 | 顯示全部樓層
這個很有用啊,我也在搞這個萬年歷,找的資料了,謝謝
回復(fù)

使用道具 舉報

ID:242544 發(fā)表于 2017-11-17 16:54 | 顯示全部樓層
謝謝樓主,非常有用
回復(fù)

使用道具 舉報

ID:255508 發(fā)表于 2017-11-30 08:47 | 顯示全部樓層
感覺很牛的樣子 學(xué)習(xí) 學(xué)習(xí)!!
回復(fù)

使用道具 舉報

ID:257351 發(fā)表于 2017-12-4 19:29 | 顯示全部樓層
feichanghao ,好好好
回復(fù)

使用道具 舉報

ID:258770 發(fā)表于 2017-12-16 12:08 | 顯示全部樓層
厲害厲害,程序借鑒下
回復(fù)

使用道具 舉報

ID:64532 發(fā)表于 2017-12-17 22:05 | 顯示全部樓層
也正準備學(xué)習(xí)OLED,學(xué)習(xí)學(xué)習(xí)!
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表