2041|2

12

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

msp430f5529 12864串口程序,移植的51 的,屏上没有任何显示 [复制链接]

  1. #include <msp430.h>
  2. typedef unsigned char uchar;
  3. typedef unsigned int uint;
  4. #define CS_H P6OUT |= BIT0
  5. #define CS_L P6OUT &= ~BIT0
  6. #define SID_H P6OUT |= BIT1
  7. #define SID_L P6OUT &= ~BIT1
  8. #define SCLK_H P6OUT |= BIT2
  9. #define SCLK_L P6OUT &= ~BIT2
  10. uchar table[]={"abcdefg"};
  11. /**************延时1ms************/
  12. void delay_1ms(void)
  13. {
  14.         uchar i;

  15.         for(i = 150;i > 0;i--)  _NOP();
  16. }
  17. /************延时nms**************/
  18. void delay_nms(uint n)
  19. {
  20.     uint i;

  21.     for(i = n;i > 0;i--)    delay_1ms();
  22. }
  23. /********发命令***********/
  24. void send_com(uchar com_data)
  25. {
  26. uchar i;
  27. uchar i_data;
  28. i_data = 0xf8;
  29. CS_H;
  30. SCLK_L;
  31. for(i=0;i<8;i++)
  32. {
  33. if((i_data&0x80)==0x80)
  34. SID_H;
  35. else
  36. SID_L;
  37. SCLK_L;
  38. SCLK_H;
  39. i_data = i_data<<1;
  40. }
  41. i_data = com_data;
  42. i_data &= 0xf0;
  43. for(i=0;i<8;i++)
  44. {
  45. if((i_data&0x80)==0x80)
  46. SID_H;
  47. else
  48. SID_L;
  49. SCLK_L;
  50. SCLK_H;
  51. i_data = i_data<<1;
  52. }
  53. i_data = com_data;
  54. i_data <<= 4;
  55. for(i=0;i<8;i++)
  56. {
  57. if((i_data&0x80)==0x80)
  58. SID_H;
  59. else
  60. SID_L;
  61. SCLK_L;
  62. SCLK_H;
  63. i_data = i_data<<1;
  64. }
  65. CS_L;
  66. delay_nms(10);
  67. }
  68. /***************发数据******************/
  69. void send_data(uchar com_data)
  70. {
  71. uchar i;
  72. uchar i_data;
  73. i_data = 0xfa;
  74. CS_H;
  75. SCLK_L;
  76. for(i=0;i<8;i++)
  77. {
  78. if((i_data&0x80)==0x80)
  79. SID_H;
  80. else
  81. SID_L;
  82. SCLK_L;
  83. SCLK_H;
  84. i_data = i_data<<1;
  85. }
  86. i_data = com_data;
  87. i_data &= 0xf0;
  88. for(i=0;i<8;i++)
  89. {
  90. if((i_data&0x80)==0x80)
  91. SID_H;
  92. else
  93. SID_L;
  94. SCLK_L;
  95. SCLK_H;
  96. i_data = i_data<<1;
  97. }
  98. i_data = com_data;
  99. i_data <<= 4;
  100. for(i=0;i<8;i++)
  101. {
  102. if((i_data&0x80)==0x80)
  103. SID_H;
  104. else
  105. SID_L;
  106. SCLK_L;
  107. SCLK_H;
  108. i_data = i_data<<1;
  109. }
  110. CS_L;
  111. delay_nms(10);
  112. }
  113. /***********初始化***************/
  114. void init()
  115. {
  116. delay_nms(100);
  117. send_com(0x30);
  118. send_com(0x02);
  119. send_com(0x0c);
  120. send_com(0x01);
  121. send_com(0x06);
  122. send_com(0x80);

  123. }
  124. int main(void) {
  125.     WDTCTL = WDTPW | WDTHOLD;        // Stop watchdog timer
  126. P6DIR |= BIT0 + BIT1 + BIT2;
  127. uchar i;
  128. for(i=0;i<7;i++)
  129. {
  130. send_data(table[i]);
  131. }
  132. while(1);
  133. return 0;
  134. }
复制代码


最新回复

12864和51单片机用的是同一个吗。硬件连接确保正确。430相关的脚位配置确定正确,51单片机主函数也是这样写的吗。是不是要初始化。时序是否准确,测量一下。  详情 回复 发表于 2016-1-5 21:14
 
点赞 关注

回复
举报

2549

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
猜测发送函数传送的太快,而且最大的bug是为什么初始化函数写了不用
 
 

回复

3471

帖子

13

TA的资源

五彩晶圆(高级)

板凳
 
12864和51单片机用的是同一个吗。硬件连接确保正确。430相关的脚位配置确定正确,51单片机主函数也是这样写的吗。是不是要初始化。时序是否准确,测量一下。
 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

北京市海淀区中关村大街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
快速回复 返回顶部 返回列表