We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello, My code has a problem with I2C. after study, I found it related to link sequence. It include 2 modules, say Module1 and Module2. If I add some dummy code in Module1 to make Module1 size is bigger than Module2, it works correctly. Then I check the "map" file and found Module1 linking location is before Module2. On the contrary, If I add some dummy code to Module2 to make Module2 size is bigger than Module1, it works incorrectly. The total code size is same as case 1, the only difference is that in the "map" file Module2 code location is before Module1. Anybody has any idea? Thanks.
Below is copied from ".map" file, it is the only difference between correct case and NG case: I find that a bit hard to believe, unless you've turned off almost all optional contents of map files, including, most importantly, the lists of publics. See the "listing" tab of the project options in uV2 for what those optional parts are. Turn them on, and compare the two map files again. I still hold that the real reason for this is not the order of modules, but a straightforward bug in one of them, which just happens not be triggered if the modules are in the working order. Tracking down that bug may be very hard, though. Even more so if you can't reproduce it in the simulator, but only on actual hardware or an emulator.