芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片解密CH32V103开发板的彩色OLED屏显示驱动

芯片解密OLED屏有多种类型,其中的参数屏要比单色屏和双色屏更具色彩表现力,在设计小游戏时,彩色屏将是不错的下载,假如用单色屏来完成俄罗斯方块的话,那就只剩下方块了,相对来讲彩色屏会更具优势。
目前来看,似乎还没见到有I2C接口的彩色屏,因此就只有多牺牲几个I/O口来驱动彩色屏了!
在彩色屏与U CH32V103连接上,其关系如下:
CLK--PA2
DIN--PA3
RST--PB3
DC --PB4
CS --PB5
BLK--PB6
芯片解密定义引脚输出高低电平的语句为:
#define OLED_SCLK_Set()  GPIO_WriteBit(GPIOA, GPIO_Pin_2,Bit_SET)
#define OLED_SCLK_Clr()  GPIO_WriteBit(GPIOA, GPIO_Pin_2,Bit_RESET)
#define OLED_SDIN_Set()  GPIO_WriteBit(GPIOA, GPIO_Pin_3,Bit_SET)
#define OLED_SDIN_Clr()  GPIO_WriteBit(GPIOA, GPIO_Pin_3,Bit_RESET)
#define OLED_RST_Set()  GPIO_WriteBit(GPIOB, GPIO_Pin_3,Bit_SET)
#define OLED_RST_Clr()  GPIO_WriteBit(GPIOB, GPIO_Pin_3,Bit_RESET)
#define OLED_DC_Set()   GPIO_WriteBit(GPIOB, GPIO_Pin_4,Bit_SET)
#define OLED_DC_Clr()   GPIO_WriteBit(GPIOB, GPIO_Pin_4,Bit_RESET)
#define OLED_CS_Set()   GPIO_WriteBit(GPIOB, GPIO_Pin_5,Bit_SET)
#define OLED_CS_Clr()   GPIO_WriteBit(GPIOB, GPIO_Pin_5,Bit_RESET)
#define OLED_BLK_Set()  GPIO_WriteBit(GPIOB, GPIO_Pin_6,Bit_SET)
#define OLED_BLK_Clr()  GPIO_WriteBit(GPIOB, GPIO_Pin_6,Bit_RESET)
相关引脚输出功能的配置函数为:
  1. void App_OledInit(void)
  2. {
  3. GPIO_InitTypeDef  GPIO_InitStructure;                //定义一个GPIO_InitTypeDef类型的结构体
  4. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);//使能与LED相关的GPIO端口时钟
  5. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6; //配置GPIO引脚
  6. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;     //设置GPIO模式为推挽输出
  7. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;    //设置GPIO口输出速度
  8. GPIO_Init(GPIOB, &GPIO_InitStructure);               //调用库函数,初始化GPIOA
  9. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);//使能与LED相关的GPIO端口时钟
  10. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3; //配置GPIO引脚
  11. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;     //设置GPIO模式为推挽输出
  12. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;    //设置GPIO口输出速度
  13. GPIO_Init(GPIOA, &GPIO_InitStructure);               //调用库函数,初始化GPIOA
  14. GPIO_SetBits(GPIOA,GPIO_Pin_2|GPIO_Pin_3);           //设置引脚输出高电平
  15. }
复制代码

图片显示的函数为:
  1. void LCD_ShowPicturea(u16 x1,u16 y1,u16 x2,u16 y2)
  2. {
  3. int i;
  4. LCD_Address_Set(x1,y1,x2,y2);
  5. for(i=0;i<12800;i++)
  6. {
  7. LCD_WR_DATA8(gImage_moled[i*2]);
  8. LCD_WR_DATA8(gImage_moled[i*2+1]);
  9. }
  10. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信