历史上的今天
今天是:2025年02月07日(星期五)
2020年02月07日 | 单片机pt2262无线遥控解码器制作源程序
2020-02-07 来源:51hei
#include #include #define uchar unsigned char uchar code dis1[] = {" 2262 CODE IS "}; void delay_1s(uchar); typedef unsigned char BYTE; typedef unsigned int WORD; typedef bit BOOL ; sbit rs = P2^6 ; sbit rw = P3^6 ; sbit ep = P2^7 ; delay(BYTE ms) { // 延时子程序 BYTE i; while(ms--) { for(i = 0; i< 250; i++) { _nop_(); _nop_(); _nop_(); _nop_(); } } } BOOL lcd_bz() { // 测试LCD忙碌状态 BOOL result; rs = 0; rw = 1; ep = 1; _nop_(); _nop_(); _nop_(); _nop_(); result = (BOOL)(P0 & 0x80); ep = 0; return result; } lcd_wcmd(BYTE cmd) { // 写入指令数据到LCD while(lcd_bz()); rs = 0; rw = 0; ep = 0; _nop_(); _nop_(); P0 = cmd; _nop_(); _nop_(); _nop_(); _nop_(); ep = 1; _nop_(); _nop_(); _nop_(); _nop_(); ep = 0; } lcd_pos(BYTE pos) { //设定显示位置 lcd_wcmd(pos | 0x80); } lcd_wdat(BYTE dat) { //写入字符显示数据到LCD while(lcd_bz()); rs = 1; rw = 0; ep = 0; P0 = dat; _nop_(); _nop_(); _nop_(); _nop_(); ep = 1; _nop_(); _nop_(); _nop_(); _nop_(); ep = 0; } lcd_init() { //LCD初始化设定 lcd_wcmd(0x38); // delay(1); lcd_wcmd(0x0c); // delay(1); lcd_wcmd(0x06); // delay(1); lcd_wcmd(0x01); //清除LCD的显示内容 delay(1); } bit T0Action; bit Action; bit RECEIVE; //接收标志 sbit P1_7=P1^1; //接收脚 sbit P3_5=P1^3; //发光二极管 void main() { uchar temp,data0,data1,counttime,i=0; int time,time1,time2; lcd_init(); // 初始化LCD T0Action=0; RECEIVE=0; //接收标志位 Action=0; TMOD = 0x01; // 定时器0 工作方式1 TH0=0x00; TL0=0x00; P3_5=1; lcd_pos(0x00); while(dis1[i] != '




