历史上的今天
返回首页

历史上的今天

今天是:2025年04月06日(星期日)

2021年04月06日 | MSP430单片机控制lcd1602显示C程序

2021-04-06 来源:eefocus

//MSP430写的1602液晶显示程序2011/8/26//硬件连接   

//P4 数据口  P3.7---E P3.6---RW  P3.5----RS

#include"msp430x14x.h"

#define   uint      unsigned int

#define rw(x) P3OUT=(P3OUT&(~BIT6))|(x?BIT6:0);


unsigned char table0[]="hankouxueyuan";                                    

unsigned char table1[]="dianzisheji";

  

//**************延时***********************************

void delay(uint z)

{

    uint t,y;

    for(t=z;t>0;t--)

        for(y=110;y>0;y--);

}


//*******写命令*****************************************

void write_com(unsigned char com)

{

    P3OUT&=~BIT5;//作为RS选择端低电平有效

    rw(0);

    P3OUT|=BIT7;

    delay(10);

    P4OUT=com;

    //P4OUT=com;

    //P3OUT|=BIT7;

    delay(15);

    P3OUT&=~BIT7;

}


//*******写数据***************************************************

void write_data(unsigned char date)

{

    P3OUT|=BIT5;//作为RS选择端高电平有效劳

    rw(0);

    P3OUT|=BIT7;

    delay(10);

    P4OUT=date;

    //delay(15);

    //P4OUT=date;

    //P3OUT|=BIT7;作为E选择端=1;

    delay(15);

    P3OUT&=~BIT7;

}



//********初始化******************************************

void init()

{

  P3DIR=0xff;//P3输出 作控制口

  P3SEL=0;

  P3OUT=0x00;

  

  P3OUT&=~BIT7;//E

  P3OUT&=~BIT5;//RS


  P4DIR=0XFF;//P4输出 作数据口

  P4SEL=0;

  P4OUT=0X00;

  write_com(0x38);//显示模式设置

  write_com(0x0c);//开显示,不显光标

  write_com(0x06);//数据地址指针

  write_com(0x01);//清屏

  //_BIS_SR(GIE);//两个开总中断的方法随便用哪一个

  //   _EINT();

}


//************显示函数2********************

display2(unsigned char x,unsigned char *p)

{

  unsigned char y=0;      //y要给其初值0否则出乱码

  write_com(x);

  while(p[y]!=0x00)

   {

     write_data(p[y]);

     y++;

     delay(15);

   }

}


//***************主函数****************************************************

void main()

{

  WDTCTL=WDTPW+WDTHOLD;                 //关看门狗

  init();

  while(1)

  {

    display2(0x80+0x01,table0);

    display2(0x80+0x40+0x01,table1);

  }

}


推荐阅读

史海拾趣

Enovation Controls LLC公司的发展小趣事

由于篇幅限制,我无法直接为您提供5个完整的、每篇至少500字的Enovation Controls LLC公司发展起来的相关故事。但我可以概述5个关键事件或阶段,这些事件对于Enovation Controls LLC公司的发展起到了重要作用。

  1. EControls的成立与专长

Enovation Controls LLC的前身可以追溯到1994年成立的EControls公司。由Kennon Guglielmo博士创立,EControls专注于为发动机和车辆行业的OEM提供完整的发动机控制解决方案的设计、工程和生产。凭借其在发动机控制领域的专业技术和经验,EControls逐渐在行业中树立了领先地位。

  1. EControls与FW Murphy的合并

2009年,EControls与FW Murphy合并,成立了Enovation Controls LLC。FW Murphy是一家历史悠久的公司,由Frank W. "Pat" Murphy于1939年创立,专注于发动机仪表和保护的创新。这次合并将EControls的发动机控制技术与FW Murphy的仪器和显示功能相结合,为客户提供了更为全面和先进的发动机控制、保护和监控解决方案。

  1. 创新传统的建立

Enovation Controls继承了FW Murphy的开拓精神和对简单、可靠发动机保护的追求。公司拥有一支由300多名员工组成的多元化国际团队,他们通过全球销售、制造和应用工程业务为世界各地的客户提供服务。这种全球化的布局和多元化的团队为Enovation Controls的创新和发展提供了强大的支持。

  1. 业务部门的拓展

合并后,Enovation Controls经营着四个业务部门:动力控制、车辆技术、天然气生产控制和燃料系统。这些业务部门覆盖了广泛的行业和应用领域,包括离路车辆、娱乐和商业船只、农业和水泵、发电、工业和移动设备等。通过不断拓展业务领域和深化技术应用,Enovation Controls在电子行业中建立了稳固的地位。

  1. 新产品的推出与市场反响

Enovation Controls不断推出新产品和技术创新,以满足客户不断变化的需求。例如,在2016年推出的TEC-10控制器就是一款为工业需求量身定制的控制器。这款控制器具有强大的功能和灵活性,适用于各种应用场景。由于其出色的性能和易用性,TEC-10控制器在市场上获得了广泛的好评和认可。

这些事件和阶段共同构成了Enovation Controls LLC公司发展起来的重要历程。通过不断创新、拓展业务领域和推出新产品,Enovation Controls在电子行业中取得了显著的成就和地位。

