資源簡(jiǎn)介
/********************************************
主控芯片:STM32F767IGT6主頻216Mhz
晶體頻率:HSE=25Mhz SYSCLK=216Mhz
模塊型號(hào):2.13寸墨水屏模塊
通訊方式:SPI串口通信
函數(shù)功能:聲明2.13寸墨水屏模塊使用的函數(shù)與IO
作者:蘇夏雨
授權(quán):未經(jīng)作者允許,禁止轉(zhuǎn)載
********************************************/
//定義模塊頭文件名稱
#ifndef __213PAPER_H
#define __213PAPER_H
//定義模塊使用的引腳
#define CS(n) {n?HAL_GPIO_WritePin(GPIOH,GPIO_PIN_4,GPIO_PIN_SET):HAL_GPIO_WritePin(GPIOH,GPIO_PIN_4,GPIO_PIN_RESET);}
#define DC(n) {n?HAL_GPIO_WritePin(GPIOH,GPIO_PIN_3,GPIO_PIN_SET):HAL_GPIO_WritePin(GPIOH,GPIO_PIN_3,GPIO_PIN_RESET);}
#define DIN(n) {n?HAL_GPIO_WritePin(GPIOH,GPIO_PIN_2,GPIO_PIN_SET):HAL_GPIO_WritePin(GPIOH,GPIO_PIN_2,GPIO_PIN_RESET);}
#define CLK(n) {n?HAL_GPIO_WritePin(GPIOH,GPIO_PIN_5,GPIO_PIN_SET):HAL_GPIO_WritePin(GPIOH,GPIO_PIN_5,GPIO_PIN_RESET);}
//聲明需要使用的函數(shù)
void paperinit(void);//墨水屏模塊初始化
void paperdisplay(void);//刷新一次墨水屏顯示內(nèi)容
void papersetstring(unsigned char color);//設(shè)置墨水屏顯示內(nèi)容
//聲明需要使用的數(shù)據(jù)
//IMG2lcd設(shè)置參數(shù):(單色、C語言數(shù)組、分辨率212*104、垂直掃描、自右至左掃描)

代碼片段和文件信息
/********************************************
主控芯片:STM32F767IGT6主頻216Mhz
晶體頻率:HSE=25Mhz??SYSCLK=216Mhz
模塊型號(hào):2.13寸墨水屏模塊
通訊方式:SPI串口通信
函數(shù)功能:2.13寸墨水屏模塊的初始化、顯示等函數(shù)
作者:蘇夏雨
授權(quán):未經(jīng)作者允許,禁止轉(zhuǎn)載
********************************************/
#include?“213PAPER.h“
#include?“stm32f7xx.h“
#include?“stm32f7xx_hal.h“
void?paperdelay(unsigned?long?time)//軟件延時(shí)
{
for(;time>0;time--);
}
void?sendbyte(unsigned?char?D0)//SPI總線發(fā)送1byte
{
unsigned?i;
for(i=0;i<8;i++)
{
CLK(0);
DIN(D0&0x80);
CLK(1);
D0<<=1;
}
}
void?writecmd(unsigned?char?D1)//寫命令
{
CS(0);
DC(0);
sendbyte(D1);
CS(1);
}
void?writedata(unsigned?char?D2)//寫數(shù)據(jù)
{
CS(0);
DC(1);
sendbyte(D2);
CS(1);
}
void?paperinit()//墨水屏初始化
{
GPIO_InitTypeDef?GPIO_InitStructure;//GPIO變量
__HAL_RCC_GPIOH_CLK_ENABLE();
??GPIO_InitStructure.Pin=(GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5);
??GPIO_InitStructure.Mode=GPIO_MODE_OUTPUT_PP;
??GPIO_InitStructure.Pull=GPIO_PULLUP;
??GPIO_InitStructure.Speed=GPIO_SPEED_HIGH;
??HAL_GPIO_Init(GPIOH&GPIO_InitStructure);
paperdelay(50000000);??
??writecmd(0x01);?
writedata?(0x07); ????//設(shè)置高低電壓
writedata?(0x00);
writedata?(0x0a);
writedata?(0x00);
writecmd(0x06);???????//boost設(shè)定
writedata?(0x07);
writedata?(0x07);
writedata?(0x07);
writecmd(0x04);??????//上電?
paperdelay(50000000);???????????????
writecmd(0X00);
writedata(0xcf); //選擇最大分辨率
writecmd(0X50);
writedata(0x37);
writecmd(0x30); //PLL設(shè)定
writedata?(0x29);????
writecmd(0x61); //像素設(shè)定
writedata?(0x68);???????//200像素 ?
writedata?(0x00); //300像素?
writedata?(0xd4);
writecmd(0x82); //vcom設(shè)定
writedata?(0x0a);
writecmd(0x12);??????????????
paperdelay(50000000); ??//wait?for?fresh?display
writecmd(0x82);?? ??//to?solve?Vcom?drop????
writedata(0x00);
writecmd(0x01);?? ??//power?setting??????
writedata(0x02); ??//gate?switch?to?external
writedata(0x00);
writedata(0x00);?
writedata(0x00);?
paperdelay(50000000);???
writecmd(0X02);??? //power?off
paperdelay(50000000);???
}
void?paperdisplay()
{
unsigned?int?i;
writecmd(0x13);//黑白顯示
paperdelay(50000000);
for(i=0;i<2756;i++){writedata(PAPER2[i]);paperdelay(1000);};
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????2402??2019-07-03?21:41??2.13寸電子墨水屏驅(qū)動(dòng)(正點(diǎn)原子阿波羅開發(fā)板運(yùn)行通過)\213PAPER.c
?????文件???????29493??2019-07-03?21:22??2.13寸電子墨水屏驅(qū)動(dòng)(正點(diǎn)原子阿波羅開發(fā)板運(yùn)行通過)\213PAPER.h
?????目錄???????????0??2019-08-27?23:01??2.13寸電子墨水屏驅(qū)動(dòng)(正點(diǎn)原子阿波羅開發(fā)板運(yùn)行通過)\
評(píng)論
共有 條評(píng)論