-
大小: 17KB文件类型: .rar金币: 2下载: 0 次发布日期: 2021-05-29
- 语言: 其他
- 标签: MSP430F149 LCD12864 串口显示
资源简介
MSP430F149 LCD12864 串口显示

代码片段和文件信息
#include “msp430x14x.h“
#include“math.h“
typedef unsigned char INT8U;
typedef unsigned int INT16U;
typedef unsigned long int INT32U;
typedef float FT32S;
#define SENDCOMM 0XF8 //0XF1 000 写指令
#define READCOMM 0XFC //0XF1 100 读指令
#define SENDDATA 0XFA //0XF1 010 写数据
#define READDATA 0XFE //0XF1 110 读数据
#define E_CLK P4OUT |= BIT0; //E_CLK=P1^0;
#define NE_CLK P4OUT &=~BIT0;
#define RW_SID P4OUT |= BIT1; //RW_SID=P1^1;
#define NRW_SID P4OUT &=~BIT1;
#define RS_CS P4OUT |= BIT2; //RS_CS=P1^2;
#define NRS_CS P4OUT &=~BIT2;
INT8U String_1[]={“230:I LOVE YOU ! \0“};
INT8U String_2[]={“机会给有准备的人 \0“};
INT8U String_3[]={“ 行晓于言 \0“};
INT8U String_4[]={“Resolute Success\0“};
void DelayMs(volatile INT16U n)//延时(n)MS
{
//i = 50000; Delay 1s one number is 20uS
INT16U i=0;
while(n--)
{
for(i=571;i>0;i--);
}
}
void System_Clock()
{
INT8U i;
BCSCTL1 &=~XT2OFF; //使TX2有效
do
{
IFG1 &=~OFIFG; //清振荡器失效标志
for(i=0xff;i>0;i--);//延时待稳定
}
while((IFG1 & OFIFG));//若振荡器失效标志有效
BCSCTL2 =SELM_2 + SELS; //使MCLK和SMCLK=XT2
_EINT();
}
void LCD_send_byte(INT8U a)
{
INT8U i;
for(i=8;i>0;i--)
{
NE_CLK;
E_CLK;
if(a&(0x01<<(i-1))) //先发送高位
{
RW_SID;
}
else
{
NRW_SID;
}
NE_CLK;
}
}
INT8U LCD_read_byte(void)
{
INT8U idat=0;
P4DIR &=~0x02;//RW_SID输入
for(i=8;i>0;i--) //先读出高位
{
NE_CLK;
E_CLK;
if(P4IN&0x02)
{
dat |=(0x01<<(i-1));
}
NE_CLK;
}
P4DIR |=0x07;//RW_SID输出
return dat;
}
void RDBF(void)
{
INT8U readh=0readl=0bf=0;
while(1)
{
NRS_CS;
RS_CS;
LCD_send_byte(READCOMM);
readh=LCD_read_byte();
readl=LCD_read_byte();
NRS_CS;
readl=(readl>>4);
bf=((readh&0xf0)|(readl&0x0f));
if((bf&0x80)==0)
{
break;
}
}
}
void LCD_comm(INT8U comm)
{
INT8U temp1=0temp2=0;
RDBF();
RS_CS;
LCD_send_byte(SENDCOMM);
temp1=(comm & 0xf0);
LCD_send_byte(temp1);
temp2=(((comm&0x0f)<<4)&0xf0);
LCD_send_byte(temp2);
NRS_CS;
}
void LCD_data(INT8U lcd_data)
{
INT8U temp=0temp1=0;
RDBF();
RS_CS;
LCD_send_byte(SENDDATA);
temp=(lcd_data&0xf0);
LCD_send_byte(temp);
temp1=(lcd_data&0x0f)<<4;
LCD_send_byte(temp1);
NRS_CS;
}
void LCD_WriteStr(INT8U XINT8U Line INT8U *str)
{
INT8U addr;
if(Line==1)
addr=0x80;
else if(Line==2)
addr=0x90;
else if(Line==3)
addr=0x88;
else if(Line==4)
addr=0x98;
LCD_comm(addr+X);
while(*str != ‘\0‘)
{
LCD_data(*str++);
}
}
void LCD_init(void)
{
DelayMs(1);
P4OUT &=0xf8;
NRS_CS;NRS_CS;
LCD_comm(0x30); //功能设置,一次送8位数据,基本指令集
DelayMs(1);
//LCD_comm(0x30);//功能设置,一次送8位数据,基本指令集
//DelayMs(1);
LCD_comm(0x0c); //00001100 整体显示,游标off,游标位置off
DelayMs(1);
LCD_comm(0x01); //00000001 清DDRAM
Dela
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2741 2011-08-18 09:19 MSP43012864串口显示\12864串口显示.dep
文件 13407 2011-08-14 10:31 MSP43012864串口显示\12864串口显示.ewd
文件 45013 2011-08-14 10:31 MSP43012864串口显示\12864串口显示.ewp
文件 191 2011-08-14 10:31 MSP43012864串口显示\12864串口显示.eww
文件 2451 2011-08-18 08:47 MSP43012864串口显示\Debug\Exe\12864串口显示.txt
文件 166 2011-08-18 09:11 MSP43012864串口显示\Debug\Obj\12864串口显示.pbd
文件 25604 2011-08-18 09:11 MSP43012864串口显示\Debug\Obj\main.r43
文件 3576 2011-08-18 09:11 MSP43012864串口显示\main.c
文件 2523 2011-08-18 09:10 MSP43012864串口显示\settings\12864串口显示.cspy.bat
文件 63 2011-08-18 09:19 MSP43012864串口显示\settings\12864串口显示.dbgdt
文件 639 2011-08-18 09:19 MSP43012864串口显示\settings\12864串口显示.dni
文件 2905 2011-08-18 09:19 MSP43012864串口显示\settings\12864串口显示.wsdt
目录 0 2011-08-14 10:54 MSP43012864串口显示\Debug\Exe
目录 0 2011-08-14 09:50 MSP43012864串口显示\Debug\List
目录 0 2011-08-18 09:19 MSP43012864串口显示\Debug\Obj
目录 0 2011-08-14 09:50 MSP43012864串口显示\Debug
目录 0 2011-08-14 12:03 MSP43012864串口显示\settings
目录 0 2011-08-18 09:11 MSP43012864串口显示
----------- --------- ---------- ----- ----
99279 18
相关资源
- msp430F149操作红外接收模块源码
- [免费]msp430f149控制PS2键盘并用1602显示
- MSP430f149读sd FAT txt
- lcd12864的VHDL程序
- LCD12864滚动显示
- STM32 电子密码锁设计,LCD12864显示
- STM32 LCD12864并口驱动实验
- Lcd12864大时钟万年历 农历生肖温度
- LCD12864驱动程序 带字库版本ST7920内含
- LCD12864驱动程序 并口通信,带字库版
- STC89C52+LCD12864+18B20+1302万年历
- 初识畅学系列MSP430F149单片机开发板
- 带字库LCD12864ST7920的Proteus仿真
- STM32F103C8T6读取DS18B20串口显示程序.r
- DS18B20温度+DHT11湿度+LCD1602
- STM32F103C8T6读取DS18B20串口显示程序
- MSP430F149中文英文用户指南和英文数据
- LCD12864不带字库code
- 通过DS18B20检测环境温度,并在LCD128
- STM32+lcd12864串行方式显示贪吃蛇代码
- STM32 LCD12864 -Z小旋.zip
- LCD12864 在Spartan-3E实现教程和代码
- STM32测试ST7920 LCD12864串并简单程序
- LCD12864工作原理及应用
- MPU6050_DMP模式STM32(库函数版本)--串
- LCD12864B使用
- LCD12864打砖块游戏Verilog HDL语言实现,
- STM32 驱动 带字库LCD12864
- 基于Zigbee的烟雾传感器在串口显示
- LCD12864液晶中文手册
评论
共有 条评论