
外接EEPROM的读写的实验
IIC EEPROM的读写 有点难;在学习过几位童鞋的成功经验,几经努力,取得小收获。
利用MCU-DIY 板上的24C02
接法:
24C02 MCU-DIY RL78/G13
WP P10 GND
SCL P11 SCLA0 (P60,J1-17)
SDA P12 SDAA0 (P61,J1-18)
GND GND
VCC VCC
在前次实验的基础上,数字拨码控制着LED的最大亮度,这个不变;增加一个在LED最大亮度是,把拨码数值(1字节)写入24C02;
LCD右侧显示的是当前拨码的数值,LCD左侧显示的是从24C02读到的数值。在LED到达最大亮度后,两个数值是一致的;
在断电后重新上电,左侧显示是断电前保存在24C02的数值。
使用了IICA0,Applilet3的相关设置如下:
在程序里,读写EEPROM的函数执行后,再加个延时是必须的。
在主程序里, 读:
EEP_BUF[0]= 0X00 ; // EEPROM ADR
IICA0_MasterSendStart(0XA0, EEP_BUF ,1,150); // EEPROM WRITE
DelayMs(3);
IICA0_MasterReceiveStart(0XA0, EEP_BUF ,1,150); // 读 到
DelayMs(3);
写子程序:
void Write_EEP(void)
{
EEP_BUF[0]= 0X00 ; // EEPROM ADR
EEP_BUF[1]= (P0 & 0X0F) ; // EEPROM DATA
IICA0_MasterSendStart(0XA0, EEP_BUF ,2,150); // EEPROM WRITE
DelayMs(3);
}
来1张:
视频是必须的,上传、审核是需要时间的,楼下会有的。
回复
打赏帖 | |
---|---|
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 |