找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

萌新求教,原理图如下,求一个键盘显示单片机程序的编程思路

查看数: 1633 | 评论数: 1 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 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= ...

回复

ID:538309 发表于 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口没有输出大佬看看有什么问题

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表