本帖最后由 zl2168 于 2018-2-26 23:02 編輯
實例50 非零地址讀寫AT24C02
上節已提到AT24Cxx頁寫緩沖的特性,需要補充說明的是,一次寫入AT24Cxx字節數不但不能超過芯片頁寫緩沖器容量,而且,若不是從頁寫緩沖器頁內零地址0000寫起,一次寫入地址不能超出頁內最大地址1111。例如,若從頁內地址0000寫起,一次最多可寫16字節;若從頁內地址0010寫起,一次最多只能寫16-2=14字節。若要寫16字節,超出頁內地址1111,將會引起地址翻卷,導致出錯。因此,本例16字節從AT24C02 5BH開始寫起,須分兩次寫入。第1次寫0x5b~0x5f單元,第2次寫0x60~0x62單元,中間還必須有頁寫延時。
24c02a.jpg (219.54 KB, 下載次數: 77)
下載附件
2018-2-26 23:02 上傳
先Proteus仿真一下,確認有效。以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil C和Proteus》清華大學出版社ISBN 978-7-302-41682-1,內有常用的單片機應用100案例,用于仿真實驗操作,電路與程序真實可靠可信可行。書中電路和程序設計有詳細說明,程序語句條條有注解。仿真電路和Hex文件能在清華出版社網站免費下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網上書店打折購買。
|