19089|50

105

帖子

6

TA的资源

一粒金砂(高级)

楼主
 

我的5110画图库--Nokia 5110液晶屏实现画点、画线、画矩形、画圆和画图 [复制链接]

 
  最近花了好多时间终于完成了5110液晶屏的画图函数库,完善了画图的基本函数,有画点,画直线,画折线,画矩形,画圆和贴图的基本功能。函数库提供了使用缓冲区和不使用缓冲区的函数,可以根据需要灵活使用。单片机使用的是stm32,但是我的做了宏定义,非常容易移植到其他单片机上,具体情况在代码注释中应该介绍的蛮详细的(注释花了我不少时间整理哦)。   在画图的算法上,我画直线采用了Bresenham算法,画圆是用的中点画圆法,不过我稍微改了一些,没有使用浮点数,还有在一些乘法计算时采用移位代替,这两点都使画图速度大大加快了。
  闲话少说,先上图吧!

再看看我的头文件都提供的哪些函数吧(个人觉得还是蛮多的):
  LCD5110.h
  1. #ifndef _LCD5110_H_
  2. #define _LCD5110_H_

  3. /*--------修改本文件 <5110端口和引脚宏定义> 可以改变单片机引脚连线-------------*/
  4. /*----------如果要移植到其他单片机上只需再修改本文件的<5110引脚动-------------*/
  5. /*------------作宏定义>和LCD5110.c文件中LcdPortInit函数对单片机--------------*/
  6. /*--------------引脚的初始化,5110的VCC为3V时或显示不清时可以---------------*/
  7. /*-------------------修改LCD5110.c中LcdInit函数的配置----------------------*/

  8. #include "stm32f0xx.h"
  9. #include "stm32f0xx_gpio.h"
  10. #include "Delay.h"
  11. #include "Font6_8.h"
  12. #include "Icon10_8.h"
  13. #include "Font8_16.h"
  14. #include "Font16_16.h"
  15. #include "Bitmap.h"


  16. /*------保留下面这句表示使用buf,注释掉表示不使用buf-----*/
  17. #define USE_BUF
  18. /*------保留上面这句表示使用buf,注释掉表示不使用buf-----*/

  19. #define u8                 unsigned char
  20. #define u16         unsigned short

  21. typedef struct
  22. {
  23.         u8 x;
  24.         u8 y;
  25. }point;

  26. /*------5110屏幕尺寸和功能宏定义------*/
  27. #define DATA        1                                                                                                                                //数据
  28. #define CMD 0                                                                                                                                        //命令
  29. #define LCD_X        84                                                                                                                        //液晶屏横坐标宽度
  30. #define LCD_ROW LCD_X                                                                                                        //液晶屏列宽度
  31. #define LCD_Y        48                                                                                                                        //液晶屏纵坐标高度
  32. #define LCD_COLUMN LCD_Y / 8                                                                        //液晶屏行高度
  33. #define LCD_AREA LCD_X * LCD_Y                                                                //液晶屏面积
  34. #define LCD_AREA_BYTE LCD_COLUMN * LCD_ROW                //液晶屏字节容量

  35. /*------位宏定义--------*/
  36. #define BIT0         0x00000001
  37. #define BIT1         0x00000002
  38. #define BIT2         0x00000004
  39. #define BIT3         0x00000008
  40. #define BIT4         0x00000010
  41. #define BIT5         0x00000020
  42. #define BIT6         0x00000040
  43. #define BIT7         0x00000080
  44. #define BIT8         0x00000100
  45. #define BIT9         0x00000200
  46. #define BIT10 0x00000400
  47. #define BIT11 0x00000800
  48. #define BIT12 0x00001000
  49. #define BIT13 0x00002000
  50. #define BIT14 0x00004000
  51. #define BIT15 0x00008000

  52. /*------5110端口和引脚宏定义--------*/

  53. #define LCD5110_PORT         GPIOB                                        //5110所在端口
  54. #define LCD_SCLK_BIT         BIT3                                        //SCLK端口位
  55. #define LCD_SDIN_BIT         BIT4                                        //SDIN端口位
  56. #define LCD_DC_BIT                  BIT5                                        //DC端口位
  57. #define LCD_SCE_BIT                BIT6                                        //SCE端口位
  58. #define LCD_REST_BIT         BIT7                                        //REST端口位


  59. /*------5110引脚动作宏定义-----------*/
  60. #define LCD_SCLK_H        LCD5110_PORT->BSRR = LCD_SCLK_BIT                //SCLK置1       
  61. #define LCD_SCLK_L  LCD5110_PORT->BRR  = LCD_SCLK_BIT                //SCLK置0

  62. #define LCD_SDIN_H        LCD5110_PORT->BSRR = LCD_SDIN_BIT
  63. #define LCD_SDIN_L  LCD5110_PORT->BRR  = LCD_SDIN_BIT

  64. #define LCD_DC_H                LCD5110_PORT->BSRR = LCD_DC_BIT
  65. #define LCD_DC_L          LCD5110_PORT->BRR  = LCD_DC_BIT

  66. #define LCD_SCE_H                LCD5110_PORT->BSRR = LCD_SCE_BIT
  67. #define LCD_SCE_L          LCD5110_PORT->BRR  = LCD_SCE_BIT

  68. #define LCD_REST_H        LCD5110_PORT->BSRR = LCD_REST_BIT
  69. #define LCD_REST_L  LCD5110_PORT->BRR  = LCD_REST_BIT

  70. #define RCC_LCD5110_PORT         RCC_AHBENR_GPIOAEN << (((uint32_t)LCD5110_PORT-(uint32_t)GPIOA) >> 10)                        //5110 RCC使能

  71. /*--------------------------------------------------------------------------------------------------------------*/
  72. /*-------函数分不使用buf和使用buf,不使用buf最快,但是行不是任意坐标,是在5110本身的行的基础上定义的;----------*/
  73. /*-------画的图案的高度必须是8的倍数,而且图案不能相或来进行叠加。使用buf的话不论是写字还是画图都没有-----------*/
  74. /*-------坐标限制,图案宽度和高度也没有限制,而且可以进行图案和字符的叠加。使用buf的函数分两类,一类------------*/
  75. /*-------是只对buf操作,大部分以tobuf,ofbuf,buf结尾比如PutChartoBuf、PutCircletoBuf、ClearBuf,这一类-----------*/
  76. /*-------函数操作完后需要调用Refresh、RefreshAll这两个函数将buf的变化刷新到5110上,较灵活,可以通过减-----------*/
  77. /*-------少刷新次数来加快画图速度。另一种是对buf操作后自动将结果刷新到5110上,大部分以buf开头,如BufPutChar-----*/
  78. /*-------、BufPutHanzi等,还有画点画线画圆函数PutLine、PutRect等。----------------------------------------------*/

  79. /////////////////////////////////////////////////////////////////////////////////////////////////////
  80. /////*                                以下为不使用缓冲区写字画图的相关函数                                *//////
  81. //*--------------------------------------------------------*//
  82. /////////////////////////////////////////////////////////////////////////////////////////////////////


  83. //*******                                以下是基本操作和初始化函数                                *****//

  84. /*----------初始化5110-----------*/
  85. void InitLcd(void);
  86. /*-------清空整个5110屏幕--------*/
  87. void LcdClearAll(void);
  88. /*---设置5110行和列坐标----*/
  89. void SetXY(u8 row,u8 column);

  90. //******                                以下是高度为8的各种操作函数                                *******//
  91. //**                        包括6*8字符和字符串,6*8符号,10*8图标                          **//
  92. //--every row contains 14 characters,there are 6 rows (font = 6 * 8)--//
  93.                 //-----------------           row                  ---------------------//
  94.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 0
  95.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 1
  96.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 2
  97.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 3
  98.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 4
  99.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                column = 5
  100. //-------------------------------------------------------//

  101. /*---直接写一个ASCII字符(6*8)到5110(不需要坐标,紧跟上个字符或图标)---*/
  102. void WriteChar(u8 value);
  103. /*---直接写一个ASCII字符(6*8)到5110---*/
  104. void PutChar(u8 value,u8 column,u8 row);
  105. /*---直接写一个字符串(6*8)到5110(不需要坐标,紧跟上个字符或图标)---*/
  106. void WriteStr(char * str);
  107. /*--直接写一个字符串(6*8)到5110--*/
  108. void PutStr(char * str,u8 column,u8 row);
  109. /*---画sign(6*8)(不需要坐标,紧跟上个字符或图标)---*/
  110. void WriteSign(char * sign);
  111. /*----画sign(6*8)----*/
  112. void PutSign(char * sign,u8 column,u8 row);
  113. /*---画Icon(10*8)(不需要坐标,紧跟上个字符或图标)---*/
  114. void WriteIcon(char * icon);
  115. /*--画Icon(10*8),row(0~74)--*/
  116. void PutIcon(char * icon,u8 column,u8 row);

  117. //********                                以下是高度为16的各种操作函数                                *******//
  118. //**                                包括8*16字符和字符串,16*16汉字                           **//
  119. //--every row contains 10 characters,there are 3 rows (font = 8 * 16)--//
  120. //-----------       row       ------------//
  121.                 //0 1 2 3 ... 81 82 83//        column = 0
  122.                 //0 1 2 3 ... 81 82 83//
  123.                 //0 1 2 3 ... 81 82 83//        column = 1
  124.                 //0 1 2 3 ... 81 82 83//
  125.                 //0 1 2 3 ... 81 82 83//        column = 2
  126.                 //0 1 2 3 ... 81 82 83//
  127. //-----------------------------------------//

  128. /*-----直接写一个ASCII字符(8*16)到5110------*/
  129. void PutWideChar(u8 value,u8 column,u8 row);
  130. /*--直接写一个字符串(6*8)到5110,自动换行,row(0~76)--*/
  131. void PutWideStr(char * str,u8 column,u8 row);

  132. //--every row contains 5 characters,there are 3 rows (font = 16 * 16)--//
  133. //----------      row       --------------//
  134.                 //0 1 2 3 ... 81 82 83//        column = 0
  135.                 //0 1 2 3 ... 81 82 83//
  136.                 //0 1 2 3 ... 81 82 83//        column = 1
  137.                 //0 1 2 3 ... 81 82 83//
  138.                 //0 1 2 3 ... 81 82 83//        column = 2
  139.                 //0 1 2 3 ... 81 82 83//
  140. //----------------------------------------//

  141. /*-----直接写一个汉字(16*16)到5110------*/
  142. void PutHanzi(char Hanzi[],u8 column,u8 row);
  143. /*--写一串汉字(16*16),自动换行,row(0~58)--*/
  144. void PutHanziStr(char Hanzi[],u8 column,u8 row,u8 num);

  145. //********                                以下是画图的各种操作函数                                *********//
  146. //**                                  包括84*48,高度为8的倍数的图片                       **//
  147. //---------------           x                  ----------------------//
  148.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 0
  149.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 1
  150.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 2
  151.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 3
  152.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 4
  153.                 //0 1 2 3 4 5 6 7 8 9 10 11 12 13//                y = 5
  154. //-----------------------------------------------//

  155. /*---画picture(84*48),全屏---*/
  156. void DrawPicture(char bitmap[]);
  157. /*---画picture(高度必须是8的倍数)---*/
  158. void DrawBmp(char bitmap[],u8 x,u8 y,u8 width,u8 height);

  159. #ifdef USE_BUF        /*USE_BUF*/

  160. /////////////////////////////////////////////////////////////////////////////////////////////////////
  161. /////*                                以下为使用缓冲区写字画图的相关函数                                *//////
  162. //*-------------以下坐标统一为两种----------------*//
  163. /////////////////////////////////////////////////////////////////////////////////////////////////////
  164. //----------------------           x                  ------------------------//
  165.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 0
  166.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 1
  167.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 2
  168.                 //                                                        .
  169.                 //                                                        .
  170.                 //                                                        .
  171.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 45
  172.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 46
  173.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                y = 47
  174. //--------------------------------------------------------//
  175. //-------------------          row                  ------------------------//
  176.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 0
  177.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 1
  178.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 2
  179.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 3
  180.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 4
  181.                 //0 1 2 3 4 5 ...78 79 80 81 82 83//                column = 5
  182. //------------------------------------------------------//

  183. ///////*------------------------------------------*////////
  184. //*********                                以下为刷新,清除等基本操作函数                        *********//
  185. ///////*------------------------------------------*////////

  186. /*-----设置缓冲区指针坐标-------*/
  187. void SetBufPtr(u8 x,u8 y);
  188. /*----将整个缓冲区刷新到5110上-----*/
  189. void RefreshAll(void);
  190. /*-------将缓冲区指定区域刷新到5110对应区域-------*/
  191. void Refresh(u8 x,u8 y,u8 width,u8 height);
  192. /*------清空整个缓冲区-------*/
  193. void ClearAllBuf(void);
  194. /*------清空整个缓冲区并刷新5110------*/
  195. void BufClearAll(void);
  196. /*-------清空缓冲区指定区域-------*/
  197. void ClearBuf(u8 x,u8 y,u8 width,u8 height);
  198. /*-------清空缓冲区指定区域并刷新------*/
  199. void BufClear(u8 x,u8 y,u8 width,u8 height);

  200. ///////*------------------------------------------*////////
  201. //*********                                以下为写字符,汉字函数                                *********//
  202. ///////*------------------------------------------*////////


  203. //******        以下字符高度均为8              ******//

  204. /*-------写一个ASCII字符(6*8)到缓冲区(不需要坐标,紧跟上个字符)--------*/
  205. void WriteChartoBuf(u8 value);
  206. /*--------通过缓冲区写一个ASCII字符(6*8)到5110(不需要坐标,紧跟上个字符)--------*/
  207. void BufWriteChar(u8 value);
  208. /*----写一个ASCII字符(6*8)到缓冲区-----*/
  209. void PutChartoBuf(u8 value,u8 x,u8 y);
  210. /*----通过缓冲区写一个ASCII字符(6*8)到5110-----*/
  211. void BufPutChar(u8 value,u8 x,u8 y);
  212. /*------写一个字符串(高度8)到缓冲区(不需要坐标,紧跟上个字符)-----*/
  213. u8 WriteStrtoBuf(char * str);
  214. /*----通过缓冲区写一个字符串(高度8)到5110(不需要坐标,紧跟上个字符)----*/
  215. u8 BufWriteStr(char * str);
  216. /*-----写一个字符串(高度8)到缓冲区------*/
  217. u8 PutStrtoBuf(char * str,u8 x,u8 y);
  218. /*------通过缓冲区写一个字符串(高度8)到5110------*/
  219. u8 BufPutStr(char * str,u8 x,u8 y);

  220. //*******        以下字符汉字高度均为16          ********//

  221. /*------写一个ASCII字符(8*16)到缓冲区------*/
  222. void PutWideChartoBuf(u8 value,u8 x,u8 y);
  223. /*----通过缓冲区写一个ASCII字符(8*16)到5110------*/
  224. void BufPutWideChar(u8 value,u8 x,u8 y);
  225. /*-----写一个字符串(高度16)到缓冲区------*/
  226. u8 PutWideStrtoBuf(char * str,u8 x,u8 y);
  227. /*------通过缓冲区写字符串(高度16)到5110------*/
  228. u8 BufPutWideStr(char *str,u8 x,u8 y);
  229. /*-----写一个汉字(16*16)到缓冲区------*/
  230. void PutHanzitoBuf(char Hanzi[],u8 x,u8 y);
  231. /*-----通过缓冲区写一个汉字(16*16)到5110-------*/
  232. void BufPutHanzi(char Hanzi[],u8 x,u8 y);
  233. /*-------写一串汉字(高度16)到缓冲区(num为汉字个数)-------*/
  234. u8 PutHanziStrtoBuf(char Hanzi[],u8 x,u8 y,u8 num);
  235. /*-----通过缓冲区写一串汉字(高度16)到5110(num为汉字个数)------*/
  236. u8 BufPutHanziStr(char Hanzi[],u8 x,u8 y,u8 num);

  237. //*********    以下为画点,线,折线,矩形,圆,bmp图片函数      *********//

  238. /*------画一个点到缓冲区-------*/
  239. void PutPointtoBuf(u8 x,u8 y);
  240. /*------通过缓冲区画一个点到5110------*/
  241. void PutPoint(u8 x,u8 y);
  242. /*------画一条线到缓冲区--------*/               
  243. void PutLinetoBuf(u8 x1,u8 y1,u8 x2,u8 y2);
  244. /*-----通过缓冲区画一条线到5110-------*/       
  245. void PutLine(u8 x1,u8 y1,u8 x2,u8 y2);
  246. /*--画折线到缓冲区(p为折线各个节点,line_num为折线的线段数目)--*/
  247. void PutPolylinetoBuf(point *p,u8 line_num);
  248. /*--通过缓冲区画折线到5110(p为折线各个节点,line_num为折线的线段数目)--*/
  249. void PutPolyline(point *p,u8 line_num);
  250. /*---------画矩形到缓冲区--------*/
  251. void PutRecttoBuf(u8 x,u8 y,u8 width,u8 height);
  252. /*--------通过缓冲区画矩形到5110--------*/
  253. void PutRect(u8 x,u8 y,u8 width,u8 height);
  254. /*--------画圆到缓冲区--------*/
  255. void PutCircletoBuf(u8 center_x,u8 center_y,u8 r);
  256. /*--------通过缓冲区画圆到5110--------*/
  257. void PutCircle(u8 center_x,u8 center_y,u8 r);
  258. /*----画一个图片到缓冲区-----*/
  259. void DrawBmptoBuf(char bitmap[],u8 x,u8 y,u8 width,u8 height);
  260. /*-----通过缓冲区画一个图片到5110------*/
  261. void BufDrawBmp(char bitmap[],u8 x,u8 y,u8 width,u8 height);

  262. #endif /*USE_BUF*/

  263. #endif /*LCD5110_H*/
