久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
LCD1602頭文件下載用于MSP430單片機
[打印本頁]
作者:
楊梓振
時間:
2017-7-14 08:45
標題:
LCD1602頭文件下載用于MSP430單片機
LCD1602頭文件的源代碼
0.png
(37.66 KB, 下載次數: 107)
下載附件
2017-7-14 16:47 上傳
LCD1602頭文件的MSP430單片機源程序如下:
/*********************************************************************
* 作者:Z_XXX
* 版本:v1.0(測試版本)
*************************************************************************/
#include<MSP430G2553.H>
#include <intrinsics.h>
#include<msp430.h>
#define RS_HIGH P2OUT|=BIT0
#define RS_LOW P2OUT&=~BIT0
#define RW_HIGH P2OUT|=BIT1
#define RW_LOW P2OUT&=~BIT1
#define E_HIGH P2OUT|=BIT2
#define E_LOW P2OUT&=~BIT2
#define Lcd_Data_Port P1OUT
void delay_nms(unsigned int n);
void delay_1ms(void);
void WaitForE();
void Lcd_Com(unsigned char CMD);
void Lcd_Clear();
void Init_Lcd();
void Lcd_Write_Data(unsigned char DATA);
void Init_Port();
void Lcd_XY(unsigned char x, unsigned char y );
void Lcd_en_write1(void);
void Lcd_en_write2(void);
void delay_nus(unsigned int n);
void delay_1us(void);
void Lcd_Write_StrSetXY(unsigned char x,unsigned char y,unsigned char *p);
void Lcd_Write_DataSetXY(unsigned char x,unsigned char y,unsigned char data);
void Lcd_Write_Str(unsigned char *p);
unsigned char sig[] = {"BOwen"};
unsigned char sig1[] = {"BOwen"};
unsigned char a = 'a';
/*****************************************************
* 說明:端口初始化
* P2.0 P2.1 P2.2
* RS RW E
* P1.7 P1.6 P1.5 P1.4
* DB7 DB6 DB5 DB4
* 返回值:空
*****************************************************/
void Init_Port()
{
P1DIR |= BIT7+BIT6+BIT5+BIT4; //設置P1口全部為輸出口
P2DIR |= BIT0+BIT1+BIT2;
delay_nms(50);
Lcd_Com(0x30);
delay_nms(50);
Lcd_Com(0x30);
delay_nms(5);
Lcd_Com(0x30);
delay_nms(500);
}
/*****************************************************
* 說明:LCD初始化
*****************************************************/
void Init_Lcd()
{
//Init_Port();
P1DIR |= BIT7+BIT6+BIT5+BIT4; //設置P1口全部為輸出口
P2DIR |= BIT0+BIT1+BIT2;
delay_nms(10);
Lcd_Com(0X28); //四位接口
delay_nms(50);
Lcd_Com(0X28);
delay_nms(50);
Lcd_Com(0X28);
delay_nms(50);
Lcd_en_write2();
delay_nms(50);
//WaitForE();
Lcd_Com(0X28);
delay_nms(500);
Lcd_Com(0x01);
Lcd_Com(0X0C);
Lcd_Com(0X06);
delay_nms(50);
}
/**************************************************
*說明:寫入指令
**************************************************/
void Lcd_Com(unsigned char CMD)
{
RS_LOW;
RW_LOW;
P1SEL = 0X00;
Lcd_en_write1();
Lcd_Data_Port &= 0X0F;
Lcd_Data_Port |= CMD&0XF0;
delay_nms(16);
Lcd_en_write2();
CMD = CMD<<4;
Lcd_en_write1();
Lcd_Data_Port &= 0X0F;
Lcd_Data_Port |= CMD&0XF0;
Lcd_en_write2();
//P2SEL
}
/***********************************************
* 說明:清屏操作
*************************************************/
void Lcd_Clear()
{
Lcd_Com(0X01);
}
/****************************************************
* 說明:設置顯示地址
*****************************************************/
void Lcd_XY(unsigned char x,unsigned char y)
{
unsigned char address;
if (y == 0) address = 0x80 + x;
else address = 0xC0 + x;
Lcd_Com(address);
}
/****************************************************************
* 說明:寫入數據
****************************************************************/
void Lcd_Write_Data(unsigned char DATA)
{
RS_HIGH;
RW_LOW;
P1SEL = 0X00;
Lcd_en_write1();
Lcd_Data_Port &= 0X0F;//清空高四位
Lcd_Data_Port |= DATA & 0XF0;//送入高四位
delay_nms(16);
Lcd_en_write2();
DATA = DATA<<4;
Lcd_en_write1();
Lcd_Data_Port &=0X0F;
Lcd_Data_Port |= DATA&0XF0;
Lcd_en_write2();
}
/*********************************************************************************
* 說明:寫入單個字符,X豎坐標,Y橫坐標
*******************************************************************************/
void Lcd_Write_DataSetXY(unsigned char x,unsigned char y,unsigned char data)
{
Lcd_XY(x,y);
delay_nms(20);
Lcd_Write_Data(data);
}
/******************************************************************************
* 說明:寫入字符串,不指定地址
****************************************************************************/
void Lcd_Write_Str(unsigned char *p)
{
while(*p)
{
Lcd_Write_Data(*p);
p++;
}
}
/***********************************************************************
* 說明:寫入字符串,x為1602豎坐標,y為橫坐標
************************************************************************/
void Lcd_Write_StrSetXY(unsigned char x,unsigned char y,unsigned char *p)
{
Lcd_XY(x,y);
while(*p)
{
Lcd_Write_Data(*p);
p++;
}
}
/*****************************************
*
* 1us延時函數
*
****************************************/
void delay_1us(void)
{
asm("nop");
}
/*****************************************
*
* N us延時函數
*
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
LCD1602頭文件.rar
(1.31 KB, 下載次數: 32)
2017-7-14 08:44 上傳
點擊文件名下載附件
頭文件
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
高清不卡毛片
|
日韩中文视频
|
久久精品91
|
激情一区二区三区
|
成人在线播放
|
偷拍亚洲色图
|
中文字幕一区二区三区精彩视频
|
亚洲成人午夜电影
|
欧美在线观看一区二区
|
一本久久a久久精品亚洲
|
中文字幕日韩欧美一区二区三区
|
国产线视频精品免费观看视频
|
久久日韩粉嫩一区二区三区
|
日本黄色片免费在线观看
|
国产粉嫩尤物极品99综合精品
|
国产精品乱码一区二三区小蝌蚪
|
中文字幕日韩一区
|
女女百合av大片一区二区三区九县
|
www.国产精
|
国产1区2区在线观看
|
美女国产一区
|
91视频在线看
|
成人在线视频网站
|
大象视频一区二区
|
四虎成人精品永久免费av九九
|
在线免费观看色
|
羞羞涩涩在线观看
|
九九在线视频
|
91免费在线
|
久久久久国产精品
|
国产精品久久久久久久久久99
|
日韩视频国产
|
日本久久黄色
|
91av在线影院
|
国产福利在线看
|
久久久久综合
|
国产美女一区二区三区
|
一区二区三区不卡视频
|
亚洲天堂av网
|
日韩国产在线
|
中文字幕乱码一区二区三区
|