由于EPROM *** 作的不便,后来出的主板上BIOS ROM芯片大部分都采用EEPROM(Electrically Erasable Programmable ROM,电可擦除可编程ROM)。EEPROM的擦除不需要借助于其它设备,它是以电子信号来修改其内容的,而且是以Byte为最小修改单位,不必将资料全部洗掉才能写入,彻底摆脱了EPROM Eraser和编程器的束缚。
EEPROM在写入数据时,仍要利用一定的编程电压,此时,只需用厂商提供的专用刷新程序就可以轻而易举地改写内容,所以,它属于双电压芯片。借助于EEPROM芯片的双电压特性,可以使BIOS具有良好的防毒功能,在升级时,把跳线开关打至“on”的位置,即给芯片加上相应的编程电压,就可以方便地升级;平时使用时,则把跳线开关打至“off”的位置,防止CIH类的病毒对BIOS芯片的非法修改。所以,至今仍有不少主板采用EEPROM作为BIOS芯片并作为自己主板的一大特色。
EEPROM相关专业术语:
1.electrically erasable programmable read only memory(EEPROM)电气可拭除可编程只读存储器
2.memory, electrically erasable programmable read only(EEPROM)电气拭除式可编程只读存储器
STM32 FLASH模拟EEPROM
一、 根据所选IC确定每页的大小
ST系列芯片中,FLASH的大小大于或者等于256k,则每页大小为2k(最多2k大小);FLASH的大小于256k大小,则每页大小为1k.
二、 在模拟EEPROM中写数据
(1)在模拟EEPROM中写数据,有以下几个参数必须具备:写入数据的虚拟地址,写入的数据,写入的数据的数量(注:写入的数据必须每次写入半字)。
(2)在写入数据之前必须判断,要求写入的数据的虚拟地址是否非法(写入的虚拟地址值小于该芯片的FLASH的起始地址或者大于该芯片的FLASH的最大地址值均是视为非法地址)。 (3)解锁FLASH》》》》写入关键字1,关键字2(注:写入关键字就是写入解锁序列,写入的顺序不能乱)。
(4)根据要求写入的数据的虚拟地址计算出实际的偏移地址(相对于FLASH的起始地址),扇区地址,在扇区中的偏移(注意:在扇区内的偏移以2个字节为基本单位),扇区剩余空间大小。
(5)判断要求写入的数据的个数是否不大于该扇区剩余空间的大小,如成立将要求写入的数据的个数赋值给表示空间大小的变量。
(6)进入循环,进行实际的写入数据 *** 作》》》》》》读取该扇区整个扇区的数据--检验在该扇区中从扇区内的实际偏移开始,一直到扇区剩余空间大小(此时的剩余空间大小值等于要求写入数据的数量),检验这整个区域内是否需要擦除,如果检烟道数据不等于0xFFFF,就需要擦除该扇区的整个扇区----该扇区擦除前复制到数组中的有效的数据重新写入到该扇区----写入要求写入的数据到要求写入的虚拟地址中--判断是否写入结束,如果该扇区不能够则扇区一到一个扇区,写入新扇区的数据数量等于总数量减去写入到上一个扇区的数据数量。每次写 *** 作完都必须做如次判定,直至要求写入的数据完全写入为止。写入结束后跳出循环。
(7)上锁FLASH。
注意:在写入和从模拟的EEPROM读出数据都必须是半字读写,所以地址必须每次加2.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)