复制代码
下面是产生这四个图的主函数,看下很容易就知道函数的使用方法:
  1. #include "stm32f0xx.h"
  2. #include "LCD5110.h"

  3. extern u8 lcd_buf[LCD_X][LCD_Y];

  4. int main(void)
  5. {
  6.         u16 i;
  7.         point p[4];       
  8.        
  9.         p[0].x = 41;
  10.         p[0].y = 1;
  11.         p[1].x = 80;
  12.         p[1].y = 30;
  13.         p[2].x = 49;
  14.         p[2].y = 40;
  15.         p[3].x = 41;
  16.         p[3].y = 1;
  17.        
  18.         InitLcd();

  19. lab:
  20.        
  21. /*-------不使用buf画图和写字,速度最快,省内存----------------*/
  22.         for(i = 0;i < 6;i++)
  23.                 PutIcon((char*)(icon + i),i,0);
  24.         SetXY(13,0);
  25.         for(i = 0;i < 7;i++)
  26.                 WriteIcon((char*)(icon + 15 + i));
  27.         PutHanziStr((char*)Hanzi,2,15,4);
  28.         PutStr("oh my god",2,3);
  29.        
  30.         Delayms(2000);
  31.         BufClearAll();

  32. /*--------使用buf画图和写字(每一次操作自动刷新,速度最慢)----------*/
  33.         BufDrawBmp((char *)girl,0,0,45,48);
  34.         BufPutStr("hello",47,5);
  35.         BufPutStr("ming",49,15);
  36.         PutRect(42,3,40,22);
  37.         BufPutHanzi((char *)(Hanzi+4*32),44,30);
  38.         BufPutHanzi((char *)(Hanzi+4*32),60,30);
  39.         BufPutWideChar('!',76,30);
  40.                
  41.         Delayms(2000);
  42.         BufClearAll();
  43.        
  44. /*--------使用buf画图和写字(全部画完后一次性手动刷新,速度较快)----------*/
  45.         DrawBmptoBuf((char *)(icon+16),62,37,10,8);
  46.         DrawBmptoBuf((char *)(icon+16),22,25,10,8);
  47.         DrawBmptoBuf((char *)(icon+17),55,18,10,8);
  48.         DrawBmptoBuf((char *)(icon+17),12,36,10,8);
  49.         PutCircletoBuf(3,20,1);
  50.         PutCircletoBuf(8,20,2);
  51.         PutCircletoBuf(30,20,18);
  52.         PutLinetoBuf(4,2,44,43);
  53.         PutLinetoBuf(68,16,50,38);
  54.         PutPolylinetoBuf(p,3);
  55.         PutRecttoBuf(0,33,28,12);
  56.         PutStrtoBuf("ming",0,8);
  57.         RefreshAll();
  58.                
  59.         Delayms(2000);
  60.         BufClearAll();
  61.        
  62. /*---------混合使用buf函数和不用buf函数----------------*/
  63.         BufDrawBmp((char*)SFEFlameBubble,0,0,84,48);
  64.         PutStr("ming",2,1);
  65.         BufClear(30,8,5,3);
  66.        
  67.         Delayms(2000);
  68.         BufClearAll();
  69.        
  70.         goto lab;
  71. }
