新聞中心

AVR的EEPROM實驗

作者: 時間:2016-11-17 來源:網(wǎng)絡(luò) 收藏
系統(tǒng)功能

本文引用地址:http://m.butianyuan.cn/article/201611/315550.htm

AVR內(nèi)部的EEPROM寫入數(shù)據(jù),再讀出EEPROM的數(shù)據(jù),用LED進(jìn)行指示,觀察讀出的數(shù)據(jù)與寫入的數(shù)據(jù)是否一致。

硬件設(shè)計


AVR主控電路原理


LED控制電路原理圖

軟件設(shè)計

//目標(biāo)系統(tǒng):基于AVR單片機(jī)
//應(yīng)用軟件: ICC AVR

/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
實驗內(nèi)容:
寫入一些測試數(shù)據(jù)進(jìn)EEPROM,再讀出,使用PB口的LED做指示,觀測是否與寫入一致。
----------------------------------------------------------------------
硬件連接:
將PB口的LED指示燈使能開關(guān)切換到"ON"狀態(tài)。
----------------------------------------------------------------------
注意事項:
(1)若有加載庫程序,請將光盤根目錄下的“庫程序”下的“ICC_H”文件夾拷到D盤
(2)請詳細(xì)閱讀:光盤根目錄下的“產(chǎn)品資料開發(fā)板實驗板SMK系列SMK1632說明資料”
----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/

#include
#include "D:ICC_HCmmICC.H"

#define DISP_DDR DDRB
#define DISP_PORT PORTB

/*--------------------------------------------------------------------
程序名稱:
程序功能:
注意事項:
提示說明:
輸入:
返回:
--------------------------------------------------------------------*/
void main(void)
{
uint8 i;
uint8 wrDat=0xAA;
uint8 wrDat_[]={1,2,3,4,5,6,7,8},rdDat_[8];
DISP_DDR=0xFF;
EEPROMwrite(0x01,wrDat);//寫入單個數(shù)據(jù)
DISP_PORT=EEPROMread(0x01);//讀出用指示燈驗證是否正確
delay50ms(40);//有2S的觀察時間
EEPROMWriteBytes(1,wrDat_,8);//對EEPROM寫入數(shù)組數(shù)據(jù)
EEPROMReadBytes(1,rdDat_,8);//對EEPROM讀出數(shù)據(jù)
for(i=0;i<7;i++)
{
delay50ms(40);//有2S的觀察時間
DISP_PORT=rdDat_[i];//讀出用指示燈驗證是否正確
}
while(1);
}

系統(tǒng)調(diào)試

觀察讀出的EEPROM數(shù)據(jù)與寫入EERPOM的數(shù)據(jù)是否一致,用LED作為數(shù)據(jù),沒什么好說的。。


關(guān)鍵詞: AVREEPRO

評論


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

關(guān)閉