根据STC89C52芯片在其显示屏上显示单片机和123给出具体的全部代码
由于具体显示屏型号未知,以下代码仅提供基本思路,需要根据具体情况进行调整:
#include <reg52.h> //头文件,包含STC89C52芯片的寄存器定义
sbit LCD_RS=P2^0; //定义LCD1602的RS、RW、EN端口
sbit LCD_RW=P2^1;
sbit LCD_EN=P2^2;
void delay(unsigned int i) //延时函数,用于控制LCD的数据传输速度
{
while(i--);
}
void write_com(unsigned char com) //向LCD发送指令
{
LCD_RS=0; //将RS置为0,表示发送的是指令
LCD_RW=0; //将RW置为0,表示向LCD写入数据
LCD_EN=1; //将EN置为1,表示开始传输数据
P0=com; //将指令数据写入P0口
delay(100); //延时等待传输完成
LCD_EN=0; //将EN置为0,表示传输结束
}
void write_data(unsigned char dat) //向LCD发送数据
{
LCD_RS=1; //将RS置为1,表示发送的是数据
LCD_RW=0; //将RW置为0,表示向LCD写入数据
LCD_EN=1; //将EN置为1,表示开始传输数据
P0=dat; //将数据写入P0口
delay(100); //延时等待传输完成
LCD_EN=0; //将EN置为0,表示传输结束
}
void init_lcd() //初始化LCD显示屏
{
write_com(0x38); //设置显示模式
write_com(0x0c); //显示开、光标关、光标闪烁关
write_com(0x06); //光标右移
write_com(0x01); //清屏
}
void main() //主函数
{
init_lcd(); //初始化LCD显示屏
write_data('S'); //向LCD发送数据:S
write_data('T'); //向LCD发送数据:T
write_data('C'); //向LCD发送数据:C
write_data('8'); //向LCD发送数据:8
write_data('9'); //向LCD发送数据:9
write_data('C'); //向LCD发送数据:C
write_data('5'); //向LCD发送数据:5
write_data('2'); //向LCD发送数据:2
write_com(0xc0); //将光标移动到第二行第一列
write_data('1'); //向LCD发送数据:1
write_data('2'); //向LCD发送数据:2
write_data('3'); //向LCD发送数据:3
}
``
原文地址: https://www.cveoy.top/t/topic/huMp 著作权归作者所有。请勿转载和采集!