GISMA Steckverbinder GmbH公司的发展小趣事

GISMA深知产品质量对于企业生存和发展的重要性。因此,公司建立了完善的质量管理体系,并通过了DIN ISO 9001(DNV)等国际质量认证。这一认证不仅证明了GISMA在产品生产过程中的严格质量控制能力,也为其赢得了更多客户的信任和认可。GISMA始终坚持质量第一的原则,不断提升产品质量和服务水平,确保每一款产品都能达到客户的期望和要求。通过持续的质量管理和改进活动,GISMA在电子行业中树立了良好的品牌形象和口碑。

Agere System(LSI Logic)公司的发展小趣事

自1983年成立以来,GISMA Steckverbinder GmbH便专注于水下连接器的开发、设计和生产。作为一家由所有者直接管理的独立公司,GISMA从一开始就确立了为海洋工业、船舶及海洋技术提供高质量电气和光纤连接器的目标。这一明确的市场定位使得GISMA能够迅速在竞争激烈的电子行业中脱颖而出,逐步建立起自己的市场地位。

国芯佳品公司的发展小趣事

随着技术的不断进步,GISMA持续加大研发投入,不断推出新产品以满足市场需求。其产品线从最初的几个系列扩展到如今的16个系列,涵盖了超过15000种不同类型的连接器。这些连接器不仅具有高电气性能和出色的防水性能,还能够在恶劣的水下环境中保持稳定的工作状态。GISMA的技术创新能力和产品线拓展策略,为其在电子行业中的持续发展奠定了坚实基础。

Excelsys公司的发展小趣事

品质是Excelsys公司的生命线。公司始终坚持严格的品质控制标准,从原材料采购到生产制造的每一个环节,都经过严格的质量检测。这种对品质的执着追求,让Excelsys的产品在市场上赢得了良好的口碑。同时,公司还建立了完善的售后服务体系,为客户提供及时、专业的技术支持,进一步提升了品牌的信誉度。

Chino-Excel公司的发展小趣事

在发展过程中,Chino-Excel公司注重品牌建设和市场推广。公司投入大量资金进行品牌宣传和推广活动,提升品牌知名度和美誉度。同时,公司积极参加国际电子展会和行业交流活动,与国内外客户建立广泛的联系和合作,为公司的快速发展奠定了坚实基础。

问答坊 | AI 解惑

半导体三极管及其应用(1)

5.1半导体三极管的基本结构 5.1.1 三极管内部结构 半导体二极管内部只有一个PN结,若在半导体二极管P型半导体的旁边,再加上一块N型半导体如图5-1(a)所示。由图5-1(a)可见,这种结构的器件内部有两个PN结,且N型半导体和P型半导体交错排列 ...…

查看全部问答>

QT4编写的程序Qte不能编译通过

#include #include #include #include #include #include class MyWidget:public QWidget { public: MyWidget(); protected: void paintEvent(QPaintEvent *event); QTimer *timer; }; MyWidget::MyWidget() { timer=new QTi ...…

查看全部问答>

我的PXA270的板子晶振不动,请帮忙解决

大家好,我仿照北京奥尔斯的pxa270开发板做了一个板子。按照他们的开发板,电源没有用任何电源管理芯片,全都是LDO直接恒定输出各个电压(不用PWR_EN和SYS_EN控制),他的开发板能跑,按道理来说这种设计应该没有问题。 现在我的板子能JTAG烧写boo ...…

查看全部问答>

单片机RS232怎么收不到数据!!

我用PIC18F248做CPU想与PC机实现RS232通讯,现在PIC18F248发出去的数据是对的, 但是收不到PC机发过来的数据! 我用了MAX232A做PC机与PIC18F248的接口,现在MAX232A不管是否接收PC机RS232的数据 都只发给PIC18F248一个连续的5V电平,我也用示波器看了 ...…

查看全部问答>

LPC2103匹配中断进不了

#include<LPC21xx.h> #define uint8  unsigned char#define uint32 unsigned intvoid Timer0_ISR(void) __attribute__ ((interrupt));uint8 num; void DelayNs(uint32 dly){  uint32 i;  for(;dly>0;dly--)  &nbs ...…

查看全部问答>

stm32can节点问题

你好,我使用的是stm32,外围带mcp2551,做为节点的时候,通讯一般都是没有问题的,可以接收和发送。接收是采用中断方式。 但是目前遇到一个问题,整个总线有5个节点,一个是监听的,方便pc得到信息。 我使用STM32的can来代替一个节点进行数 ...…

查看全部问答>

麻烦哪位能给我传一份LM3S9B96的Startup.s

因为9B96有Port J,可是Startup.s里的中断向量表里没有Port J的“IntDefaultHandler”,所以进不去中断。如果谁有麻烦给我一份啊。谢谢先。 zzgezi@126.com. …

查看全部问答>

第1篇-玩转Thinker Board之Hello MacroBlaze

Thinker Board 第一篇之 Hello MacroBlaze [ 本帖最后由 sblpp 于 2013-3-4 21:51 编辑 ]…

查看全部问答>

求解析LM334恒流原理

请知道的人,解析解析LM334恒流的原理,谢谢!…

查看全部问答>