复制代码
  最后是整个工程,里面还有完整的6*8、8*16的ASCII字符库,大量的符号和图片库。
stm32 Nokia 5110液晶屏画点、画线、画矩形、画圆.zip (574.7 KB, 下载次数: 590)
查看精华帖全部内容,请登录或者注册
此帖出自stm32/stm8论坛

最新回复

谢谢楼主的无私,学习了  详情 回复 发表于 2019-6-4 16:03

点评

太帅了,有没有画填充的方法?  详情 回复 发表于 2013-9-30 11:31
谢谢楼主,不清楚楼主有没有5110做过电子指南针。  详情 回复 发表于 2013-9-28 16:16
好东西!谢谢楼主的无私奉献。:victory:  详情 回复 发表于 2012-10-12 23:39

赞赏

3

查看全部赞赏

点赞 关注(3)
 

回复
举报

2056

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 

回复 楼主 ming1006 的帖子

好东西!谢谢楼主的无私奉献。
此帖出自stm32/stm8论坛

点评

:pleased: 多谢支持啊!  详情 回复 发表于 2012-10-13 00:07
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

板凳
 

回复 沙发 IC爬虫 的帖子

多谢支持啊!
此帖出自stm32/stm8论坛
 
 

回复

1631

帖子

4

TA的资源

