你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32 NRF905 12864 SPI 8080

[复制链接]
xule 发布时间:2015-4-20 15:24
//-----------------并行 //SPI//模拟SPI//都有 #include "lcd12864.h" /****************************************/void LCD_IOinit_OUT(void)  { . f3 g! h, n4 N
  GPIO_InitTypeDef GPIO_InitStructure;    3 b$ R+ @2 h6 N9 U! ~: n! G3 Y
        RCC_APB2PeriphClockCmd(GPIO  , ENABLE);           GPIO_InitStructure.GPIO_Pin =CS|RW|CLK|PSB|RST;   
9 Z1 a" Q7 O; A4 U8 u* r( M" ?+ z8 z  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; ; _7 T7 @9 E: Y" V, x/ i
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;     9 E& ^2 X9 [" Z/ H9 N
  GPIO_Init(LCD_IO, &GPIO_InitStructure);   
0 F- ]5 B. f! C# o3 V4 P5 e- @}    /********»ù±¾º¯Êý*********/ void LCD_Write(uint32_t cmd,uint8_t ddata)
/ L$ ^( Z+ M/ i5 O, U{
2 `% B, Y; r  O& T6 X8 u$ n0 G uint32_t temp=cmd; 4 M% O3 _/ j+ B$ t# v
uint32_t i; ! l- Y6 v/ I6 V6 D& k
RESET(CS);  
7 O9 }) I) k4 x: I" w& n temp|=((uint32_t)(ddata&(uint8_t)0xf0)<<16)+((uint32_t)(ddata&(uint8_t)0x0f)<<12);
- _! K7 N$ }) }" h2 _( }& t3 R/ Z SET(CS);
2 v3 ~0 Y; g+ y+ d5 c" Y for(i=0;i<24;i++) / [: _& E: v% B2 |, a
{   if(temp&0x80000000)SET(RW);    else RESET(RW);    SET(CLK);   delay_ms(1);   RESET(CLK);    temp=temp<<1;
7 b& o( X, U2 G. X }
1 q, l$ d6 A/ a' Z. b0 u RESET(CS);  2 l. V. M) e' D3 ~1 C
}    u32 ReaddDate ;          u8  ReaddDatebit=0;          u8 J=0; ' o% a$ y5 o0 I' ~. e3 l& E

' E. S6 C+ b6 ~+ l. B+ _# H* @6 C7 M7 C# n5 x, ?
/**************/void Display(uint8_t addr,uint8_t *Chinese) {    LCD_Write(CMD,addr);    delay_us(100);    while(*Chinese!='\0')    {     LCD_Write(DATE,*Chinese);     Chinese++;     delay_ms(1);    } }
. z, Y7 i' R5 ?  ]0 |
9 [( x7 q. y9 e8 E  T, R; c, G! ^( l- x6 b; w3 T
( n6 n7 k3 m% W3 c; J
/*******ÔÚÖ¸¶¨Î»ÖÃÏÔʾ×Ö·û´®***************/  
# R/ M# K8 B5 W7 J. i9 a$ ]4 a8 i; Cvoid LCD_Show_String_On_Position(u8 y,u8  x, u8  *adata){ u8 address; u8 i=0; switch (y) {  case 1:address=0x80+x;break;  case 2:address=0x90+x;break;  case 3:address=0x88+x;break;  case 4:address=0x98+x;break;  default:break; } LCD_Write(CMD,address); while(*(adata+i)) {  LCD_Write(DATE,*(adata+i));        i++; }}/****************************/ void LCD_ShowNum(u8 y,u8  x,u16 num ){         u8 address;   u8 i=0;         u8  str[5];         u8 shi,ge,bai ,qian; switch (y) {  case 1:address=0x80+x;break;  case 2:address=0x90+x;break;  case 3:address=0x88+x;break;  case 4:address=0x98+x;break;  default:break; } LCD_Write(CMD,address); if(num>10000) { num=0;} else num=num;  qian=num/1000;  bai=(num-qian*1000)/100;  shi=(num-bai*100-qian*1000)/10;  ge=num%10;  str[0]=qian+'0';  str[1]=bai+'0';  str[2]=shi+'0';  str[3]='.';  str[4]=ge+'0'; if(qian==0) {           if (bai==0)        {                   if(shi==0)                 {                        for(i=2;i<5;i++)                  LCD_Write(DATE,*(str+i));                  }                                  else                           for(i=2;i<5;i++)                  LCD_Write(DATE,*(str+i));   }          if(bai!=0)        {                     for(i=1;i<5;i++)                   LCD_Write(DATE,*(str+i));         }}else   for(i=0;i<5;i++)                 LCD_Write(DATE,*(str+i));
; z5 X" k6 O& S% }1 Q, S; R+ [}/************³õʼ»¯LCDµÄÅäÖÃ******************/void LCD_Init(void)
) B: s8 y- ], g' d$ T5 Y' K/ ^{            LCD_IOinit_OUT();                 RESET(CS);                  RESET(PSB);                  RESET(RST);                  delay_ms(1);                  SET(RST);                  delay_ms(1);                  LCD_Write(CMD,0x30);                  delay_ms(1);                  LCD_Write(CMD,0x0c);                  delay_ms(10);                  LCD_Write(CMD,0x01);                     delay_ms(1);      LCD_Write(CMD,0X04);                 delay_ms(1);                  LCD_Write(CMD,0x06);                       delay_ms(1);      }  //==============================================================#include "SPI_LCD.h"#include "spi.h"void SPI_LCD_Config(void){  GPIO_InitTypeDef GPIO_InitStructure;    $ m$ K6 @- U/ @5 k1 P) N
        RCC_APB2PeriphClockCmd(GPIO,ENABLE);           GPIO_InitStructure.GPIO_Pin =CS |PSB|RST;   2 I- V. X( z; U* b! H
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; # T6 {- `* m, \# F; G* y8 K9 t$ T
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;     2 H  _5 T7 s+ w$ C/ ?  A! m
  GPIO_Init(LCD_IO, &GPIO_InitStructure);                    SPI2_Init();
0 S) Q- A5 |& I8 S2 E/ a8 O  h}
- ^" r& a3 t/ r, c) ~2 }! |  g void LCD_Write(uint8_t cmd,uint8_t ddata) {  RESET(CS);   SET(CS);  SPI2_WriteByte(cmd); SPI2_WriteByte(ddata&0xf0); SPI2_WriteByte((ddata&0x0f)<<4); RESET(CS);  } " v! k' D5 k* Z1 k! w6 b, t1 i
  4 k! ~" k5 i/ d5 R* A! _+ @
