標(biāo)題: Proteus8.9 VSM Studio SDCC編譯器仿真STC15W4K32S4系列013_iic_05_AT24C32 [打印本頁(yè)]

作者: kaillen    時(shí)間: 2020-6-3 20:19
標(biāo)題: Proteus8.9 VSM Studio SDCC編譯器仿真STC15W4K32S4系列013_iic_05_AT24C32
一,打開文件(可以隨文下載放置在文檔中打開)。(如下圖1所示)

圖1

二,調(diào)整原理圖大小,適合可視,另存工程文件。(如下圖2,3,4所示)

圖2


圖3


圖4

三,點(diǎn)擊Source Code標(biāo)簽。(如下圖5所示)

圖5

四,編輯main.c 代碼如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);//把位置設(shè)置為第一行第一位
        delay(5);
        for(i=0;i<6;i++) set_data(table);
       
    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);//把位置設(shè)置到第二行第一位         
        for(i=0;i<6;i++) set_data(table2);

        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;  //數(shù)據(jù)/命令選擇端,1是數(shù)據(jù),0是命令(狀態(tài))
//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



六,點(diǎn)擊構(gòu)建工程按鈕,編譯工程。(如下圖7所示)

圖7

七,點(diǎn)擊窗口左下方仿真按鈕,可見虛擬AT24C32讀寫閃爍顯示在屏。 (如下圖8,9,10所示)

圖8


圖9

圖10


八,選擇release,點(diǎn)擊構(gòu)建工程按鈕,編譯工程生成Hex文件。(如下圖11所示)
  
圖11


附件Proteus8.9 VSM Studio SDCC編譯器仿真STC15W4K32S4系列013_iic_05_AT24C32在已安裝Proteus8.9的計(jì)算機(jī)文件夾中打開即可
需要進(jìn)一步了解,請(qǐng)加入QQ群:976235464







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1