RAM測試時有點類似下面的程序(當(dāng)然你可以修改它來使這個測試更全面些)——這里測試的RAM的數(shù)量是特定于PIC16C76的,如果要用于其它單片機型號,你需要查閱數(shù)據(jù)手冊來確定相應(yīng)型號的存儲器范圍。
#include
volatile unsigned char INDF @ 0x0; // not defined in pic.h
main()
{
IRP = 0; /* select bank 0/1 */
FSR = 0x20; /* check bank 0 */
do {
INDF = 0x55;
} while(++FSR != 0x80);
FSR = 0x20;
do {
if(INDF != 0x55)
for(;;);
} while(++FSR != 0x80);
FSR = 0xA0; // check bank 1
do {
INDF = 0x55;
} while(++FSR != 0xF0); // avoid the common area, already checked
FSR = 0xA0;
do {
if(INDF != 0x55)
for(;;);
} while(++FSR != 0xF0);
IRP = 1; /* select bank 2/3 */
FSR = 0x10; /* bank 2 RAM starts at 110 */
do {
INDF = 0x55;
} while(++FSR != 0x70); // last address is 170 (common is 170-17F)
FSR = 0x10;
do {
if(INDF != 0x55)
for(;;);
} while(++FSR != 0x70);
FSR = 0x90; // bank 3 RAM, 190-1EF
do {
INDF = 0x55;
} while(++FSR != 0xF0);
FSR = 0x90;
do {
if(INDF != 0x55)
for(;;);
} while(++FSR != 0xF0);
}
ROM的校驗和就要看情況而定了。并不是所有的PIC單片機都能夠讀它自己的程序存儲器的。部分Flash的型號是可以讀的,但是PIC16C76是不能夠讀的,請查看相應(yīng)單片機的數(shù)據(jù)手冊來確定。
-
ROM
+關(guān)注
關(guān)注
4文章
575瀏覽量
85881 -
RAM
+關(guān)注
關(guān)注
8文章
1369瀏覽量
114849
發(fā)布評論請先 登錄
相關(guān)推薦
誰更重要 || 信號完整性 vs 電源完整性
信號完整性以及電源完整性中需要檢查的點
詳解信號完整性與電源完整性
何為信號完整性?信號完整性包含哪些
使用SEGGER Linker的完整性檢查功能
信號完整性原理分析
信號完整性與電源完整性仿真分析
![信號<b class='flag-5'>完整性</b>與電源<b class='flag-5'>完整性</b>仿真分析](https://file.elecfans.com/web2/M00/49/36/pYYBAGKhtD-AQrGFAAAIpWJe4Nc974.jpg)
信號完整性與電源完整性的仿真
![信號<b class='flag-5'>完整性</b>與電源<b class='flag-5'>完整性</b>的仿真](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
大話電源完整性
![大話電源<b class='flag-5'>完整性</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
使用IAR Embedded Workbench和MCU的CRC模塊來檢查代碼的完整性
使用SEGGER Linker的完整性檢查功能
![使用SEGGER Linker的<b class='flag-5'>完整性</b><b class='flag-5'>檢查</b>功能](https://file1.elecfans.com/web2/M00/82/6E/wKgaomRTHL2AKbgGAAA5qWT4NDw729.png)
評論