void LCD_Show_String_On_Position(u8 y,u8  x, u8  *adata){ u8 address; u8 i=0; switch (y) {  case 1:address=0x80+x;break;  case 2:address=0x90+x;break;  case 3:address=0x88+x;break;  case 4:address=0x98+x;break;  default:break; } LCD_Write(CMD,address); while(*(adata+i)) {  LCD_Write(DATE,*(adata+i));        i++; } } void SPI_LCD_Init(void) ) I! f" z3 w& P
{            SPI_LCD_Config();                 RESET(CS);                  RESET(PSB);                  RESET(RST);                  delay_ms(1);                  SET(RST);                  delay_ms(1);                  LCD_Write(CMD,0x30);                  delay_ms(1);                  LCD_Write(CMD,0x0c);                  delay_ms(10);                  LCD_Write(CMD,0x01);                     delay_ms(1);      LCD_Write(CMD,0X04);                 delay_ms(1);                  LCD_Write(CMD,0x06);                       delay_ms(1);      }  + F9 \' a. @0 p
  ^) i! p7 D0 c2 W6 p% j
赞 收藏 评论6 发布时间:2015-4-20 15:24

举报

6个回答
1407W 回答时间:2015-5-6 16:20:21
此帖仅作者可见
拼命三郎 回答时间:2015-4-21 10:01:07
此帖仅作者可见
拼命三郎 回答时间:2015-4-21 10:00:52
此帖仅作者可见
wamcncn 回答时间:2015-4-20 21:26:45
此帖仅作者可见
wyxy163@126.com 回答时间:2015-4-20 15:43:58
提示: 作者被禁止或删除 内容自动屏蔽
xule 回答时间:2015-4-20 15:25:41
此帖仅作者可见
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版