久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2485|回復: 1
收起左側

stm32用spi方式控制oled

[復制鏈接]
ID:573864 發表于 2019-7-24 10:40 | 顯示全部樓層 |閱讀模式
  1. SPI.h
復制代碼
  1. SPI.c
  2. /*函數功能: GPIO模擬SPI端口初始化                                         */
  3. /*************************************************************************/
  4. void OLED_SPI_Init(void)
  5. {
  6.         GPIO_InitTypeDef GPIO_InitStructure;
  7.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA ,ENABLE);//使能PA端口時鐘
  8.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4; //端口配置
  9.         GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽輸出
  10.         GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//IO口速度為50MHz
  11.         GPIO_Init(GPIOA,&GPIO_InitStructure);//根據設定參數初始化GPIOA
  12. }

  13. /*************************************************************************/
  14. /*函數功能: 通過SPIO軟件模擬SPI通信協議,向模塊(SSD1306)寫入一個字節                                  */
  15. /*入口參數:                                                                                                                                                                                                                                                         */       
  16. /*                                                data:要寫入的數據/命令                                                                                                                                                 */                               
  17. /*                                                cmd :數據/命令標志 0,表示命令;1,表示數據;                   */
  18. /*************************************************************************/
  19. void SPI_WriteByte(unsigned char data,unsigned char cmd)
  20. {
  21.         unsigned char i=0;
  22.         OLED_DC =cmd;
  23.         OLED_CLK=0;
  24.         for(i=0;i<8;i++)
  25.         {
  26.                 OLED_CLK=0;
  27.                 if(data&0x80)OLED_MOSI=1; //從高位到低位
  28.                 else OLED_MOSI=0;
  29.                 OLED_CLK=1;
  30.                 data<<=1;
  31.         }
  32.         OLED_CLK=1;
  33.         OLED_DC=1;
  34. }
  35. /*************************************************************************/
  36. /*函數功能: 寫命令                                                        */
  37. /*************************************************************************/
  38. void WriteCmd(unsigned char cmd)
  39. {
  40.         SPI_WriteByte(cmd,OLED_CMD);
  41. }
  42. /*************************************************************************/
  43. /*函數功能: 寫數據                                                        */
  44. /*************************************************************************/
  45. void WriteData(unsigned char data)
  46. {
  47.         SPI_WriteByte(data,OLED_DATA);
  48. }
復制代碼



20170607180030742.jpg

OLED.rar

9.34 KB, 下載次數: 14, 下載積分: 黑幣 -5

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:573864 發表于 2019-7-24 10:41 | 顯示全部樓層
Spi.h
#define OLED_CMD 0   //命令聲明
#define OLED_DATA 1 //數據聲明

#define OLED_CLK         PAout(4)        // CLK時鐘         d0
#define OLED_MOSI         PAout(3)        // MOSI                d1
#define OLED_RST         PAout(2)        // RET復位        ret
#define OLED_DC          PAout(1)        // 命令|數據        dc        (0表傳輸命令1表傳輸數據)

void OLED_SPI_Init(void); //配置MCU的SPI
void SPI_WriteByte(uint8_t addr,uint8_t data); //向寄存器地址寫一個byte的數據
void WriteCmd(unsigned char cmd); //寫命令
void WriteDat(unsigned char data); //寫數據

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 夜夜操天天 | 国产欧美日韩在线 | 国产激情久久 | 日韩欧美国产精品 | 97av在线| 黄色av毛片 | 久久伊人网站 | 欧美特黄视频 | 久久国产一区 | 精品国产99久久久久久宅男i | 成人午夜毛片 | 激情网站在线观看 | 亚洲第一黄色 | 日韩亚洲欧美在线观看 | 欧美做受 | 日韩欧美中文字幕在线观看 | 欧美精品久久久久久久 | 国产区视频在线观看 | 亚洲区一区二 | 亚洲第一天堂网 | 男男成人高潮片免费网站 | 一区二区三区在线播放 | 日韩亚洲欧美在线 | 天天操天天操 | 成人免费看片98欧美 | 国产主播一区二区 | 欧美一级色 | 国产黄a三级三级看三级 | 亚洲欧美日韩一区二区三区四区 | 久久久精品 | 天天射天天舔 | 国产精品一区在线播放 | 欧美精品在线看 | 秋霞一区二区 | 亚洲久久久久 | 国产在线观看一区二区三区 | 国产精品久久久久久久成人午夜 | 日本成人免费网站 | 欧美精品一区二区三区四区 | 一区二区三区四区在线视频 | 看国产毛片 |