LCD1602驅動顯示實驗STM32
/*********************************************************************
*名 稱:LCD_Writedata()
*功 能:寫一字節數據到LCD1602
*入口參數:dat:無符號字節類型,0~255 包括各個ASCII碼字符
*出口參數:無
*********************************************************************/
void LCD_Writedata(uchar dat)
{
while(LCD_busy());//等待LCD1602空閑
LCD_RS_1;
delay_nus(1);
LCD_RW_0;
delay_nus(1);
DATAOUT = dat;
LCD_EN_1; //先拉高
delay_nus(300); //很重要的延時,經調試,延時300us以上才可以
LCD_EN_0; //下降沿,開始寫入有效數據
}
/*********************************************************************
*名 稱:LCD_pos()
*功 能:設定顯示位置
*入口參數:pos:顯示位置,值的范圍如下:
* 0x00----------------0x0f 0x10-------0x27 第一行(一次顯示16個字符)
* 0x40----------------0x4f 0x50-------0x67 第二行
*出口參數:無
*********************************************************************/
void LCD_pos(uchar pos)
{
LCD_Writecmd(pos | 0x80);
}
/*********************************************************************
*名 稱:LCD_Setpos()
*功 能:根據習慣設定顯示位置
*入口參數:row:行,row=1表示第一行,row=2表示第二行
* col:列,0~15,用于指定顯示的列,范圍可以是0~40
*出口參數:無
*********************************************************************/
void LCD_Setpos(uchar row,uchar col)
{
if(row==1) LCD_Writecmd(col | 0x80);
else LCD_Writecmd(col | 0xC0);
}
/*********************************************************************
*功 能:顯示一個字符
*入 口:ch:待顯示的字符
*********************************************************************/
void LCD_DispChar(char ch)
{
LCD_Writedata(ch);
}
/*********************************************************************
*功 能:在指定位置顯示一個字符
*入 口:row:行 1或2 col:列,0~15
* ch:待顯示的字符
*********************************************************************/
void LCD_Setpos_DispChar(uchar row,uchar col,char ch)
{
LCD_Setpos(row,col);
LCD_Writedata(ch);
}
/*********************************************************************
*名 稱:LCD_DispString()
*功 能:使LCD1602顯示一個字符串,顯示位置需提前設定
*入口參數:str[]:待顯示的字符串
*出口參數:無
*********************************************************************/
void LCD_DispString(char str[])
{
uchar i=0;
while(str[i] != 主站蜘蛛池模板: 鹿邑县| 阿勒泰市| 巴东县| 若羌县| 通江县| 图们市| 巍山| 泗阳县| 丰原市| 商城县| 祥云县| 阿城市| 锡林郭勒盟| 罗城| 林口县| 黄山市| 泗水县| 涡阳县| 河曲县| 萝北县| 泽州县| 阜新| 彩票| 呼图壁县| 郑州市| 井陉县| 沙雅县| 临沂市| 包头市| 昭觉县| 贺州市| 繁峙县| 江油市| 定陶县| 崇义县| 海淀区| 湖南省| 德惠市| 黄石市| 惠东县| 堆龙德庆县|