毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 计算机安全 >> 正文

基于EasyARM1138的城市公交路线智能查询机 第6页

更新时间:2014-6-29:  来源:毕业论文

基于EasyARM1138的城市公交路线智能查询机 第6页
SysCtlPeriEnable(LCD_PERI); /* 使能相应的GPIO */
GPIOPinTypeOut(LCD_CS_BASE_PIN); /* 设置相应的控制管脚为输出 */
GPIOPinTypeOut(LCD_WR_BASE_PIN); /* 设置相应的控制管脚为输出 */
GPIOPinTypeOut(LCD_RS_BASE_PIN); /* 设置相应的控制管脚为输出 */
GPIOPinTypeOut(LCD_RD_BASE_PIN); /* 设置相应的控制管脚为输出 */
GPIOPinTypeOut(LCD_RST_BASE_PIN); /* 设置相应的控制管脚为输出 */
GPIOPinTypeOut(DATA_PORT_BASE_PIN); /* 设置相应的数据管脚为输出 */
LCD_RS = 0xFF; /* 初始化输出为高电平 */
LCD_CS = 0xFF; /* 初始化输出为高电平 */
LCD_WR = 0xFF;; /* 初始化输出为高电平 */
LCD_RD = 0xFF; /* 初始化输出为高电平 */
LCD_RST = 0xFF; /* 初始化输出为高电平 */
DATA_PORT = 0xFF;
LCD_RST = 0x00; /* 拉低复位引脚 */
SysCtlDelay(10 * SysCtlClockGet( ) / 3000);
LCD_RST = 0xFF; /* 拉高复位引脚 */
SysCtlDelay(10 * SysCtlClockGet( ) / 3000);
}
4.2.2  TFT-LCD底层驱动编写
向地址宽度为8位、数据宽度为8位的寄存器读写操作的常见时序如图4-3所示


图4-3 地址宽度为8位、数据宽度为8位的寄存器读写时序图

根据图4-2的时序图可知,对地址宽度为8位、数据宽度为8位的寄存器的操作只需三个函数,即“8位地址函数”、“8位数据写函数”和“8位数据读函数”,这个三个函数分别如程序清单4.3所示。

程序清单4.3 地址宽度为8位、数据宽度为8位的寄存器基本操作函数
void __writeRegAddr8(uchar ucAddr) /* 写8位寄存器地址函数 */
{
LCD_CS = 0x00; /* 拉低CS */
LCD_RS = 0x00; /* 拉低RS */
DATA_PORT = ucAddr; /* 写地址数据 */
LCD_WR = 0x00; /* 拉低WR */
LCD_WR = 0xFF; /* 拉高WR */
LCD_CS = 0xFF; /* 拉高CS */
}
void __writeData8(uchar pd) /* 写8位数据函数 */
{
LCD_CS = 0x00; /* 拉低CS */
LCD_RS = 0xFF; /* 拉高RS */
DATA_PORT = pd; /* 写数据 */
LCD_WR = 0x00; /* 拉低WR */
LCD_WR = 0xFF; /* 拉高WR */
LCD_CS = 0xFF; /* 拉高CS */
}
unsigned char __readData8(void)
{
unsigned char ucReturn = 0;
GPIOPinTypeIn(DATA_PORT_BASE_PIN); /* 设置为输入端口 */
LCD_CS = 0x00; /* 拉低CS */
LCD_RS = 0xFF; /* 拉高RS */
LCD_RD = 0x00; /* 拉低RD */
LCD_RD = 0xFF; /* 拉高RD */
ucReturn = DATA_PORT; /* 读入数据 */
LCD_CS = 0xFF; /* 拉高CS */
GPIOPinTypeOut(DATA_PORT_BASE_PIN); /* 还原为输出端口 */
return ucReturn; /* 返回结果 */
}
向地址宽度为16位、数据宽度为16位的寄存器读操作的常见时序如图4-4所示,写操作时序如图4.5所示。

图4-4 地址宽度位16位、数据宽度位16位的寄存器读时序图

图4-5 地址宽度位16位、数据宽度位16位的寄存器写时序图

分析图4.3和图4.4可知,对地址宽度为16位、数据宽度为16位的寄存器的读写操作也只需要三个函数即可,这三个函数分别为“16位地址写函数”、“16位数据读函数”、“16位数据写函数”,如清单4.4所示。

程序清单4.4 地址宽度为16位、数据宽度为16位的寄存器基本操作函数
// 16位地址写函数
void __writeRegAddr16(unsigned int uiAddr)
{
LCD_CS = 0x00; /* 拉低CS */
LCD_RS = 0x00; /* 拉低RS */
DATA_PORT = (unsigned char)(uiAddr >> 8); /* 写地址高8位数据 */
LCD_WR = 0x00; /* 拉低WR */
LCD_WR = 0xFF; /* 拉高WR */
DATA_PORT = (unsigned char)uiAddr; /* 写地址低8位数据 */
LCD_WR = 0x00; /* 拉低WR */
LCD_WR = 0xFF; /* 拉高WR */
//LCD_RS = 0xFF; /* 拉高RS */
LCD_CS = 0xFF; /* 拉高CS */
}
// 16位数据读函数
unsigned int __readRegData16(void)

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

基于EasyARM1138的城市公交路线智能查询机 第6页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。