纯净的硅(高级)

4
 
前两天刚刚搞过5110,不过没有LZ这么深入。:carnation:
此帖出自stm32/stm8论坛

点评

接下去希望能继续拓展功能,不知道还能加些什么  详情 回复 发表于 2012-10-15 22:34
 
 
 

回复

25

帖子

0

TA的资源

一粒金砂(中级)

5
 

真的,这回我顶你!

真的,这回我顶你!
此帖出自stm32/stm8论坛

点评

呵呵,真心谢了  详情 回复 发表于 2012-10-15 22:34
 
 
 

回复

1万

帖子

16

TA的资源

版主

6
 

不错,顶

此帖出自stm32/stm8论坛

点评

多谢捧场啊  详情 回复 发表于 2012-10-15 22:35
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

7
 

回复 4楼 眼大5子 的帖子

接下去希望能继续拓展功能,不知道还能加些什么
此帖出自stm32/stm8论坛
 
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

8
 

回复 5楼 gaupen1186 的帖子

呵呵,真心谢了
此帖出自stm32/stm8论坛
 
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

9
 

回复 6楼 ddllxxrr 的帖子

多谢捧场啊
此帖出自stm32/stm8论坛
 
 
 

回复

106

帖子

0

TA的资源

一粒金砂(中级)

