資源簡(jiǎn)介
1.寄存器部分參考了原子和網(wǎng)上其他大佬的代碼,稍作修改;
2.可快速更改控制引腳和控制方式(spi和i2c),在.h文件中修改即可;
3.對(duì)字符顯示進(jìn)行優(yōu)化,目前可顯示字符、字符串、符號(hào)十進(jìn)制、可選精度小數(shù)、十六進(jìn)制...
4.封裝了繪圖函數(shù),繪制圓、橢圓等;
5.封裝對(duì)屏操作函數(shù),移屏、翻轉(zhuǎn)等,可用于制作菜單;

代碼片段和文件信息
/**
??******************************************************************************
??*?
??*?軟件模擬spi協(xié)議(僅支持oled)
??*
??*
??*?使用說(shuō)明:
??* 1.本部分支持stm32f4系列單片機(jī);
??* 2.修改端口控制,請(qǐng)參考修改softspi.h文件內(nèi)容;
??* 3.經(jīng)測(cè)試,可使用在oled等spi設(shè)備上;
??* 4.本文件依賴文件除ST固件庫(kù)外,還需delay./c.h、sys.h;
??*
??*
??* Create??:2017年12月23日
??*?Update??:2017年12月23日
??*?Author??:梁宗南(SERI.LJI)
??*?Email :liangzongnan0214@163.com
??*?Blog????:liangzongnan.com
??*?QQ :494089986
??*?
??******************************************************************************
***/
#include?“oledspi.h“
#include?“delay.h“
/**
??*?@brief :初始化oled的spi接口
??*?@note???:--
??*?@param :void
??*?@return :void
??*
??*?@date???:2017/12/23
??*?@design?:
??**/
void?OLED_SPI_InitConfig(void)
{
GPIO_InitTypeDef??gpio;
RCC_AHB1PeriphClockCmd((1<<(((u32)OLED_SPI_PORT?-?AHB1PERIPH_base)>>10))?ENABLE);//port?clock?enable!
gpio.GPIO_Pin???=?(1< |?(1< |?(1< |?(1< |?(1< gpio.GPIO_Mode??=?GPIO_Mode_OUT;
gpio.GPIO_Speed?=?GPIO_Speed_2MHz;
gpio.GPIO_OType?=?GPIO_OType_PP;
gpio.GPIO_PuPd??=?GPIO_PuPd_UP;
GPIO_Init(OLED_SPI_PORT?&gpio);
OLED_SPI_CS_L();
OLED_SPI_RST_L();
delay_ms(100);
OLED_SPI_RST_H();
delay_ms(100);
}
/**
??*?@brief :發(fā)送一個(gè)字節(jié)數(shù)據(jù)
??*?@note???:--高位先發(fā)!
??*?@param :data?待發(fā)送的數(shù)據(jù)
??*?@return :void
??*
??*?@date???:2017/12/23
??*?@design?:
??**/
static?void?OLED_SPI_SendByte(uint8_t?data)
{????????????????????????
uint8_t?i;???
for(i=0;?i<8;?i++)
{
OLED_SPI_D0_L();
if(data?&?0x80)//高位先發(fā)送!
OLED_SPI_D1_H();
else?
OLED_SPI_D1_L();
OLED_SPI_D0_H();
data?<<=?1;
}
}?
/**
??*?@brief :發(fā)送命令給oled
??*?@note???:--
??*?@param :command?待發(fā)送的命令數(shù)據(jù)
??*?@return :void
??*
??*?@date???:2017/12/23
??*?@design?:
??**/
void?OLED_SPI_WriteCommand(uint8_t?command)
{
OLED_SPI_DC_L();
OLED_SPI_CS_L();
OLED_SPI_SendByte(command);
OLED_SPI_CS_H();
OLED_SPI_DC_H();
}
/**
??*?@brief :發(fā)送數(shù)據(jù)給oled
??*?@note???:--
??*?@param :data?待發(fā)送的數(shù)據(jù)
??*?@return :void
??*
??*?@date???:2017/12/23
??*?@design?:
??**/
void?OLED_SPI_WriteData(uint8_t?data)
{
OLED_SPI_DC_H();
OLED_SPI_CS_L();
OLED_SPI_SendByte(data);
OLED_SPI_CS_H();
OLED_SPI_DC_H();
}
/*?********************?Copyright?(C)?2017-2017?TYUT?TSS-plan?by?SERI.LJI?********************?*/
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????41062??2018-01-22?19:58??Task_oled.c
?????文件????????7440??2018-01-22?19:49??Task_oled.h
?????目錄???????????0??2018-01-21?21:21??emWin\
?????目錄???????????0??2018-01-21?21:34??emWin\Config\
?????文件????????3799??2018-01-21?21:27??emWin\Config\GUIConf.c
?????文件????????4110??2018-01-21?21:25??emWin\Config\GUIConf.h
?????文件???????25046??2018-01-21?21:30??emWin\Config\GUIDRV_Template.c
?????文件????????3205??2016-09-30?15:49??emWin\Config\GUIDRV_Template.h
?????文件????????7723??2016-09-30?15:49??emWin\Config\LCDConf_FlexColor_Template.c
?????文件????????2913??2016-09-30?15:49??emWin\Config\LCDConf_FlexColor_Template.h
?????文件????????7774??2018-01-21?21:34??emWin\Config\LCDConf_Lin_Template.c
?????文件????????2907??2016-09-30?15:49??emWin\Config\LCDConf_Lin_Template.h
?????文件????????2864??2016-09-30?15:49??emWin\Config\SIMConf.c
?????目錄???????????0??2018-01-21?21:21??emWin\Documentation\
?????文件????14348924??2016-09-30?15:50??emWin\Documentation\STemWin532.pdf
?????目錄???????????0??2018-01-21?21:21??emWin\Lib\
?????文件???????17180??2016-09-30?15:49??emWin\Lib\MCD-ST?Image?SW?License?Agreement?V2.pdf
?????文件?????6125690??2016-09-30?15:49??emWin\Lib\STemWin532_CM4_Keil.lib
?????目錄???????????0??2018-01-21?21:21??emWin\OS\
?????文件????????4620??2016-09-30?15:49??emWin\OS\GUI_X.c
?????文件????????5798??2016-09-30?15:49??emWin\OS\GUI_X_OS.c
?????文件???????47504??2016-09-30?15:50??emWin\Release_Notes.html
?????目錄???????????0??2018-01-21?21:21??emWin\Simulation\
?????文件??????111416??2016-09-30?15:49??emWin\Simulation\GUISim.lib
?????文件??????122638??2016-09-30?15:49??emWin\Simulation\SimulationMinGW.res
?????文件????????3407??2016-09-30?15:49??emWin\Simulation\WinMain.c
?????目錄???????????0??2018-01-21?21:21??emWin\Software\
?????文件??????315392??2016-09-30?15:50??emWin\Software\BmpCvtST.exe
?????文件??????897024??2016-09-30?15:50??emWin\Software\FontCvtST.exe
?????文件?????1122304??2016-09-30?15:50??emWin\Software\GUIBuilder.exe
?????文件???????81920??2016-09-30?15:50??emWin\Software\JPEG2Movie.exe
............此處省略118個(gè)文件信息
評(píng)論
共有 條評(píng)論