关键是把unsigned char *转换成unsigned int *
读操作:
static void read_buf(u_char *buf, int len)
{
unsigned int idx,num;
num = (len>>2);
for (idx=0; idx< num; idx++)
((u_int*)buf)[idx] = reg32(reg);
//余数
for (idx= num<<2; idx< len ; idx++)
buf[idx] = reg8(reg);
}
写操作:
static void write_buf(const u_char *buf, int len)
{
unsigned int idx,num;
num = (len>>2);
for (idx=0; idx< num; idx++)
reg32(reg) = ((u_int*)buf)[idx];
//余数
for (idx= num<<2; idx< len ; idx++)
reg8(reg) = buf[idx];
}