历史上的今天
返回首页

历史上的今天

今天是:2025年03月23日(星期日)

正在发生

2021年03月23日 | 液晶12864(st7920控制器)MSP430f149驱动

2021-03-23 来源:eefocus

//mcumsp430f149//

//晶振内部dco//

//p43rs//

//p42r/w//

//p41e//

//p40rst//

//p30-p37db//

//===========================================================================//

#include

/*************************/

#defineUcharunsignedchar

#defineUintunsignedint

#defineUlongunsignedlong

Ucharbusy,hang,lie;

/********************************/

//定义字符串数组*/

/********************************/

charSTR2[]="http://www.qfmcu.com";;

charSTR3[]="http://www.mcubbs.net";;

/**************************定义函数原型********************************/

voidDelayus(Ulongilinshi);/*延时函数*/

voidBUSYLOOP();//*判忙函数*//

voidWrite_command(UcharCMD,Ucharbb);//*发控制字函数*//

voidWrite_data(UcharCMD);//*发数据函数*//

voidCHUSHIHUA();//*初始化函数*//

voidCLEAR();//*清屏*//

voidDisplay(Uchar*ptr,Ucharddram);//**显字符串函数**//

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

**************************************/

//voidDelayus(Ulongt)

//{Ulongi,j;

//for(i=0;i//for(j=0;j//;

//}

voidDelayus(Ulongilinshi)

