导航:首页 > 操作系统 > 51单片机12864

51单片机12864

发布时间:2025-02-20 05:02:16

⑴ 51单片机控制12864液晶屏串行通信时序图与程序

clk=0;clk=1;clk=0;这是一个完整的CLK时钟周期,看图SCLK。
延时并没有实际的意义,主要功能是让电平保持一段时间供识别的,一般微秒级的延时就够了。
同步时钟信号,就是前面讲的clk=0;clk=1;clk=0;这样来实现的,只不过程序中是用的循环,8次循环,正好是可以传输8bit的数据。

⑵ 51单片机+GSM模块+12864显示屏可以自制通话手机吗

当然可以!用单片机通过串口发送指令就可以控制GSM模块拨打电话,还可以接听! 然后通过连接在单片机的矩阵键盘可进行拨号等操作!12864可显示拨打的号码,还可以显示单片机读取的短信等!

⑶ 51单片机12864lcd显示汉字

会用1602显示英文,就可以用12864lcd显示汉字,二者区别就在于,显示汉字要送两个字节的代码,其中首个字节的值要大于128,而ASCI码的值均小于128。
汉字的机器码不用计算,编译器会自动编译,例如
unsigned char code table[]={ "我爱单片机"“hello” };
显示时,只要先送显示的首地址即可,然后送数组里的内容即可
write_LCD_command(0x88);//第2 行首地址
for(i=0;i<16;i++)
{
write_LCD_data(tab[i]);
delay(5000);
}

⑷ 五一单片机控制12864液晶背光的问题。

如果不带PWM也可以用电位器,直接接在原来接p1.4的那条线,去掉三极管和电阻,直接用电位器提供调节。(其实你完全可以为了PWM而换单片机,换完了是一劳永逸,以后还多了ADC可以自动调节背光,可以唱出美妙的音乐,而不再是用方波输出的难听的音乐了)

如果单片机是带PWM的话就好办了,AT89S51当然不带,但是STC12C5A60S2就完全可以带替他,他是51系列单片机拓展型。(PWM不知道可以问我,完整程序我也有)

这样可以通过PWM来控制背光亮度(相当于能让单片机输出模拟信号,而不再只有高低两种电平)编程如下(在利用光敏电阻判断是否到晚上了,主程序就自己编吧):

sbitLED=P1^4;//液晶屏背光定义(PWM控制,不能更改)

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

函数名:PWM初始化函数(控制背光亮度)

调用:PWM_init();

参数:无

返回值:无

结果:将PCA初始化为PWM模式,初始占空比为0

备注:需要更多路PWM输出直接插入CCAPnH和CCAPnL即可

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

voidPWM_init(void){

CMOD=0x02;//设置PCA定时器

CL=0x00;

CH=0x00;

CCAPM1=0x42;//PWM1设置PCA工作方式为PWM方式(使用时删除//)

CCAP1L=0x00;//设置PWM1初始值与CCAP0H相同

CCAP1H=0x00;//PWM1初始时为0

CR=1;//启动PCA定时器

}

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

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

函数名:PWM1占空比设置函数(控制背光亮度)

调用:PWM1_set();

参数:0x00~0xFF(亦可用0~255)

返回值:无

结果:设置PWM模式占空比,为0时全部高电平,为1时全部低电平

备注:如果需要PWM1的设置函数,只要把CCAP0L和CCAP0H中的0改为1即可

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

voidPWM1_set(unsignedchara){

CCAP1L=a;//设置值直接写入CCAP0L

CCAP1H=a;//设置值直接写入CCAP0H

}

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

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

函数名:8位A/D转换初始化

调用:Read_init(?);

参数:输入的端口(00000XXX其中XXX是设置输入端口号,可用十进制0~7表示,0表示P1.0,7表示P1.7)

返回值:无

结果:

备注:适用于STC12C5A60S2单片机

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

voidRead_init(unsignedcharCHA){

unsignedcharAD_FIN=0;//存储A/D转换标志

CHA&=0x07;//选择ADC的8个接口中的一个(00000111清0高5位)

ADC_CONTR=0x40;//ADC转换的速度(0XX00000其中XX控制速度,请根据数据手册设置)

_nop_();

ADC_CONTR|=CHA;//选择A/D当前通道

_nop_();

ADC_CONTR|=0x80;//启动A/D电源

DELAY_MS(1);//使输入电压达到稳定(1ms即可)

}

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

函数名:8位A/D转换函数(采集光敏电阻数据)

调用:?=Read();

参数:无

返回值:8位的ADC数据

结果:读出指定ADC接口的A/D转换值,并返回数值

备注:适用于STC12C5A60S2单片机

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

unsignedcharRead(void){

unsignedcharAD_FIN=0;//存储A/D转换标志

ADC_CONTR|=0x08;//启动A/D转换(00001000令ADCS=1)

_nop_();

_nop_();

_nop_();

_nop_();

while(AD_FIN==0){//等待A/D转换结束

AD_FIN=(ADC_CONTR&0x10);//00010000测试A/D转换结束否

}

ADC_CONTR&=0xE7;//11110111清ADC_FLAG位,关闭A/D转换,

return(ADC_RES);//返回A/D转换结果(8位)

}

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

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

函数名:自动背光检测程序

调用:AUTO_B();

参数:无

返回值:无

结果:检测环境光并控制背光亮度

备注:

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

voidAUTO_B(void){//

unsignedchard;

d=Read();

if(read_clock(0xc1)==1){//检查自动调光开关

if(d>0xD0){//

PWM1_set(1);//

}else{

PWM1_set(read_clock(0xc5)*0x1C);//

}

}

}

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

阅读全文

与51单片机12864相关的资料

热点内容
程序员放弃后会怎样 浏览:182
河北模具编程 浏览:187
adb查找命令 浏览:321
安卓手机视频文件夹怎么打开 浏览:309
平板加密手机后怎么关闭 浏览:566
流媒体服务器应该注意什么 浏览:536
d8命令编译 浏览:964
压缩包解压需要多少空间 浏览:145
如何查找app属性 浏览:388
android人脸识别技术 浏览:320
pc104编程 浏览:335
二维码反编译破解推广 浏览:682
修改服务器的mac地址 浏览:528
好玩的编程软件 浏览:899
编程语言创始人有钱吗 浏览:804
短视频app怎么获客 浏览:15
查看云服务器的应用 浏览:435
javadump工具 浏览:564
程序员16g 浏览:444
程序员没有办法成为top怎么办 浏览:218