找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11377|回復: 0
打印 上一主題 下一主題
收起左側(cè)

Proteus8.9 VSM Studio SDCC編譯器仿真STC15W4K32S4系列013_iic_05_AT24C32

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:371233 發(fā)表于 2020-6-3 20:19 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
一,打開文件(可以隨文下載放置在文檔中打開)。(如下圖1所示)

圖1

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

圖2


圖3


圖4

三,點擊Source Code標簽。(如下圖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);//把位置設置為第一行第一位
        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);//把位置設置到第二行第一位         
        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



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

圖7

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

圖8


圖9

圖10


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


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


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表