{Ulongii;

for(ii=0;ii}

//*********************判忙函数************************//

voidBUSYLOOP()

{//P1=0x0ff;

//do{

//P4OUT&=0xf7;//RS=0;

//P4OUT|=0x04;//RW=1;

//P4OUT|=0x02;//E=1;

//busy=P3IN;//BUSY=P1;

//P4OUT&=0xfd;//E=0;

//}

//while(busy>0x7f);

Delayus(10);

}

//*********************写控制字函数****************************//

voidWrite_command(UcharCMD,Ucharbb)

{

if(bb)

{BUSYLOOP();}

P4OUT&=0xf7;//RS=0;

P4OUT&=0xfb;//RW=0;

P4OUT|=0x02;//E=1;

P3OUT=CMD;//P1=CMD;

Delayus(10);

P4OUT&=0xfd;//E=0;

}

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

voidWrite_data(UcharCMD)

{BUSYLOOP();

//Delayus(1000);

P4OUT|=0x08;//RS=1;

P4OUT&=0xfb;//RW=0;

P4OUT|=0x02;//E=1;

P3OUT=CMD;//P1=CMD;

Delayus(10);

P4OUT&=0xfd;//E=0;

}

/***************************清屏*************************************/

voidCLEAR()

{P4OUT&=0xf7;//RS=0;

P4OUT&=0xfb;//RW=0;

P4OUT|=0x02;//E=1;

P3OUT=0x01;//P1=0x01;

Delayus(10);

P4OUT&=0xfd;//E=0;

}

//*************************液晶初始化********************************//

voidCHUSHIHUA()

{

Delayus(40000);

Write_command(0x30,0);

Delayus(1500);

Write_command(0x30,0);

Delayus(400);

Write_command(0x0C,1);

Delayus(1500);

Write_command(0x01,1);

Delayus(15000);

Write_command(0x06,1);

}

/*=======================================================

显示字符串

=======================================================*/

voidDisplay(Uchar*ptr,Ucharddram)

{

Ucharl,i1,x;

l=0;

if(ddram<0x88)

{hang=0;}//定位行地址:第一行

elseif(ddram<0x90)

{hang=2;}//定位行地址:第三行

elseif(ddram<0x98)

{hang=1;}//定位行地址:第二行

else

{hang=3;}//定位行地址:第四行

lie=0x0f&ddram;//定位列地址

if(lie>0x07)

{lie=lie-0x08;}

x=lie*2;

Write_command(ddram,0);//定位显示起始地址

while((ptr[l])!="")

{l++;}

for(i1=0;i1{Write_data(ptr[i1]);//输出单个字符

x++;

if(x==0x10)

{x=0;

hang++;

switch(hang)

{

case0:Write_command(0x80,0);

break;

case1:Write_command(0x90,0);

break;

case2:Write_command(0x88,0);

break;

case3:Write_command(0x98,0);

}

if(hang>3)

{

Write_command(0x80,0);

hang=0;

}

}

}

}

/**************************主函数开始***********************************/

main()

{WDTCTL=WDTPW+WDTHOLD;//停止看门狗

DCOCTL=0XE0;//初始化时钟

BCSCTL1=0X86;

BCSCTL2=0X00;

P3DIR=0xff;

P3OUT=0x00;

P4DIR=0x0f;

P4OUT=0x00;

////////////////////////////////

CLEAR();

CHUSHIHUA();//初始化函数//

Display(STR2,0x80);//上面一行显示一个预定字符串

Display(STR3,0x88);

Delayus(200);

Write_command(0x9C,0);//将光标移到0x9C

Write_command(0x0f,0);//光标处反白闪烁

//write_command(0x08,0);//进入睡眠状态

//delayus(200);

//write_command(0x0C,0);//唤醒

while(1)

{;}

}

/*************************主函数结束*************************************/ 


推荐阅读

史海拾趣

ABL Heatsink公司的发展小趣事

早期,ABL Heatsink公司主要生产通用型散热器,但随着市场竞争的加剧,公司意识到必须调整市场定位。于是,公司开始专注于研发针对特定电子设备的高性能散热器。通过深入了解客户需求,ABL Heatsink成功开发出一系列定制化产品,赢得了市场的青睐。

全志(Allwinner)公司的发展小趣事

全志科技的起源可以追溯到赵广民创立炬力公司的时期。作为“MP3之父”,赵广民带领炬力在短短几年内实现了MP3芯片出货量的突破,年销售额和净利润均取得了惊人的增长。然而,炬力的股权结构问题最终导致了赵广民的离职。他随后创建了全胜微电子有限公司,并在不久后遭遇不幸去世。但赵广民的创业精神和市场洞察力为全志科技的诞生奠定了坚实的基础。

GAIA Converter Inc公司的发展小趣事

锋鸣电子(北京分公司)在成立初期便意识到供应链管理的重要性。公司通过与上游原材料供应商建立长期稳定的合作关系,确保原材料的稳定供应和成本控制。同时,公司还加强了对下游客户的沟通与服务,根据客户需求定制化生产,提升客户满意度。通过高效的供应链整合,锋鸣电子在激烈的市场竞争中保持了良好的竞争力,实现了业务的稳步增长。

HEIMANN公司的发展小趣事

在江苏扬州,一家名为锋鸣电子的公司于2008年成立,起初专注于电子元器件的代工生产。面对激烈的市场竞争,公司创始人李伟决定走技术创新之路。2012年,锋鸣电子成功研发出新一代高灵敏度蜂鸣器,该产品在噪音控制和响应速度上实现了显著突破,迅速获得了国内外市场的认可。此后,公司不断加大研发投入,逐步拓展产品线,成为电子蜂鸣器领域的佼佼者。

极海半导体(Geehy)公司的发展小趣事

位于广东东莞的锋鸣电子有限公司,自2010年成立以来,便明确了自己的市场定位——专注于汽车电子配件的研发与生产。随着汽车行业的快速发展,公司敏锐地捕捉到智能驾驶和车载娱乐系统对高质量电声器件的需求,迅速调整产品结构,推出了一系列符合市场需求的蜂鸣器、扬声器等产品。凭借精准的市场定位和优质的产品质量,锋鸣电子在汽车电子配件领域站稳了脚跟。

Excelsys公司的发展小趣事

在市场拓展方面,Excelsys公司采取了多元化的战略。除了深耕国内市场外,公司还积极开拓国际市场,与全球多家知名企业建立了长期稳定的合作关系。这些合作伙伴不仅为Excelsys提供了广阔的市场空间,还带来了先进的技术和管理经验,推动了公司的快速发展。

问答坊 | AI 解惑

求助,做FPGA板子

需要自己动手做一个板子实现基带调制,初步选定的芯片是EP2C8Q208C8,输入从RS232进,输出接一个D/A就好。 找到了这个芯片的开发板原理图。可因为以前从没做过,看着那么多图不知道从何下手。觉得只是实现要求的功能话不需 要像那上面一样把那些 ...…

查看全部问答>

史上最全的电子基础知识资料继续更新了喽.......

本帖最后由 jameswangsynnex 于 2015-3-3 19:58 编辑 你知道各种电阻的型号是如何命名的嘛?你了解湿敏电阻、光敏电阻、气敏电阻、力敏电阻的特性和区别嘛?你对电容器的标称电容量和允许偏差等主要参数是否已经非常熟悉了,那你知道他们在不同电路上 ...…

查看全部问答>

电子自制

本帖最后由 paulhyde 于 2014-9-15 09:18 编辑 不看后悔  …

查看全部问答>

飞思卡尔MCF5307 I2C例程

这是从网上看到的别人写的一个demo是针对freescale coldfire v3系列的最基本款mcf5307的 大家可以参考 …

查看全部问答>

如何关闭自动搜索无线网络功能

wince的无线网络搜索连接对话框中,有一个\"新的无线网络可用时通知我\"的复选框,用它能够设置是否自动搜索无线网络. 由于刚功能打开会使系统反应变慢,想通过API来能实现关闭该功能,要用什么API.…

查看全部问答>

求助高手关于wince下对excel的操作

RT,目前要吧windows上的一个程序移植到wince上去,其他功能都实现了,唯独关于excel部分有些错误 windows上的方法是AfxOleInit()之后就用CWorksheet、CWorkBook.....这几个类操作,在windows上运行没有错误 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...…

查看全部问答>

[原创]豆皮跑马灯之C++版,采用自己编写的全新的C++库。

项目说明:豆皮跑马灯之C++版库文件:采用全新自家编写的C++库,弃用st提供的标准C库。编译环境:IAR 5.30本项目和库文件完全开源,欢迎大家一起交流。程序说明:           &nb ...…

查看全部问答>

工程文件

    初学Cortex-M0,编译环境是TKStudio,用的是周公的工程文件,里面许多的代码不是很明白。 请教下,如果自己新建项目的话,最少加载几个文件编译就可通过,调用中断也行, 不知哪位高手有模板,谢谢…

查看全部问答>

跪求,microblaze的库说明

RT,最近弄这东西了,上官网,看,找了半天没找到…

查看全部问答>