新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 對stc片內eeprom的測試

        對stc片內eeprom的測試

        作者: 時間:2012-10-23 來源:網絡 收藏

        #include89.h>
        #includeintrins.h>
        #define uchar unsigned char
        #define uint unsgined int
        uchar code shuzi[]=0123456789-:;
        uchar d0,d1,d2,d3,t0;
        sbit lcd_rs=P2^5;//數據/命令選擇端 H高 L低
        sbit lcd_rw=P2^6;//讀/寫選擇端 H高 L低
        sbit lcd_e=P2^7; //使能信號 上升沿所存數據
        void init(); //液晶初始化操作
        void write_com(uchar com); //液晶寫命令函數
        void write_data(uchar dat);//液晶寫數據函數
        void delay(uchar a0); //延時函數
        void main()
        {init(); //調用液晶初始化函數對液晶初始化操作
        ISP_CONTR=0x82;
        ISP_ADDRH=0x20;//高八位地址定義
        ISP_ADDRL=0x00;//低八位地址定義
        ISP_TRIG=0x00;
        ISP_CMD=0x01;//讀取內容
        ISP_TRIG=0x46;//手冊中說要先寫入
        ISP_TRIG=0xb9;
        d0=ISP_DATA;

        本文引用地址:http://www.104case.com/article/193038.htm


        while(1)
        {

        write_com(0x83);
        d1=d0/100%10;
        d2=d0/10%10;
        d3=d0%10;
        write_data(shuzi[d1]);
        write_data(shuzi[d2]);
        write_data(shuzi[d3]);
        if(d0>=255)
        {d0=0;}
        ISP_DATA=d0;

        ISP_CMD=0x03;//扇區擦除
        ISP_TRIG=0x46;
        ISP_TRIG=0xb9;

        ISP_CMD=0x02;;//編程
        ISP_TRIG=0x46;
        ISP_TRIG=0xb9;

        for(t0=10;t0>0;t0--)
        {
        delay(255);
        }
        d0++;

        }}

        void init()//液晶初始化操作
        {lcd_rw=0; //讀寫選擇端 始終為寫
        lcd_e=0; //使能端拉低 以便形成上升沿
        delay(15);
        write_com(0x38);//設置顯示模式為1602
        write_com(0x0c);//光標設置和 顯示開不開設置
        write_com(0x06);//光標和屏幕移動不移動 設置
        write_com(0x01);//清屏操作
        write_com(0x80);//設置數據指針
        }

        void write_com(uchar com)//液晶寫命令函數
        {
        lcd_rs=0; //設置數據命令為 命令
        P0=com; //將命令送到P0口
        delay(2); //延時一下
        lcd_e=1; //e使能端上升沿吧數據讀走
        delay(2); //延時一下好讓液晶準備好
        lcd_e=0; //使能端拉低 以便下次形成上升沿
        }

        void write_data(uchar dat)//液晶寫數據函數
        {
        lcd_rs=1; //設置數據命令為 數據
        P0=dat; //將命令送到P0口
        delay(2); //延時一下
        lcd_e=1; //e使能端上升沿吧數據讀走
        delay(2); //延時一下好讓液晶準備好
        lcd_e=0; //使能端拉低 以便下次形成上升沿
        }

        void delay(uchar a0)
        { uchar a1,a2;
        for(a2=a0;a2>0;a2--)
        for(a1=110;a1>0;a1--);
        }



        關鍵詞: eeprom stc 測試

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 留坝县| 太仆寺旗| 自贡市| 达尔| 开远市| 全州县| 峡江县| 英吉沙县| 策勒县| 阳信县| 平利县| 博客| 望奎县| 四川省| 贵南县| 巴林左旗| 牙克石市| 丰镇市| 英超| 集安市| 安国市| 平谷区| 尉犁县| 黄大仙区| 安多县| 来凤县| 东乡县| 广灵县| 裕民县| 湖北省| 克什克腾旗| 太仆寺旗| 东方市| 奈曼旗| 广元市| 黄大仙区| 漳平市| 盐边县| 马关县| 隆尧县| 寻乌县|