ARM STR7 a I2C slave s prerusenim
Dipl.-Ing. Michal Kovácik
kovacik@toolsquare.com
Úterý Leden 6 15:55:35 CET 2009
Zdravim.
Prave som sa stretol s nasledovnym problemom. Pouzivam I2C na ARMe STR7 ako slave.
Inicializacia I2C je nasledovna:
I2C_Init (I2C0);
I2C_FCLKConfig (I2C0);
I2C_OnOffConfig (I2C0, ENABLE);
I2C_ITConfig (I2C0, ENABLE);
I2C_GeneralCallConfig(I2C0, ENABLE);
I2C_SpeedConfig (I2C0, 100000);
I2C_AddressConfig (I2C0,0x40, I2C_Mode7);
I2C_AcknowledgeConfig (I2C0, ENABLE);
EIC_IRQChannelPriorityConfig(I2C0_IRQChannel,1);
EIC_IRQChannelConfig( I2C0_IRQChannel, ENABLE );
EIC_IRQConfig(ENABLE);
Problem je v tom, ze prerusenie nastane az po prijati druheho baytu. Prijme sa adresa, prvy bayt, a az pri druhom skoci do prerusenia. Podla datasheetu
ma skocit do prerusenia hned po prijati prveho baytu. Po prijati prveho baytu sa flag prerusenia nastavi, ale do prerusenia neskoci, udeje sa tak az po prijati druheho baytu.
Stretol sa s tym niekto?
Michal.
------------- dal¹í èást ---------------
HTML p?íloha byla odstran?na...
URL: http://list.hw.cz/pipermail/hw-list/attachments/20090106/c1eaae21/attachment-0002.htm
Další informace o konferenci Hw-list