求射频卡RC522程序用51单片机驱动1602显示卡的信息的程序

求射频卡RC522程序用51单片机驱动1602显示卡的信息的程序,第1张

#include "LCD1602.H"

#include <reg52.H>

sbit lcdrs=P2^5//命令/数据

sbit lcdrw=P2^6//读/写

sbit lcden=P2^7 //使能端

static void delay(uchar zz)

{

uchar a,b

for(a=zza>0a--)

for(b=35b>0b--)

}

void WriteData(uchar x) //写数据

{

lcden=0

lcdrs=1

lcdrw=0

P0=x

delay(10)

lcden=1

delay(10)

lcden=0

lcdrw=1

}

void WriteCommand(uchar y) //写命令

{

lcden=0// 写指令 输入:RS=0,RW=0,E=下降沿脉冲,DB0~DB7=指令码 输出:无

lcdrs=0// 写数据 输入:RS=1,RW=0,E=下降沿脉冲,DB0~DB7=数据 输出:无

lcdrw=0// 读数据 输入:RS=1,RW=1,E=1 输出:DB0~DB7=数据

P0=y // 读状态 输入:RS=0,RW=1,E=1 输出:DB0~DB7=状态字

delay(10)

lcden=1

delay(10)

lcden=0

lcdrw=1

}

void Init_LCD1602()

{

WriteCommand(0x01)//清屏

WriteCommand(0x38)//1602显示,5*7点阵设置

WriteCommand(0x38)

WriteCommand(0x0c)//开显示,不显示光标

}

看看, RS在P3^5,RW在P3^6, E在P3^4

这是1602的,需要12864的话再给你,忘采纳

#include<reg52.h>

#define uchar unsigned char

#define uint unsigned int

uchar table1[]={"wo shi yang lang"}

uchar table2[]={"dan pian ji"}

// uchar table3[]={}

// uchar table4[]={}

sbit wei=P2^7

sbit duan=P2^6

sbit E=P3^4

sbit RS=P3^5

sbit RW=P3^6

unsigned char num

void delay(unsigned char z)

{

unsigned char x,y

for(x=0x<zx++)

for(y=0y<110y++)

}

void zl(unsigned char a)

{

RS=0

RW=0

P0=a

E=0

delay(5)

E=1

delay(5)

E=0

}

void sj(unsigned char b)

{

RS=1

RW=0

P0=b

E=0

delay(5)

E=1

delay(5)

E=0

}

void iniv()

{

wei=0

duan=0

E=0

zl(0x01)

zl(0x80)

zl(0x38)

zl(0x0f)

}

void main()

{

iniv()

zl(0x80+0x10)

for(num=0num<16num++)

{

sj(table1[num])

delay(1200)

}

zl(0x80+0x40+3+0x10)

for(num=0num<11num++)

{

sj(table2[num])

delay(1200)

}

for(num=0num<16num++)

{

zl(0x18)

delay(200)

}

while(1)

}

首先确保硬件没问题,如果是自己画的PCB,天线布线有要求。如果是淘宝的买的板子也要注意,以前我就是买过几块板子做测试,结果死活不行,再重新购买,程序就调通了(用调通的程序测试之前买的板子也不行)。还有个奇葩的事情,当时调程序时,spi死活调不通,调了快一个星期,后来把spi速率将低就可以了,再后来调到原来的速率也可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7835607.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-10
下一篇2023-04-10

发表评论

登录后才能评论

评论列表(0条)

    保存