硬體連線:
pa5 scl
pa7 sda
/*
@brief 初始化oled與微控制器的io介面
@param 無
@retval 無
*/static
void
oled_gpio_init
(void
)
/*
@brief 模擬iic起始訊號
@param 無
@retval 無
*/static
void
oled_iic_start
(void)/*
@brief 模擬iic停止訊號
@param 無
@retval 無
*/static
void
oled_iic_stop
(void)/*
@brief 模擬iic讀取從機應答訊號
@param 無
@retval 無
*/static
unsigned
char
iic_wait_ack
(void)/*
@brief iic寫入乙個位元組
@param iic_byte:寫入的位元組
@retval 無
*/static
void
write_iic_byte
(unsigned
char iic_byte)
oled_sclk_clr()
;//時鐘線置低
delay(1
);//延遲1us
while
(iic_wait_ack()
);//從機應答}/*
@brief iic寫入命令
@param iic_command:寫入的命令
@retval 無
*/static
void
write_iic_command
(unsigned
char iic_command)
/* @brief iic寫入資料
@param iic_data:資料
@retval 無
*/static
void
write_iic_data
(unsigned
char iic_data)
/*
@brief 對oled寫入乙個位元組
@param dat:資料
cmd:1,寫誒資料;0,寫入命令
@retval 無
*/void
oled_wr_byte
(unsigned
char dat,
unsigned
char cmd)
else}/*
@brief 設定資料寫入的起始行、列
@retval 無
*/void
oled_set_pos
(unsigned
char x,
unsigned
char y)
/* @brief 開顯示
@param 無
@retval 無
*/void
oled_display_on
(void)/*
@brief 關顯示
@param 無
@retval 無
*/void
oled_display_off
(void)/*
@brief 清屏
@param 無
@retval 無
*/void
oled_clear
(void)}
/* @brief 顯示乙個字元
@param x:起始列
y:起始頁,size = 16佔兩頁;size = 12佔1頁
chr:字元
@retval 無
*/void
oled_showchar
(unsigned
char x,
unsigned
char y,
unsigned
char chr)
//如果列數超出了範圍,就從下2頁的第0列開始
if(size ==16)
//字元大小如果為 16 = 8*16
else
//字元大小為 6 = 6*8}/*
@brief 顯示字串
@param x:起始列
y:起始頁
@retval 無
*/void
oled_showstring
(unsigned
char x,
unsigned
char y,
unsigned
char
*chr)
//如果x大於等於128,切換頁,從該頁的第一列顯示
j++;//下乙個字元}}
/* @brief 顯示中文
@param x:起始列;乙個字型佔16列
y:起始頁;乙個字型佔兩頁
no:字型的序號
@retval 無
*/void
oled_showchinese
(unsigned
char x,
unsigned
char y,
unsigned
char no)
oled_set_pos
(x,y+1)
;//畫第二頁
for(t=
0;t<
16;t++
)//迴圈16次,畫第二頁的16列}/*
@brief oled初始化函式
@param 無
@retval 無
*/void
oled_init
(void
)
int
main
(void
)}
北郵08複試模擬problem B
第二題 統計字母 submit 4279 accepted 1257 time limit 1000ms memory limit 65535k description 給定乙個只有小寫英文本母組成的字串,串長為n。請你編寫程式求出這個字串中出現次數最多的字母。input 輸入的第一行為t 0 t ...
北郵08複試模擬problem C
第三題 二叉樹前序遍歷 submit 2541 accepted 674 time limit 1000ms memory limit 65535k description 給定一棵有n個結點的二叉樹,結點的編號為0 n 1。請你編寫程式輸出二叉樹的前序遍歷序列。input 輸入的第一行是乙個正整數...
Redis 08 模擬登入案例
使用者在2分鐘內,僅允許輸入錯誤密碼5次。如果超過次數,限制其登入1小時。12306 登入錯誤次數key user logincount fail 使用者名稱 鎖定限制登入key user logintime lock 使用者名稱 執行登入功能時 1判斷當前登入的使用者是否被限制登入 1.1如果沒有...