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

標題: 12864.h頭文件下載 可直接調用的51單片機液晶驅動程序 [打印本頁]

作者: blackdeer    時間: 2017-7-3 18:24
標題: 12864.h頭文件下載 可直接調用的51單片機液晶驅動程序
我這個12864.h 頭文件的調用方法(51單片機)是不是很簡單:
  1. #include<stc12c5a60s2.h>
  2. #include<12864.h>

  3. void main()
  4. {
  5. LCDInit();
  6. Str_6x12(1,0,"蘇冰航");
  7. Str_6x12(2,0,"2015212211035");        
  8.         
  9. while(1){}

  10. }
復制代碼



12864.h液晶驅動的頭文件內容預覽(附件里面可下載完整代碼):
  1. #include <STC12C5A60S2.H>
  2. #include <string.H>
  3. #include <intrins.h>

  4. #define uint  unsigned int
  5. #define uchar unsigned char
  6. /**************************************************************
  7. 12864基本指令宏定義
  8. **************************************************************/
  9. #define     SCREEN_CLEAR            0XF4        //整屏清屏命令
  10. #define     BACK_ONOFF              0XB5        //背光開關命令
  11. #define     CONTRAST_GRADIENT       0XE6        //對比度調整命令
  12. #define     TEMPERATURE_SET         0XEE        //設置溫度補償開關和系數命令
  13. #define     SOFT_RESET              0XEF        //復位命令
  14. #define     SINGLE_DOT              0XF2        //任意點: 顯示命令
  15. #define     DRAWLINE                0XC5        //任意點: 畫線
  16. #define     SCREEN_ONOFF            0XFE        //屏幕開命令
  17. #define     STR_ASCII_8X8_LOC       0XDF        //任意點: 顯示8X8ASCII字符串命令
  18. #define     STR_6X12                0XB9        //固定處: 顯示12X12中文和6X12ASCII混合字符串命令
  19. #define     WHOLE_MOVE_RIGHT        0XF8        //整屏右移命令


  20. //********************
  21. //UART口初始化 串口中斷初始化
  22. //********************
  23. void Uart_Init(void)
  24. {
  25.         TMOD = 0x20;                                //timer 1 working mode 1
  26.         TL1  = 0xfa;                                //   fa=9600 for 1.0592mhz Fosc,and ...
  27.         TH1  = 0xfa;                                //...fd=19200 for 11.0592mhz Fosc
  28.         SCON = 0x50;//d8                         //uart mode 3,ren==1   1100 1000
  29.         PCON = 0x80;                                //smod=1
  30.         TR1  = 1;                                //start timer1
  31. }
  32. //********************
  33. //延時函數100us
  34. //********************
  35. void Delay_100us(uint j)          //對于11.0592MHz時鐘延時100us
  36. {
  37.         uchar i;
  38.         while(j--)
  39.         {
  40.                 for(i=0;i<12;i++)
  41.                 {}
  42.         }
  43. }
  44. //*********************
  45. //串口方式寫數據
  46. //*********************
  47. void put_char(uchar ch)
  48. {        
  49.         SBUF = ch;  
  50.         while( TI == 0 );                        //查詢法
  51.           TI = 0;
  52. }
  53. /*************************************************************
  54. 函數名稱:Screen_Clear
  55. 函數功能:整屏清屏
  56. 調用函數:NO
  57. 被調函數:NO
  58. 輸入參數:NO
  59. 輸出參數:NO
  60. 函數返回:NO
  61. 其他說明:NO     
  62. *************************************************************/
  63. void Screen_Clear(void)
  64. {                                                
  65.         put_char(SCREEN_CLEAR);                                                                   //0xE3 行位置0-7 列位置0-25 ASC2字符代碼 9*16 0-9數字
  66.         Delay_100us(600);        //延時
  67. }
  68. /*************************************************************
  69. 函數名稱:Back_Onoff
  70. 函數功能:背光開關命令
  71. 調用函數:NO
  72. 被調函數:NO
  73. 輸入參數:Back-背光開關(0/1)
  74. 輸出參數:NO
  75. 函數返回:NO
  76. 其他說明:NO
  77. *************************************************************/
  78. void Back_Onoff(unsigned char Back)
  79. {
  80.     put_char(BACK_ONOFF);
  81.     put_char(Back);
  82.         Delay_100us(600);        //延時
  83. }
  84. /*************************************************************
  85. 函數名稱:Contrast_Gradient
  86. 函數功能:顯示對比度設置
  87. 調用函數:NO
  88. 被調函數:NO
  89. 輸入參數:Contrast-對比度級數(0-63)
  90. 輸出參數:NO
  91. 函數返回:NO
  92. 其他說明:NO
  93. *************************************************************/
  94. void Contrast_Gradient(unsigned char Contrast)
  95. {
  96.     put_char(CONTRAST_GRADIENT);
  97.     put_char(Contrast);
  98.         Delay_100us(600);        //延時
  99. }
  100. /*************************************************************
  101. 函數名稱:Temperature_Set
  102. 函數功能:溫度補償開關和系數
  103. 調用函數:NO
  104. 被調函數:NO
  105. 輸入參數:Temperature-溫度補償系數,0-關閉,1-5為系數
  106. 輸出參數:NO
  107. 函數返回:NO
  108. 其他說明:NO
  109. *************************************************************/
  110. void Temperature_Set(unsigned char Temperature)
  111. {
  112.     put_char(TEMPERATURE_SET);
  113.     put_char(Temperature);
  114.         Delay_100us(600);        //延時
  115. }
  116. /*************************************************************
  117. 函數名稱:Soft_Reset
  118. 函數功能:復位
  119. 調用函數:NO
  120. 被調函數:NO
  121. 輸入參數:NO
  122. 輸出參數:NO
  123. 函數返回:NO
  124. 其他說明:NO
  125. *************************************************************/
  126. void Soft_Reset(void)
  127. {
  128.     put_char(SOFT_RESET);
  129.         Delay_100us(600);        //延時
  130. }
  131. /*************************************************************
  132. 函數名稱:Whole_Move_Right
  133. 函數功能:整屏右移
  134. 調用函數:NO
  135. 被調函數:NO
  136. 輸入參數:NO
  137. 輸出參數:NO
  138. 函數返回:NO
  139. 其他說明:NO     
  140. *************************************************************/
  141. void Whole_Move_Right(void)
  142. {
  143.         put_char(WHOLE_MOVE_RIGHT);                                                                   //0xE3 行位置0-7 列位置0-25 ASC2字符代碼 9*16 0-9數字
  144.         Delay_100us(100);        //延時
  145. }
  146. /*************************************************************
  147. 函數名稱:Single_Dot
  148. 函數功能:在指定位置顯示一個點
  149. 調用函數:NO
  150. 被調函數:NO
  151. 輸入參數:Y-行數(0-63),X-列數(0-127)
  152. 輸出參數:NO
  153. 函數返回:NO
  154. 其他說明:在MCU端口初始化時調用     
  155. *************************************************************/
  156. void Single_Dot(unsigned char Y, unsigned char X)
  157. {
  158.     put_char(SINGLE_DOT);
  159.     put_char(Y);
  160.     put_char(X);
  161.         Delay_100us(100);        //延時
  162. }
  163. /*************************************************************
  164. 函數名稱:Drawline
  165. 函數功能:任意點畫線
  166. 調用函數:NO
  167. 被調函數:NO
  168. 輸入參數:CursorY-起始點行坐標(0-63),CursorX-起始點坐標(0-127)
  169.           LH-0畫垂直線,1畫水平線,Line-畫清零/實線/虛線(0/1/2)
  170.           S-顯示內容
  171. 輸出參數:NO
  172. 函數返回:NO
  173. 其他說明:NO
  174. *************************************************************/
  175. void Drawline(unsigned char CursorY, unsigned char CursorX,
  176.                           unsigned char LH, unsigned char Line, unsigned char LineLen)
  177. {
  178.     put_char(DRAWLINE);
  179.     put_char(CursorY);
  180.     put_char(CursorX);
  181.     put_char(LH);
  182.     put_char(Line);
  183.     put_char(LineLen);                 // 顯示字符
  184.         Delay_100us(600);        //延時
  185. }
  186. /*************************************************************
  187. 函數名稱:Screen_Onoff
  188. 函數功能:屏幕全亮命令0/1
  189. 調用函數:NO
  190. 被調函數:NO
  191. 輸入參數:Switch-開關(0/1)
  192. 輸出參數:NO
  193. 函數返回:NO
  194. 其他說明:NO
  195. *************************************************************/
  196. void Screen_Onoff(unsigned char Switch)
  197. {
  198.     put_char(SCREEN_ONOFF);
  199.     put_char(Switch);
  200.     put_char(02);
  201.         Delay_100us(600);        //延時
  202. }
  203. /*************************************************************
  204. 函數名稱:Str_Ascii_8x8_Loc
  205. 函數功能:任意點顯示一個8X8的ASCII字符串
  206. 調用函數:NO
  207. 被調函數:NO
  208. 輸入參數:CursorY-左上角行坐標(0-56),CursorX-左上角坐標(0-120)
  209.           S-顯示內容
  210. 輸出參數:NO
  211. 函數返回:NO
  212. 其他說明:NO
  213. *************************************************************/
  214. void Str_Ascii_8x8_Loc(unsigned char CursorY, unsigned char CursorX, unsigned char *s)
  215. {
  216.     put_char(STR_ASCII_8X8_LOC);
  217.     put_char(CursorY);
  218.     put_char(CursorX);
  219.     while (*s)                          
  220.     {
  221.         put_char(*s);                 // 顯示字符
  222.         s++;
  223.     }
  224.     put_char(0X00);                   //結束符
  225.         Delay_100us(600);        //延時
  226. }
  227. /*************************************************************
  228. 函數名稱:Str_6x12
  229. 函數功能:在指定位置顯示12X12中文和6X12ASCII字符串
  230. 調用函數:NO
  231. 被調函數:NO
  232. 輸入參數:Y-行數(0-3),X-列數(0-15), *S-顯示內容
  233. 輸出參數:NO
  234. 函數返回:NO
  235. 其他說明:NO
  236. *************************************************************/
  237. void Str_6x12(unsigned char Y, unsigned char X, unsigned char *s)
  238. {
  239.     put_char(STR_6X12);
  240.     put_char(Y);
  241.     put_char(X);
  242.     while (*s)                          
  243.     {
  244.         put_char(*s);                 // 顯示字符
  245.         s++;
  246.     }
  247.     put_char(0X00);                   //結束符
  248.         Delay_100us(600);        //延時
  249. }R
  250. /***********************************************************
  251. 函數名稱:LCDInit
  252. 函數功能:12864初始化
  253. 輸入參數:無
  254. ***********************************************************/
  255. void LCDInit(void)
  256. {
  257.         uchar i;
  258.         Soft_Reset();                                        //復位
  259.         Screen_Clear();                 //函數功能:整屏清屏
  260.         Uart_Init();                        //串口初始化
  261.         Back_Onoff(1);                                        //打開背光

  262.         …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


全部資料下載地址:
12864.rar (33.71 KB, 下載次數: 182)





作者: OPENend    時間: 2017-7-15 13:05
謝樓主分享
作者: Dug    時間: 2018-4-23 20:38
謝謝樓主分享,最近正在做這方面的,很需要~~~
作者: tgb7895    時間: 2018-6-3 13:37
我來看看哈
作者: suker620    時間: 2018-7-23 14:58
好東西,可是小白下載不到啊。 5555
作者: chaoself    時間: 2018-7-25 16:55
你這個是帶字庫的吧。
作者: aa98982879726    時間: 2018-7-25 23:16
謝樓主分享
作者: guangshi_wq    時間: 2018-7-28 01:12
終于搞好了,好深的坑啊.錯誤的地方太多.浪費太多的時間,有圖有真象.

IMG_0193.JPG (2.01 MB, 下載次數: 41)

IMG_0193.JPG

OLED12864.zip

74.58 KB, 下載次數: 32, 下載積分: 黑幣 -5


作者: muchizhao    時間: 2019-4-27 12:35
樓主這個硬件怎么連接呢
作者: szzxl10    時間: 2019-7-8 16:38
謝樓主分享
作者: azi197417    時間: 2019-7-11 23:32
四根線連接,和一般的連接方式不同




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 91在线视频免费观看 | 亚洲视频在线观看 | 天天干天天色 | 蜜臀av日日欢夜夜爽一区 | 欧美精品福利 | 性国产丰满麻豆videosex | 在线看亚洲 | 免费黄色的视频 | 性色av香蕉一区二区 | 久久精品国产亚洲一区二区三区 | 精品一区二区在线观看 | 欧美大片一区 | 亚洲精品一区二三区不卡 | 精品久久1| 羞羞色视频 | 亚洲天堂av在线 | 羞羞色在线观看 | 二区高清 | 午夜视频在线 | 国产亚洲精品美女久久久久久久久久 | 久久欧美精品 | 九九久久久 | 天天操,夜夜爽 | 99久久免费精品国产免费高清 | 精品国产一区二区国模嫣然 | a在线观看免费 | 一区二区三区四区五区在线视频 | 国产精品永久免费 | 国产区高清 | 成人av网站在线观看 | 在线国产视频 | 久久男人天堂 | 日韩免费 | 99久久精品免费看国产四区 | 四季久久免费一区二区三区四区 | 天天爱天天操 | 色一情一乱一伦一区二区三区 | 亚洲国产aⅴ成人精品无吗 综合国产在线 | 亚洲视频三区 | 黄色免费网 | 91久久久久久久久 |