随笔 - 226,  文章 - 0,  评论 - 4,  阅读 - 30199
12 2023 档案
重定向sprintf和print的区别
摘要:1 /** 2 * 函 数:使用printf需要重定向的底层函数 3 * 参 数:保持原始格式即可,无需变动 4 * 返 回 值:保持原始格式即可,无需变动 5 */ 6 int fputc(int ch, FILE *f) 7 { 8 Serial_SendByte(ch); 9 return c 阅读全文
posted @ 2023-12-30 14:53 小凉拖 阅读(42) 评论(0) 推荐(0) 编辑
标志位
摘要:有些标志位可以触发中断,有些标志位不能触发中断 以串口为例,以下两个函数可以读写能触发中断的标志位,和不能触发中断的标志位,我们一般在主程序中使用这两个函数来判断标志位的状态 对于是否需要使用第二个函数手动清除我们可以查询状态寄存器的相应位的说明 对于这种读写操作会自动清零的标志位,我们可以不用第二 阅读全文
posted @ 2023-12-30 11:17 小凉拖 阅读(58) 评论(0) 推荐(0) 编辑
keil定义的数组不能太大
摘要:我想模仿AT24C256(32K)EEPROM,于是我开了一个32K的数组,就出现了下面的错误 1 float EEPROM_StoreBuf[512][64]; 错误: Error: L6406E: No space in execution regions with .ANY selector 阅读全文
posted @ 2023-12-28 15:23 小凉拖 阅读(109) 评论(0) 推荐(0) 编辑
对象不能定义在头文件中
摘要:.h对于对象只能声明(其他文件可以用到),不能定义,如果多个文件引用该头文件,则会造成重复定义 Error: L6200E: Symbol EEPROM_StoreBuf multiply defined (by main.o and myi2c.o). 阅读全文
posted @ 2023-12-26 19:46 小凉拖 阅读(11) 评论(0) 推荐(0) 编辑
IIC设备总结
摘要:总括 SHT20可能代表主要需要读的设备,EEPROM可能代表需要读写的设备 EEPROM 一页的字节数 01为8个字节,02/04/08/16为16个字节,128/256为64字节 在操作AT24C256时发现EEPROM连续写入时不能跨页写(比如,第一页0~63,我先向63写入一个数据再向64写 阅读全文
posted @ 2023-12-24 19:07 小凉拖 阅读(40) 评论(0) 推荐(0) 编辑
C语言一些小细节
摘要:int value=1; int arr[2]={value,2};//C语言错,C++对 int arr1[2]; arr1[0]=1;//C语言错,C++错 int a; a=10;//C语言错,C++错 struct Mystuct { int myvalue; }; int main() { 阅读全文
posted @ 2023-12-23 21:54 小凉拖 阅读(7) 评论(0) 推荐(0) 编辑
OLED多级菜单
摘要:数组vs链表 数组的优点是可以根据索引值快速查询某一个元素,而链表要从头结点一一查询才能查询到想要的结点 链表的优点是插入和删除结点很方便,适合于频繁插入和删除的情况,而数组长度固定空间不够时需要重新定义数组 根据OLED多级菜单的特点:需要频繁的增加子菜单,删除子菜单,且查询的时候是从父菜单开始一 阅读全文
posted @ 2023-12-20 09:26 小凉拖 阅读(108) 评论(0) 推荐(0) 编辑
结构体内部包含结构体指针
摘要:1 typedef struct ListNode 2 { 3 Menu_t _Attibute; 4 struct ListNode *_fatherMenu;//struct不能少,别和C++混了 5 struct ListNode *_childrenMenu1; 6 struct ListN 阅读全文
posted @ 2023-12-19 22:18 小凉拖 阅读(17) 评论(0) 推荐(0) 编辑
数据类型一些相关问题
摘要:小端和大端存储: 注意一个内存地址8位,因此8位8位的取 数据类型 强制类型转换并不会改变变量的数据类型和数值 本例子来源于ST官方函数 1 //stm32f10x_flash.c 2 FLASH_Status FLASH_ProgramWord(uint32_t Address, uint32_t 阅读全文
posted @ 2023-12-13 14:52 小凉拖 阅读(42) 评论(0) 推荐(0) 编辑
整型和浮点型是怎么存储的
摘要:先看一段程序: 1 int main() 2 { 3 int n = 9; 4 float* pFloat = (float*)&n; 5 printf("n的值为:%d\n", n);//将一个整型值以整型的形式取出来 6 printf("*pFloat的值为:%f\n", *pFloat);// 阅读全文
posted @ 2023-12-11 22:47 小凉拖 阅读(14) 评论(0) 推荐(0) 编辑
数据类型
摘要:强制类型转换并不会改变变量的类型,和指针指向的变量的类型 只有常量引用才可以接任意类型,指针和引用只能接同类型的变量 确定一个地址下变量的类型: 1 *((__IO uint16_t*)Adress);//STM32中地址是32位的,该语句并没有改变地址的类型,只是表明有个无符号16位的指针指向该地 阅读全文
posted @ 2023-12-11 21:15 小凉拖 阅读(5) 评论(0) 推荐(0) 编辑
位操作表示运算
摘要:判断是否能整除 如果A能被B整除那么(A&(B-1))==0 阅读全文
posted @ 2023-12-11 17:15 小凉拖 阅读(6) 评论(0) 推荐(0) 编辑
IIC读写器件时应该关注器件哪些信息
摘要:其他注意事项:EEPROM在主机发送停止位后开始内部的擦写,期间EEPROM不应答主机任何请求,如果想要写入数据后马上读数据需要注意这个问题 阅读全文
posted @ 2023-12-10 21:14 小凉拖 阅读(5) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示