- 博客(5)
- 收藏
- 关注
原创 DSP TMS320F28035 片上FLASH写入/读出数据
其中,buffer[0]、buffer[1]负责写入数据,buffer[2]、buffer[3]负责读取数据,Flash_ptr为目标地址,Length为数据长度。Flash_Erase是擦除数据,Flash_Program为写入数据。在实际应用中,我们希望一些数据可以实时写入到片上FLASH中,使芯片掉电以后能够保存数据,以下是DSP读取/写入片上FLASH的具体步骤。最后,在如下位置插入以下代码,保证数据可以稳定写入读出。效果如图5所示,可见数据已经写入了片上FLASH中。图2 程序内部数据地址分配。
2024-05-14 14:26:15
2834
1
原创 结构体对齐相关问题
对齐数:结构体成员自身大小和默认对齐数中的较小值。比如int类型大小为4,vs上默认对齐数为8,则int类型要对齐到4的整数倍处。根据以上3条规则,我们再看上面的代码,可知大小为4+2+(2 对齐到8)+4+1+(3 补充为4的整数倍)为什么会有额外的空间被占用了,可见结构体内部的成员并非连续排放的,这其中的原因在于结构体的对齐问题。2、从第二个成员开始,往后的每一个成员都要对齐到某个对齐数的整数倍处。1、结构体的第一个成员默认排第一个,没有占额外的位置。3、结构体的总大小必须是最大对齐数的整数倍。
2023-07-14 15:50:31
67
1
原创 memcpy与memmove库函数的模拟实现
按照memcpy的做法,我们将arr[2]的值赋给arr[3],再将arr[3]的值赋给arr[4],很明显,从前往后依次复制不行。但是,如果我们从后往前复制,将arr[6]的值赋给arr[7],先避开了重叠的部分,就能够避免以上现象的发生。原因在于char类型的大小为1个字节,而我们这个函数选择复制的大小正是设定的字节数,因此,我们只需要一次移动一个字节,就能完成数据的复制。如果目标的地址<源的地址,重叠的部分由前面变成了后面,从后向前不能避开重叠的区域,因此,我们要采用从前向后的策略。
2023-07-14 11:26:32
86
1
原创 扫雷小游戏保姆级教程
printf("你赢了!\n");break;break;default:printf("非法输入,请重新输入\n");break;return 0;至此,扫雷程序的编写完成。效果如图5所示,该程序比较简单,但是值得思考的地方很多,包括防止数组越界,胜负判断等等,希望这篇博文对大家有所帮助!图5 效果演示。
2023-05-11 15:16:52
432
1
原创 瞎写一则博客
我的目标很小,能够找到一个和师兄一样好的工作就万事大吉,比如去大疆干活就是我的理想目标。若是不能,进入研究所开启自己的摆烂生活,也是很吼滴!为自己的无聊生活再添一笔色彩。学习编程任重而道远,其并不是一蹴而就的,只有每日勤加练习,将理论知识与实践知识相结合才是最好的学习方法,我相信每天进步一点点,编程技术在日积月累之下也能取得突破。鄙人不才,工科狗一枚,学习多年,深感知识之浅薄,痛下决心,决定认真学习编程技术,为未来996的美好人生而奋斗!2. 写个人第一篇博客,谈谈以下内容。
2023-04-01 23:38:04
82
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人