|
CPU:STMF103RCT6
顯示屏:4引腳的OLED(GND、VCC、SCL、SDA)
功能:RTC時鐘實時顯示
主要程序:
//-----------------OLED IIC端口定義----------------
#define OLED_SCLK_Clr() GPIO_ResetBits(GPIOA,GPIO_Pin_11)//CLK
#define OLED_SCLK_Set() GPIO_SetBits(GPIOA,GPIO_Pin_11)
#define OLED_SDIN_Clr() GPIO_ResetBits(GPIOA,GPIO_Pin_9)//DIN
#define OLED_SDIN_Set() GPIO_SetBits(GPIOA,GPIO_Pin_9)
#define OLED_RST_Clr() GPIO_ResetBits(GPIOB,GPIO_Pin_11)//RES
#define OLED_RST_Set() GPIO_SetBits(GPIOB,GPIO_Pin_11)
#define OLED_CMD 0 //寫命令
#define OLED_DATA 1 //寫數據
//端口引腳可以跟據自己選擇
/初始化SSD1306
void OLED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能A端口時鐘
//GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_11;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽輸出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//速度50MHz
GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化GPIOD3,6
//GPIO_SetBits(GPIOB,GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_15);
GPIO_SetBits(GPIOA,GPIO_Pin_9|GPIO_Pin_11);
delay_ms(200);
/*省略部分代碼*/
}
根據自己的引腳配置一下初始化的設置,其余的就用提供的庫就好,根據自己的需求多調試調試
|
-
-
B-RTC實時實驗.7z
2019-12-19 23:09 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
308.51 KB, 下載次數: 98, 下載積分: 黑幣 -5
完整程序
|