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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

總結的MSP430G2553點亮1602例程

[復制鏈接]
跳轉到指定樓層
樓主
ID:366517 發表于 2020-3-19 10:26 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
作為小白,總結了一些例程,希望對新手有用
main.c主程序
  1. unsigned char *s1="welcome!";這句話顯示有警告,不知道是什么問題,不過也可以執行。
  2. void main(void)
  3. {
  4. uchar i;
  5. WDTCTL=WDT_ADLY_250;

  6. LcdReset();
  7. Dispstr(04,0,s1);
  8. LocateXY(0,9);
  9. LcdWriteCommand(0x07,1);    //0x07表示n=1,s=1整屏左移。
  10. for(i=12;i>0;i--)
  11. {
  12. LcdWriteData(0x20);
  13. IFG1 &=~ WDTIFG;
  14. while(!(IFG1 & WDTIFG));
  15. IFG1 &=~ WDTIFG;
  16. }
  17. while (1)
  18. {
  19. LcdWriteCommand(0x05,1);     //0x05表示n=0,s=1整屏右移。
  20. for(i=24;i>0;i--)
  21. {
  22. LcdWriteData(0x20);
  23. IFG1&=~WDTIFG;
  24. while(!(IFG1&WDTIFG));
  25. IFG1&=~WDTIFG;
  26. }
  27. LcdWriteCommand(0x07,1);
  28. for(i=24;i>0;i--)
  29. {
  30. LcdWriteData(0x20);
  31. IFG1&=~WDTIFG;
  32. while(!(IFG1&WDTIFG));
  33. IFG1&=~WDTIFG;
  34. }
  35. }
  36. }
復制代碼


cry1602.c子程序   
  1. #include "msp430g2553.h"
  2. #include "cry1602.h"
  3. #define datadir P1DIR
  4. #define dataport P1OUT
  5. #define busy 0x80
  6. #define ctr1dir P2DIR
  7. #define CLR_RS P2OUT&=~BIT0;
  8. #define SET_RS P2OUT|=BIT0;
  9. #define CLR_RW P2OUT&=~BIT1;
  10. #define SET_RW P2OUT|=BIT1;
  11. #define CLR_EN P2OUT&=~BIT2;
  12. #define SET_EN P2OUT|=BIT2;
  13. void DispStr(uchar x,uchar y,uchar *ptr)
  14. {
  15.   uchar *temp;
  16.   uchar i,n=0;
  17.   temp=ptr;
  18.   while(*ptr++!='\0')
  19.     n++;
  20.   for(i=0;i<n;i++)
  21.   {Disp1Char(x++,y,temp[i]);
  22.   if(x==0x0f)
  23.   {
  24.     x=0;
  25.     y^=1;
  26.   }
  27.   }
  28. }
  29. void DispNChar(uchar x,uchar y,uchar n,uchar *ptr)
  30. {uchar i;
  31. for(i=0;i<n;i++)
  32. {
  33.   Disp1Char(x++,y,ptr[i]);
  34.   if(x==0x0f)
  35.   {x=0;
  36.   y^=1;
  37.   }}}
  38. void LocateXY(uchar x,uchar y)
  39. {
  40.   uchar temp;
  41.   temp=x&0x0f;
  42.   y&=0x01;
  43.   if(y)
  44.     temp|=0x40;
  45.   temp|=0x80;
  46.   LcdWriteCommand(temp,1);
  47. }
  48. void Disp1Char(uchar x,uchar y,uchar data)
  49. {LocateXY(x,y);
  50. LcdWriteData(data);
  51. }
  52. void LcdReset(void)
  53. {ctr1dir|=0x07;
  54. datadir=0xff;
  55. LcdWriteCommand(0x38,0);
  56. Delay5ms();
  57. LcdWriteCommand(0x38,0);
  58. Delay5ms();
  59. LcdWriteCommand(0x38,0);
  60. Delay5ms();
  61. LcdWriteCommand(0x38,1);
  62. LcdWriteCommand(0x08,1);
  63. LcdWriteCommand(0x01,1);  
  64. LcdWriteCommand(0x06,1);  
  65.   LcdWriteCommand(0x0c,1);
  66. }
  67. void LcdWriteCommand(uchar cmd,uchar chk)
  68. {
  69.   if(chk)
  70.     WaitForEnable();
  71.   CLR_RS;
  72.   CLR_RW;
  73.   _NOP();
  74.   dataport=cmd;
  75.   _NOP();
  76.   SET_EN;
  77.   _NOP();
  78.   _NOP();
  79. CLR_EN;
  80. }
  81. void LcdWriteData(uchar data)
  82. {
  83.   WaitForEnable();
  84.   SET_RS;
  85.   CLR_RW;
  86.   _NOP();
  87.   dataport=data;
  88.   _NOP();
  89. SET_EN;
  90. _NOP();
  91. _NOP();
  92. CLR_EN;
  93. }
  94. void WaitForEnable(void)
  95. {
  96. P1DIR&=0X00;
  97. CLR_RS;
  98. SET_RW
  99. _NOP();
  100. SET_EN;
  101. _NOP();
  102. _NOP();
  103. while((P1IN&busy)!=0);
  104. CLR_EN;
  105. P1DIR|=0xff;
  106. }
  107. void Delay5ms(void)
  108. {
  109.   uint i=40000;
  110.   while(i!=0)
  111.   {i--;}
  112. }
復制代碼

  
cry1602.h  子程序頭文件
  1. #ifndef _CRY1602_H
  2. #define _CRY1602_H
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. void DispStr(uchar x,uchar y,uchar *ptr);
  6. void DispNChar(uchar x,uchar y,uchar n,uchar *ptr);
  7. void LocateXY(uchar x,uchar y);
  8. void Disp1Char(uchar x,uchar y,uchar data);
  9. void LcdReset(void);
  10. void LcdWriteCommand(uchar cmd,uchar chk);
  11. void LcdWriteData(uchar data);
  12. void WaitForEnable(void);
  13. void Delay5ms(void);
  14. #endif
復制代碼

以上資料51hei下載地址:
MSP430G2553和LCD1602顯示的正確程序.doc (35 KB, 下載次數: 23)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级做a爰片性色毛片视频停止 | 精品国产一区一区二区三亚瑟 | 亚洲第一成人影院 | 午夜小电影 | 亚洲精品乱码久久久久久黑人 | 99热都是精品 | 欧美亚洲网站 | 中文成人在线 | 在线视频日韩 | 国产一级特黄视频 | 久久国产精品一区二区 | 欧美国产日韩一区 | 亚洲一区二区三区四区av | 国产日韩欧美一区二区 | wwww.xxxx免费| 91精品国产综合久久香蕉麻豆 | 一区二区在线不卡 | 日韩视频在线观看一区二区 | 91在线色视频 | 欧美白人做受xxxx视频 | 日本不卡一区二区三区在线观看 | 日本午夜精品 | 99亚洲精品 | 欧美激情五月 | 亚洲精品一区二区三区免 | 久久久久久免费看 | 久久黄视频 | 色av一区二区 | 午夜影院在线观看 | 中文字幕亚洲精品 | 国产中文字幕网 | 久久一区精品 | 久久久高清 | 久久综合九九 | 一二三在线视频 | 久久精品免费看 | 久久国产精品免费一区二区三区 | 美女黄视频网站 | 亚洲视频免费一区 | 中文字幕 国产 | 亚洲欧美在线观看 |