实践笔记-小端模式下的寄存器数据输入技巧;图形化界面配置注意事项。
一、向寄存器输入数据的顺序
在向寄存器输入数据时,需要注意数据的输入顺序,特别是对于小端格式的数据。
假设现有数据 0x12345678
,该数据需要通过 CRC 模块计算一个对应的校验和。
以 8 位大小输入数据到 CRC 寄存器:
顺序应为 78、56、34、12。
以 16 位大小输入数据到 CRC 寄存器:
顺序应为 5678、1234。
以 32 位大小输入数据到 CRC 寄存器:
顺序则为 12345678。
CRC 模块在接收到数据后会立即进行计算,因此这三种不同的输入位宽和顺序会导致最终的计算结果各不相同。
如何解决这个问题?
保持相同的位宽进行数据输入。
如果不能使用相同的位宽,则需要在输入数据前,对数据进行处理。
假设我们以 32 位输入得到的结果为目标值。
如果使用 8 位大小进行输入,数据应处理为
0x78563412
,输入时顺序将变为12
、34
、56
、78
,这与 32 位输入时的顺序一致。如果使用 16 位大小进行输入,则将数据处理为
0x56781234
,输入到 CRC 寄存器后顺序会变为1234
、5678
,这与 32 位输入时一致。
二、图形化界面代码配置注意事项
在使用图形化界面进行代码配置时,请注意正在配置的项目是否为目标配置文件。
开发软件会自动记住你上次使用的配置文件。如果你没有将当前配置的文件修改成目标文件,不仅会导致你的目标文件配置失败,还会修改其他文件的配置。如果本地没有做好文件备份,可能会导致其他文件被不可逆地修改