基于msp430f149电子秤设计论文_附电路图(编辑修改稿)内容摘要:

void Write_Cmd(uchar cmd) { uchar lcdtemp = 0。 LCD_RS_L。 LCD_RW_H。 LCD_DataIn。 do //判忙 { LCD_EN_H。 _NOP()。 lcdtemp = LCD2MCU_Data。 LCD_EN_L。 } while(lcdtemp amp。 0x80)。 LCD_DataOut。 LCD_RW_L。 MCU2LCD_Data = cmd。 LCD_EN_H。 _NOP()。 LCD_EN_L。 } /******************************************* 函数名称: Write_Data 功 能:向液晶中写显示数据 参 数: dat显示数据 返回值 :无 ********************************************/ void Write_Data(uchar dat) { uchar lcdtemp = 0。 LCD_RS_L。 LCD_RW_H。 LCD_DataIn。 do //判忙 { LCD_EN_H。 _NOP()。 lcdtemp = LCD2MCU_Data。 LCD_EN_L。 } while(lcdtemp amp。 0x80)。 LCD_DataOut。 LCD_RS_H。 LCD_RW_L。 MCU2LCD_Data = dat。 LCD_EN_H。 _NOP()。 LCD_EN_L。 } /******************************************* 函数名称 : Ini_Lcd 功 能 : 初始化液晶模块 参 数 : 无 返回值 : 无 ********************************************/ void Ini_Lcd(void) { LCD_CMDOut。 //液晶控制端口设置为输出 Delay_Nms(500)。 Write_Cmd(0x30)。 //基本指令集 Delay_1ms()。 Write_Cmd(0x02)。 // 地址归位 Delay_1ms()。 Write_Cmd(0x0c)。 //整体显示打开 ,游标关闭 Delay_1ms()。 Write_Cmd(0x01)。 //清除显示 Delay_1ms()。 Write_Cmd(0x06)。 //游标右移 Delay_1ms()。 Write_Cmd(0x80)。 //设定显示的起始地址 } /******************************************* 函数名称 : Disp_HZ 功 能:控制液晶显示汉字 参 数: addr显示位置的首地址 pt指向显示数据的指针 num显示字符个数 返回值 :无 ********************************************/ void Disp_HZ(uchar addr,const uchar * pt,uchar num) { uchar i。 Write_Cmd(addr)。 for(i = 0。 i num。 i++) Write_Data(*(pt++))。 } /******************************************* 函数名称: Disp_WEI 功 能:控制液晶显示汉字 参 数: addr显示位置的首地址 pt指向显示数据的指针 num显示字符个数 返回值 :无 ********************************************/ void Disp_WEI(uchar addr,int c,char num) { uchar i。 Write_Cmd(addr)。 for(i = 0。 i num。 i++) Write_Data(c)。 } /***************************主函数 *************************/ void main( void ) { /*下面六行程序关闭所有的 IO 口 */ P1DIR = 0XFF。 P1OUT = 0XFF。 P2DIR = 0XFF。 P2OUT = 0XFF。 P3DIR = 0XFF。 P3OUT = 0XFF。 P4DIR。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。