Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32

一,打开文件(可以随文下载放置在文档中打开)。(如下图1所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第1张图片
图1

二,调整原理图大小,适合可视,另存工程文件。(如下图2,3,4所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第2张图片
图2

Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第3张图片
图3

Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第4张图片
图4

三,点击Source Code标签。(如下图5所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第5张图片
图5

四,编辑main.c 代码如Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32 (如下图6所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第6张图片
图6

五,Main.c 代码:

#include “comds.h”

uchar __code table[] = “Write:”;
uchar __code table2[] = “Read :”;

int main(void)
{
uint i;
init();

set_lcd(0x80);//把位置设置为第一行第一位
delay(5);
for(i=0;i<6;i++) set_data(table[i]);

set_lcd(0x80+7);
set_data('H');	
set_data('e');
set_data('l');
set_data('l');
set_data('o');
write_at_addr(0,'H');
write_at_addr(1,'e');
write_at_addr(2,'l');
write_at_addr(3,'l');
write_at_addr(4,'o');

set_lcd(0x80+0x40);//把位置设置到第二行第一位	 
for(i=0;i<6;i++) set_data(table2[i]);

delay(5);


set_lcd(0x80+0x40+7);
set_data( read_at_addr(0) );  
set_data( read_at_addr(1) );
set_data( read_at_addr(2) );
set_data( read_at_addr(3) );
set_data( read_at_addr(4) ); 

while(1) {
	
	delay(2000);
}

}
comds.h:

/* Main.c file generated by New Project wizard
*Coder: Ziegler Yin

  • Created: 周日 5月 3 2020
  • Processor: AT89C51RD2
  • Compiler: Keil for 8051
    */

#ifndef _COMDS_H
#define _COMDS_H

#include “mySTC01.h”
#include “INTRINS.H”

#define uchar unsigned char
#define uint unsigned int

__sbit __at 0xB3 port_rs ;
__sbit __at 0xB4 port_rw ;
__sbit __at 0xB5 port_en ;

__sbit __at 0x90 scl ;
__sbit __at 0x91 sda ;

//sbit port_rs = P3 ^ 4; //数据/命令选择端,1是数据,0是命令(状态)
//sbit port_rw = P3 ^ 5; //读写控制,1是读,0是写
//sbit port_en = P3 ^ 6; //使能端,高电平允许

//sbit scl = P1 ^ 0;
//sbit sda = P1 ^ 1;

void init(void);
void delay(uint t);
void set_lcd(uchar val);
void set_data(uchar dat);
void delay_us(uint t);
void start(void);
void stop(void);
void Ask(void);
void NoAsk(void);
void respons(void);
void write_byte(uchar Data);
uchar read_byte();
void write_at_addr(uint addr,uchar dat);
uchar read_at_addr(uint addr);

#endif

六,点击构建工程按钮,编译工程。(如下图7所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第7张图片
图7

七,点击窗口左下方仿真按钮,可见虚拟AT24C32读写闪烁显示在屏。 (如下图8,9,10所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第8张图片
图8

Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第9张图片
图9
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第10张图片
图10

八,选择release,点击构建工程按钮,编译工程生成Hex文件。(如下图11所示)
Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32_第11张图片
图11

附件下载:https://download.csdn.net/download/kaillen/12493927
Proteus8.9 SP2下载:https://download.csdn.net/download/kaillen/12459968
附件Proteus8.9 VSM Studio SDCC编译器仿真STC15W4K32S4系列013_iic_05_AT24C32在已安装Proteus8.9的计算机文件夹中打开即可
需要进一步了解,请加入QQ群:976235464

你可能感兴趣的:(C51,C语言,Proteus仿真,单片机,嵌入式,windows,小程序,安全)