2806|4

6

帖子

1

TA的资源

一粒金砂(初级)

楼主
 

用keil软件编写的12864程序 求大神分享 [复制链接]

用keil软件编写的12864程序   求大神分享

最新回复

如果是用12864绘图呢  详情 回复 发表于 2014-8-7 15:19
 
点赞 关注

回复
举报

113

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
说明白一些
 
 

回复

73

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
你要串行的还是并行的?
  1. #include <TM4C.h>
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #include "inc/hw_ints.h"
  5. #include "inc/hw_memmap.h"
  6. #include "inc/hw_types.h"
  7. #include "driverlib/sysctl.h"
  8. #include "driverlib/interrupt.h"
  9. #include "driverlib/gpio.h"
  10. #include "driverlib/timer.h"

  11. #define uchar unsigned char
  12. #define uint  unsigned int

  13. #define Delay_us(x)    SysCtlDelay((long)(SysCtlClockGet( )*(double)x /3000000 ))
  14. #define Delay_ms(x)    SysCtlDelay((long)(SysCtlClockGet( )*(double)x /3000 ))

  15. #define SCLK_H             GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_4,0Xff )
  16. #define SCLK_L       GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_4,0x00 )
  17. #define CS_H         GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_2,0xFF )
  18. #define CS_L         GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_2,0x00 )
  19. #define SID_H        GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3,0xff )
  20. #define SID_L        GPIOPinWrite(GPIO_PORTA_BASE, GPIO_PIN_3,0x00 )
  21. #define SID          GPIOPinRead(GPIO_PORTA_BASE, GPIO_PIN_3)

  22. /********************************************************************
  23. *??: sendbyte()
  24. *??:???????????,????
  25. *??: zdata
  26. *??:?
  27. ***********************************************************************/
  28. void sendbyte(unsigned char zdata)
  29. {
  30.         unsigned int i;
  31.         for(i=0;i<8;i++)
  32.         {
  33.                 if((zdata << i) & 0x80)
  34.                 {
  35.                         SID_H;//SID=1;
  36.                 }
  37.                 else
  38.                 {
  39.                         SID_L;//SID=0;
  40.                 }
  41.                 SCLK_L;//SCLK= 0;
  42.                 SCLK_H;//SCLK=1;
  43.         }
  44. }


  45. /********************************************************************
  46. *??: write_com()
  47. *??:?????
  48. *??: cmdcode
  49. *??:?
  50. **********************************************************************/
  51. void write_com(unsigned char cmdcode)
  52. {
  53.         CS_H;//CS=1;
  54.         sendbyte(0xf8); //??12864???????
  55.         sendbyte(cmdcode & 0xf0);
  56.         sendbyte((cmdcode << 4) & 0xf0);
  57.         Delay_us(200);
  58. }


  59. /********************************************************************
  60. *??: write_data()
  61. *??:?????
  62. *??: cmdcode
  63. *??:?
  64. ***********************************************************************/
  65. void write_data(unsigned char Dispdata)
  66. {
  67.         CS_H;//CS=1;
  68.         sendbyte(0xfa); //??12864???????
  69.         sendbyte(Dispdata & 0xf0);
  70.         sendbyte((Dispdata << 4) & 0xf0);
  71.         Delay_us(200);
  72. }

  73. /********************************************************************
  74. *??: lcdinit()
  75. *??:?????
  76. *??: cmdcode
  77. *??:?
  78. ***********************************************************************/
  79. void lcdinit()
  80. {

  81.         Delay_ms(20);
  82.         write_com(0x30); //??????
  83.         Delay_ms(5) ;
  84.         write_com(0x0c); //???????
  85.         Delay_ms(5) ;
  86. }


  87. /********************************************************************
  88. *??: hzkdis()
  89. *??:?????
  90. *??: *s
  91. *??:?
  92. *********************************************************************/
  93. void hzkdis(char *s)
  94. {
  95.         while(*s > 0)
  96.         {
  97.                 write_data(*s);
  98.                 s++;
  99.                 Delay_ms(5);
  100.         }
  101. }

  102. /********************************************************************
  103. *??: Test()
  104. *??:?????
  105. *??:?
  106. *??:?
  107. ***********************************************************************/
  108. void Test()
  109. {
  110.         write_com(0x03); //????
  111.         Delay_ms(5);
  112.         write_com(0x81); //?????
  113.         hzkdis("555");
  114.         write_com(0x91); //?????
  115.         hzkdis("5");
  116. }

  117. /********************************************************************
  118. *??: Main()
  119. *??:???
  120. *??:?
  121. *??:?
  122. **********************************************************************/
  123. int main(void)
  124. {
  125.         SysCtlClockSet(SYSCTL_SYSDIV_5|SYSCTL_USE_PLL|SYSCTL_XTAL_16MHZ|SYSCTL_OSC_MAIN);
  126.         SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);
  127.         SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
  128.         GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
  129.         GPIOPinTypeGPIOOutput(GPIO_PORTA_BASE, GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4);
  130.         GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3, 0x08);


  131.         Delay_ms(20);
  132.         lcdinit();
  133.         Delay_ms(20);
  134.         while(1)
  135.         {
  136.                 Test();
  137.                 Delay_ms(50);
  138.         }

  139. }
复制代码


上面是串行的

你先看一下

其实时序什么的都不是很难

点评

如果是用12864绘图呢  详情 回复 发表于 2014-8-7 15:19
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(初级)

4
 
乁year 发表于 2014-8-2 09:12
你要串行的还是并行的?



如果是用12864绘图呢
 
 
 

回复

6

帖子

1

TA的资源

一粒金砂(初级)

5
 
谢谢 ,有并行的吗?
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表