- 博客(21)
- 资源 (2)
- 收藏
- 关注
原创 软件I2C读写24cl64异常 可读不可写
3月末在调试一个eeprom芯片24lc64,我们要用软件模拟I2C控制它,但遇到了奇特的现象。用我们之前写的I2C驱动去控制它时,不可写入,但是可以读取。为了控制它,我们用硬件I2C去对它进行操作,可读写,证明芯片没有坏。经过示波器的帮助,发现它在写入的时序中有ack,但最后总是存不进去数据。在与公司内的一位大佬长时间的共同调试后,发现问题在写时序的最后:发出停止信号需要拉高时钟线再给数据线一个上升沿。我们的程序也是这么写的,但是,拉高时钟线和拉低数据线的先后顺序影响了24lc64的判断,让它以
2021-04-21 14:37:35 2175 8
原创 STM32串口异常导致重启
串口使用DMA 调用过HAL_UART_Receive_IT() 会开启噪声检测中断 如果不在中断服务函数中处理会引起问题
2020-11-19 19:29:48 3409
原创 STM32F105 PB3 无法控制的原因:JTAG功能占用,没有重映射;KEIL5自身的问题
这周在调试STM32F105,其中有个功能是用PB3做控制,要能够输出高低电平。刚开始就出现了问题,PB3始终无法被设置为低电平,找了大佬来帮忙,大佬一眼看出是JTAG占用,需要进行重映射于是在初始化过程中加入以下代码,禁用JTAG。__HAL_RCC_AFIO_CLK_ENABLE(); //使能AFIO时钟__HAL_AFIO_REMAP_SWJ_NOJTAG(); //使能SWJ接口 禁用JTAG接口结果是PB3依旧无法控制,但在大佬的电脑上写个程序
2020-09-11 08:09:08 1596 5
原创 电力输送网模拟
这是一种将图论引入到一个区域的供电网络的模拟程序,可以实时更新各单位的供电情况,实时监测短路。用到的都是很基础的知识,理解起来很简单,保证看完就能懂。
2019-10-15 10:02:40 316
原创 C语言的简单使用(十三、函数指针)
函数指针是指针,指向函数的指针,一个函数在编译时被分配一个入口地址,这个地址就称为函数的指针,函数名代表函数的入口地址。
2019-09-15 11:27:29 143
原创 C语言的简单使用(十二、多维数组)
多维数组是指二维往上,包括二维的数组,这些知识在编程的过程中几乎用不到,但是它能更好地帮助程序员理解变量在内存中的分布。
2019-09-12 16:42:20 751
原创 C语言的简单使用(九、字符串查找经典模型)
do-while模型:查询一个字符串中特定字符序列出现的次数while模型:同上两头堵模型:滤掉有用信息两头的无意义字符,如“ ”、“*”字符串反转模型:把字符串从头到尾反过来
2019-08-28 20:57:40 352
原创 C语言的简单使用(七、字符串的初始化和输出)
c语言没有字符串类型,通过字符数组模拟c语言字符串,以字符‘\0’、数字 0 结尾所以用对待数组的方法来对待字符串是完全可以的
2019-08-24 20:58:36 430
原创 C语言的简单使用(六、接着说指针)
1)指针也是一种数据类型,指针的数据类型是指它所指向内存空间的数据类型2)间接赋值*p是指针存在的最大意义 3)理解指针必须和内存四区概念相结合 4)应用指针必须和函数调用相结合(指针做函数参数)指针是子弹,函数是枪管;子弹只有沿着枪管发射才能显示它的威力;指针的学习重点不言而喻了吧。接口的封装和设计、模块的划分、解决实际应用问题;它是你的工具。5)指针指向谁就把谁的地址赋给指针 6)C/C++语言有它自己的学习特点;若java语言的学习特点是学习、应用、上项目;那么C/C++语言的
2019-08-22 20:21:30 172
原创 C语言的简单使用(一维数组做函数的输入)
数组做输入,退化为指针以一个简单的程序为例,如给数组排序int main(void){ //建立一个无序的数组 int a[] = { 10,11,2,3,5,88,4,6,4,32,12 }; //获取元素个数 int n = sizeof(a) / sizeof(a[0]); printf("排序前\n"); //首先进行一次输出,数组、长度作为输入参数 print_a...
2019-08-17 19:48:12 21862
FrequencyCheck.rar
2019-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人