0
收藏
微博
微信
复制链接

Proteus8.9 VSM Studio Keil编译器仿真AT89C51RD2系列025_lcdLM4265

提问于
2024-12-04 18:30

一,打开文件(可以随文下载放置在文档中打开)。(如下图1所示)
1.png
图1

二,调整原理图大小,适合可视,另存工程文件。(如下图2,3,4所示)
2.png
图2

3.png
图3

4.png
图4

三,点击Source Code标签。(如下图5所示)
5.png
图5

四,编辑main.c 代码如Proteus8.9 VSM Studio Keil编译器仿真AT89C51RD2系列025_lcdLM4265 (如下图6所示)
6.png
图6

五,Main.c 代码:



/* Main.c file generated by New Project wizard
*Coder:       Ziegler Yin
* Created:   周日 5月 3 2020
* Processor: AT89C51RD2
* Compiler:  Keil for 8051
*/

#include "LM4265.h"
#include "LED.h"


unsigned char a=0;

void main(void)
{   
        lcd_init();                                                                                                                                                                                //LM4229液晶屏初始化
    clr_lcd(0,0,256);                                                                                                                        //清屏
        while(1)
        {
                 write_lcd(0,0,   "按钮及LED灯状态:");
                 write_lcd(30,0,  "Kaillen Work");
                 if(S1==0) {
                        delay(1000);
                        if(S1==0) {a++;delay(20000);}
                }
                switch(a){
                        case 0:P1=0xff;write_lcd(90,0, "初始状态");break;
                        case 1:P1=0x00;write_lcd(150,0, "按1下:全亮");break;
                        case 2:case1();write_lcd(150,0, "按2下:全部闪烁");break;
                        case 3:case3();write_lcd(150,0, "按3下:左右流水灯");break;
                        case 4:case2();write_lcd(150,0, "按4下:右左流水灯");break;
                        case 5:case4();write_lcd(150,0,  " ");break;
                        default:a=0;P1=0xff;clear_lcd();break;
                }                 
        }
}
LM4265.h:


/* Main.c file generated by New Project wizard
*Coder:       Ziegler Yin
* Created:   周日 5月 3 2020
* Processor: AT89C51RD2
* Compiler:  Keil for 8051
*/

#ifndef __LM4265_H_
#define __LM4265_H_

#include
#include             //_nop_();
#include "en_code.h"                                                                //字符字库
#include "cn_code.h"                                                                //中文字库
//******************************************************************************************
#define uchar unsigned char                                //1字节无符号整数,值域:0~255
#define uint  unsigned int                                //2字节无符号整数,值域:0~65535
//#define ulong  unsigned long                //4字节无符号整数,值域:0~4294976295

#define fd 1200
#define ys 10000

//*****************************************************************************************                                                                                                                                                  
//功能:管脚定义
//*****************************************************************************************
#define DATA_PORT P0

#define HALT P2_0                                                           //暂不清楚
#define FS1  P2_1                                                            //字体模式选择
#define MD2  P2_2                                                            //方式选择
#define RST  P2_3                                                            //复位
#define CD   P2_4                                                             //数据(L)/命令(H)选择
#define READ P2_5                                                     //读,低电平有效
#define WRIT P2_6                                                     //写,低电平有效
#define CE   P2_7                                                     //使能,低电平有效



sbit S1=P2^0;


void delay_lcd(uchar t);
void write_data(uchar dat);
void write_com(uchar com);
void lcd_init(void);
void clr_lcd(uchar x,uchar y,uint length);
void clear_lcd(void);

//*****************************************************************************************                                                                                                                                                  
//功能:指定位置向LCD写入指定字符
//*****************************************************************************************
void write_lcd(uchar x, uchar y, char *cha);


#endif

六,点击构建工程按钮,编译工程。(如下图7所示)
7.png
图7

七,点击窗口左下方仿真按钮,可见lcdLM4265屏上信息显示在屏。 (如下图8,9,10所示)
8.png
图8

9.png
图9
10.png
图10


八,选择release,点击构建工程按钮,编译工程生成Hex文件。(如下图11所示)
11.png
图11

九, 系列的001-003虚拟仿真与开发板对应已证明:虚拟仿真程序对于开发板有效,之后不再➕上下载到开发板的介绍。

收藏 35 0 0

浅柠半夏

此用户很懒什么也没留下

热门直播
更多>>