在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 關(guān)于STC單片機EEPROM的應(yīng)用總結(jié)

            關(guān)于STC單片機EEPROM的應(yīng)用總結(jié)

            作者: 時間:2016-12-01 來源:網(wǎng)絡(luò) 收藏
            當(dāng)在程序運行的過程中你希望修改某個變量并且此變量的值在掉電以后不丟失,那么你就可以采用將變量數(shù)據(jù)寫入EEPROM的方式來實現(xiàn)。
            什么是EEPROM,即Electrically Erasable ProgrammableRead_Only Memory首先它是一種存儲器,并且可以通過高電壓來進行反復(fù)擦寫的存儲器。具有掉電數(shù)據(jù)不丟失的特點。比如常用的24C系列,93C系列的器件。一般這種器件采用I2C的方式與單片機進行通訊,對于這種通訊方式及器件的應(yīng)用另作總結(jié)。這里主要總結(jié)一下,STC12C5204AD芯片內(nèi)部包含的EEPROM的應(yīng)用方法。
            STC12C5201AD系列單片機內(nèi)部集成了EEPROM是與程序空間分開的,利用ISP/IAP技術(shù)可將內(nèi)部dataflash當(dāng)EEPROM,擦寫10萬次以上。
            EEPROM可分為若干個扇區(qū),每個扇區(qū)包含512字節(jié)。
            使用時建議同一次修改的數(shù)據(jù)放在同一個扇區(qū),不是同一次修改的數(shù)據(jù)放在不同的扇區(qū),不一定要用滿。數(shù)據(jù)存儲器的擦除操作是按扇區(qū)進行的。
            在程序中可對EEPROM進行字節(jié)讀寫/字節(jié)編程/扇區(qū)擦除操作。在工作電壓Vcc偏低時,建議不要進行EEPROM/IAP操作。以免發(fā)生數(shù)據(jù)錯誤。
            應(yīng)用的步驟
            1、聲明與EEPROM相關(guān)的寄存器
            2、編寫EEPROM初始化函數(shù)
            3、編寫字節(jié)擦除函數(shù)
            4、編寫字節(jié)編程函數(shù)
            5、編寫字節(jié)讀取函數(shù)
            6、在需要讀取EEPROM字節(jié)內(nèi)容時直接調(diào)用字節(jié)讀取函數(shù)即可
            7、在需要進行寫EEPROM字節(jié)時,先調(diào)用字節(jié)擦除函數(shù),將字節(jié)內(nèi)容擦除成FFH后,在調(diào)用字節(jié)編程函數(shù),將數(shù)據(jù)寫入到EEPROM的地址單元中。
            與EEPROM應(yīng)用相關(guān)的寄存器

            本文引用地址:http://www.biyoush.com/article/201612/324568.htm
            符號
            描述
            地址
            位地址及符號
            復(fù)位值
            IAP_DATA
            ISP/IAP flash data register
            C2H
            1111 1111B
            IAP_ADDRH
            ISP/IAPflashaddress high
            C3H
            0000 0000B
            IAP_ADDRL
            ISP/IAP flash address low
            C4H
            IAP_CMD
            ISP/IAP flash command register
            C5H
            MS1
            MS0
            IAP_TRIG
            ISP/IAP flash command trigger
            C6H
            xxxxxxxxxB
            IAP_CONTR
            ISP/IAP control register
            C7H
            IAPEN
            SWBS
            SWRST
            CMD_FAIL
            WT2
            WT1
            WT0
            0000X000B
            PCON
            Power control
            87H
            SOMD
            SMOD0
            LVDF
            POF
            GF1
            GF0
            PD
            IDL
            00110000B

            1、IAP_DATA:ISP/IAP數(shù)據(jù)寄存器
            ISP/IAP操作時的數(shù)據(jù)寄存器。
            ISP/IAP從FlASH讀出的數(shù)據(jù)存放此處,向flash寫的數(shù)據(jù)也需要放在此處。
            2、IAP_ADDRH和IAP_ADDRL :IAP/ISP地址寄存器
            3、IAP_CMD:ISP/IAP命令寄存器

            MS1
            MS0
            命令/操作模式選擇
            0
            0
            Standby 待機模式,無ISP操作
            0
            1
            從用戶程序區(qū)對“data flash /EEprom區(qū)”進行字節(jié)讀
            1
            0
            從用戶的應(yīng)用程序區(qū)對“data flash/eeprom區(qū)”進行字節(jié)編寫
            1
            1
            從用戶的應(yīng)用程序區(qū)對“dataflash/eeprom區(qū)”進行扇區(qū)擦除

            4、IAP_TRIG:ISP/IAP命令觸發(fā)寄存器
            在IAPEN(IAP_CONTR.7)=1時,對IAP——trig先寫入5AH,在寫入A5H,ISPIAP命令才會生效
            ISPIAP操作完成后,IAP地址高8位寄存器IAP_ADDRH、IAP地址低8位寄存器IAP_ADDRL 和IAP命令寄存器IAP_CMD的內(nèi)容不變。如果接下來要對下一個地址的數(shù)據(jù)進行IAP/ISP操作,需手動將該地址的高8位和低8位分別寫入IAP_ADDRH和IAP_ADDRL寄存器。
            每次IAP操作時,都要對IAP_TRIG先寫入5AH,再寫入A5H,ISP/IAP命令才會生效。
            5、IAP_CONTR:ISPIAP控制寄存器

            SFR name
            Address
            Bit
            B7
            B6
            B5
            B4
            B3
            B2
            B1
            B0
            IAP_CONTR
            C7H
            Name
            IAPEN
            SWBS
            SWRST
            CMD_FAIL
            _
            WT2
            WT1
            WT0

            IAPEN:ISP/IAP功能允許位:0:禁止IAP讀/寫/擦除 data flash /eeprom
            1:允許IAP讀/寫/擦除 dataflash/eeprom
            SWBW:軟件選擇從用戶應(yīng)用程序區(qū)啟動(送0),還是從系統(tǒng)ISP監(jiān)控程序啟動(送1)。
            要與SWRST直接配合使用才可以實現(xiàn)
            SWRST:0:不操作;1:產(chǎn)生軟件系統(tǒng)復(fù)位,硬件自動復(fù)位。
            CMD_FAIL:如果送了ISP/IAP命令,并對IAP_TRIG送5AH/A5H觸發(fā)失敗,則為1,需由軟件清零。
            在用戶應(yīng)用程序區(qū)(AP區(qū))軟件復(fù)位并從用戶應(yīng)用程序區(qū)(AP區(qū))開始執(zhí)行程序。
            MOV IAP_CONTR,#00100000B;SWBS=0(選擇AP區(qū)),SWRST=1(軟復(fù)位)
            在用戶應(yīng)用程序區(qū)(AP區(qū))軟件復(fù)位并從系統(tǒng)ISP監(jiān)控程序區(qū)開始執(zhí)行程序
            MOV IAP_CONTR,#01100000B;SWBS=1(選擇ISP區(qū)),SWRST=1(軟復(fù)位)
            在系統(tǒng)ISP監(jiān)控程序區(qū)軟件復(fù)位并從用戶應(yīng)用程序區(qū)(AP區(qū))開始執(zhí)行程序
            MOV IAP_CONTR,#00100000B;SWBS=0(選擇AP區(qū))SWRST=1(軟復(fù)位)
            在系統(tǒng)ISP監(jiān)控程序區(qū)軟件復(fù)位并從系統(tǒng)ISP監(jiān)控程序區(qū)開始執(zhí)行程序。
            MOV IAP_CONTR,#01100000B;SWBS=1(選擇ISP區(qū)),SWRST=1(軟復(fù)位)
            設(shè)置等待時間

            設(shè)置等待時間
            CPU等待時間(多少個CPU工作時鐘)
            WT2
            WT1
            WT0
            Read/讀
            (2個時鐘)
            Program/編程(=55us)
            Sector erase
            扇區(qū)擦除
            =21us
            Recommended system clock
            跟等待參數(shù)對應(yīng)的推薦系統(tǒng)時鐘
            1
            1
            1
            2個時鐘
            55個時鐘
            21012個時鐘
            <=1MHz
            1
            1
            0
            2個時鐘
            110個時鐘
            42024個時鐘
            <=2MHz
            1
            0
            1
            2個時鐘
            165個時鐘
            63036個時鐘
            <=3MHz
            1
            0
            0
            2個時鐘
            330個時鐘
            126072個時鐘
            <=6MHz
            0
            1
            1
            2個時鐘
            660個時鐘
            252144個時鐘
            <=12MHz
            0
            1
            0
            2個時鐘
            1100個時鐘
            420240個時鐘
            <=20MHz
            0
            0
            1
            2個時鐘
            1320個時鐘
            504288個時鐘
            <=24MHz
            0
            0
            0
            2個時鐘
            1760個時鐘
            672348個時鐘
            <=30MHz

            12c系列單片機內(nèi)部EEPROM選型一覽表

            型號
            字節(jié)數(shù)(eeprom)
            扇區(qū)數(shù)
            起始扇區(qū)首地址
            結(jié)束扇區(qū)末尾地址
            STC12C5201AD/PWM
            2K
            4
            0000h
            07ffh
            STC12C5202AD/PWM
            2k
            4
            0000h
            07ffh
            STC12C5203AD/PWM
            2k
            4
            0000h
            07ffh
            STC12C5204AD/PWM
            1k
            2
            0000h
            03ffh
            STC12C5205AD/PWM
            1k
            2
            0000h
            03ffh


            上一頁 1 2 3 下一頁

            關(guān)鍵詞: STC單片機EEPRO

            評論


            技術(shù)專區(qū)

            關(guān)閉