10
 
楼主很有心,做这个东西很好
此帖出自stm32/stm8论坛
 
 
 

回复

2143

帖子

3

TA的资源

五彩晶圆(中级)

11
 
搞点通用菜单嘛  楼主
此帖出自stm32/stm8论坛
 
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

12
 
谢谢你的建议,有时间会考虑做个,最近还有些事情要做,以后应该会完善
此帖出自stm32/stm8论坛
 
 
 

回复

160

帖子

0

TA的资源

一粒金砂(高级)

13
 

看来楼主这C语言的功底还挺深厚的嘛

看来楼主这C语言的功底还挺深厚的嘛..........
此帖出自stm32/stm8论坛
 
 
 

回复

618

帖子

0

TA的资源

一粒金砂(中级)

14
 
楼主真的很强大!
此帖出自stm32/stm8论坛
 
 
 

回复

1100

帖子

3

TA的资源

五彩晶圆(初级)

15
 
哥啊,你好有才啊,顶一个。
此帖出自stm32/stm8论坛
 
 
 

回复

1100

帖子

3

TA的资源

五彩晶圆(初级)

16
 
不知道我那个破诺基亚里面是不是这个显示屏,拆了看看。
此帖出自stm32/stm8论坛

点评

Nokia 5110 和3110都是这个屏幕  详情 回复 发表于 2012-10-18 23:16
 
 
 

回复

105

帖子

6

TA的资源

一粒金砂(高级)

17
 

回复 16楼 gaoyang9992006 的帖子

Nokia 5110 和3110都是这个屏幕
此帖出自stm32/stm8论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(中级)

18
 
这个真的不错哦
此帖出自stm32/stm8论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

19
 
很有学习价值的东东
此帖出自stm32/stm8论坛
 
 
 

回复

35

帖子

0

TA的资源

一粒金砂(中级)

20
 
怎么按引脚定义接好了,5110显示不了啊
此帖出自stm32/stm8论坛

点评

你用的那款单片机啊,不知道电压和延时注意了吗  详情 回复 发表于 2012-11-3 22:03
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
有奖直播报名| TI 面向楼宇和工厂自动化行业的毫米波雷达解决方案
【内容简介】TI 60GHz IWRL6432和 IWRL1432毫米波雷达传感器如何帮助解决楼宇和工厂自动化应用中的感应难题
【直播时间】5月28日(周三)上午10:00
【直播礼品】小米双肩包、contigo水杯、胶囊伞、安克充电器

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 2

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表