标题:
萌新求教,原理图如下,求一个键盘显示单片机程序的编程思路
[打印本页]
作者:
笑宇
时间:
2019-5-15 23:25
标题:
萌新求教,原理图如下,求一个键盘显示单片机程序的编程思路
想通过自己的能力制作出来
8255 d0-d7接51p0.0到p0.7 。矩阵键盘接p1口 。lcd1602 rs rw e接p3口 。373输入接p0.0到p0.7,输出q0 q0作为8255a0和a1地址,q7做8255cs地址 。 rd=P2^4; wr=P2^5;rest=P2^3; 373使能端c接p2.6 8255pc口接lcd显示求一个矩阵键盘显示程序,键盘上输入数字显示 数字就行。实在不行求一个能显示设定好的字符程序思路也行
J2JHMC(9E`9TBRSCCL5MTCQ.png
(67.8 KB, 下载次数: 56)
下载附件
2019-5-15 23:24 上传
作者:
笑宇
时间:
2019-5-16 08:57
#include<intrins.h>
#include<absacc.h>
#include <REGX51.H>
#define uchar unsigned char
#define uint unsigned int
#define PA XBYTE[0XFF7C]
#define PB XBYTE[0XFF7D]
#define PC XBYTE[0XFF7E]
#define COM XBYTE[0XFF7F]
sbit Lcden=P3^5;
sbit Lcdrs=P3^7;
sbit G=P2^6;
sbit rdl=P2^4;
sbit wrl=P2^5;
sbit rest1=P2^3;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com)
{
Lcdrs=0;
P0=com;
delay(5);
Lcden=1;
delay(5);
Lcden=0;
}
void write_dat(uchar dat)
{
Lcdrs=1;
P0=dat;
delay(5);
Lcden=1;
delay(5);
Lcden=0;
}
void init()
{
Lcden=0;
write_com(0x38);
write_com(0x0e);
write_com(0x06);
write_com(0x01);
write_com(0x80);
}
void main()
{
COM=0x80;
G=1;
rdl=1;
wrl=0;
rest1=0;
P0=0x22;
delay(5);
G=0;
delay(5);
init();
write_dat(0x42);
while(1);
}
自己编的但是测试发现pc口没有输出大佬看看有什么问题
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1