I am looking for an example of how to access banksticks on the Core32.
Background is that I have some data stored on a bankstick, which I need to access from MIOS32, so using an SD card instead is not an option for my problem! Also, I do not see too many analogies between the bankstick functions available in MIOS8 and MIOS32, hence my question.
Okay, I have found application example #025: SysEx Parser and EEPROM Emulation. Apparently, the bankstick does not have to be initialized before accessing it?
Also, from the description of MIOS32_IIC_BS_CheckAvailable it is not quite clear to me what the difference of this function is with respect to MIOS32_IIC_BS_ScanBankSticks?
MIOS32_IIC_BS_ScanBankSticks scans for banksticks, it queries the actual hardware which is quite slow. MIOS32_IIC_BS_CheckAvailable only gives you the results of that check, and is hence pretty fast. You always need to scan (at least once) before using CheckAvailable.
Is there any hardware difference between how banksticks are connected to Core8 and Core32? I have this 8x bankstick board from Mike’s which works flawlessly on Core8, but does not show any sign of life on Core32 (voltage on the bankstick board is okay).
mios32\trunk\apps\mios32_test\bs_rw_check <- test app
Unfortunately, I cannot use this, as I need to preserve what is contained in the banksticks…
MIOS32_IIC_BS_ScanBankSticks scans for banksticks, it queries the actual hardware which is quite slow. MIOS32_IIC_BS_CheckAvailable only gives you the results of that check, and is hence pretty fast. You always need to scan (at least once) before using CheckAvailable.
Thanks! I thought there was some dependency, but it was not clear to me - now it is!
The bankstick board is connected to J4, both R7 and R8 on Core32 are soldered in (though they measure 2.02k instead of 2.2k, but that should not be relevant), and “the other end” indeed connects to 5V. I don’t think there is any other (optional) pull-up network involved with J4?
Did you define “#define MIOS32_IIC_BS_NUM 8” in the mios32_config.h?
Lifesaver! I was suspecting serious trouble with my Core32 board, as all other bankstick apps were failing as well, also mios32\trunk\apps\mios32_test\bs_rw_check… although there it was not quite obvious to me whether I was testing banksticks or FRAM:
#define BS_CHECK_USE_FRAM_LAYER 1 returned an error, whereas
#define BS_CHECK_USE_FRAM_LAYER 0 returned success.