- 博客(35)
- 收藏
- 关注
原创 Undefined symbol xTaskGetCurrentTaskHandle (referred from stream_buffer.o).
解决办法。
2024-07-30 21:55:02
377
原创 FREERTOS中,队列按键捕获
解决方法:修改任务的优先级,队列消息获取的按键任务优先级 > 队列消息释放的按键任务优先级。队列消息获取的按键任务优先级 < 队列消息释放的按键任务优先级。会出现错误,必须先按KEY1,才能按KEY0。
2024-06-19 14:51:48
287
原创 ..\..\Middlewares\FreeRTOS\portable\RVDS\ARM_CM3\port.c(407): error: A1586E: Bad operand types (UnDe
解决方法:4U改为4。
2024-06-19 13:19:09
813
原创 FreeRTOS,使用SDIO外设会进入Hard FaultHandler
1.读写函数中,要使能所有中断。2.读写缓冲数组为全局变量。3.任务堆栈开辟的大点。
2024-06-19 12:35:06
361
原创 学习笔记 SD卡(1)
sd卡速度等级:speed class uhs speed class video speed class。SD卡三种系列:SD卡(FULL SIZE)MINISD卡 MicroSD卡。SD:Secure Digital Card 安全数据卡。特点:容量大 高安全性 体积小 传输速度快 接口简单。本质:nand flash + 控制芯片。SD卡与TF卡时序完全一样。DAT0:拉低,表示忙。
2024-06-04 10:50:59
572
原创 0x0a and 0x0d
其实回车和换行之所以把大家搞迷糊的一个重要原因,是大家把键盘的 “回车键”,0x0d表示“回车”,我们在windows下的txt文件下敲下的回车键等情况搅在了一起。在键盘上敲下回车键,在不同软件下获得字符大有不同。Windows下在txt文件中敲下回车键,然后16进制观察,你会发现获得了2个字符,0x0d和0x0a,这个大家都知道,但这不意味着,在任何情况下敲下回车键,都会获得0x0d和0x0a。在linux下,你对一个文件,敲下回车键,你就会发现,它每次只增加一个字符。
2024-03-22 16:08:31
466
1
原创 STM32串口中断
从说明文档可以看出这两个标志位是有时间先后顺序的,TC要在TXE置位并且数据传输完成后才置位,表明TXE是更早发生的。TXE只能表明数据寄存器的数据被传输的移位寄存器,而此时数据并没有发送出去。TC则表示一帧数据发送完成,缓冲区的数据都已经发送出去了,甚至接收端也已经收到数据了。TXE:TXEIE使能中断;TC:TCIE使能中断;那这两个寄存器应该怎么应用,有什么本质的区别吗?TC才可以表示数据发送完成。
2024-03-22 13:56:52
280
1
原创 STC51流水灯方向控制
void Delay1ms(unsigned int xms) //@11.0592MHz //延时函数。count = 1;//再次按下K1改变count值使进入逻辑右移。count = 0;//再次按下K1改变count值使进入逻辑左移。while(count == 0) //当count为0时进入此循环。while(count == 1) //当count为1时进入此循环。#include //导入头文件。
2024-03-01 11:26:07
443
原创 假设用0-53来表示54张扑克牌的编号,编程为用户随机产生13张牌,再随便输入某一张牌的编号,采用顺序查找法查找这张牌是否还在用户手中,如果在用户手中,则输出是第几张牌。
方法二:为每张牌设置一个标志,取值为0和1,0表示该牌没发过,1表示该牌已经发过。每产生一张牌,都检测其对应的标志,如果为0,则该牌有效,并将标志值改为1;C语言提供了产生随机数的库函数rand(),它可以返回一个0-32767之间的整数,这样可以用rand()%来产生一个0-m-1之间的随机数。比较这两种方法,方法一效率低下,所以,用方法二来实现,并且重新定义一个整型数组flag[54]来存储标志值。方法一:每产生一张扑克牌都检索一遍已有的牌,如果重复,测重新产生。小伙伴们快去试一试吧。
2024-01-15 17:13:16
800
原创 手把手教你学冒泡排序法(c语言)
排序过程中,大的数据像石头一样沉淀,小的数据像小气泡一样上升,每一轮都将剩余数字中最大的一个数沉底。4.程序int main()while (1)printf("请输入%d个数:",N);for (i = 0;i < N;i
2024-01-12 21:15:36
614
原创 汉诺塔(Tower of Hanoi)问题(C语言)(学不会,你来找我)
这样通过上述3步将64个盘子的问题化简成63个盘子的问题,在用类似的3步,可以将63个盘子的问题化简成62个盘子的问题。(1)先将上面的3个盘子看成一个整体,从座A移到座B,再将剩下的1个盘子(第4个)从座A移到座C。(4)先将上面的2个盘子看成一个整体,从座A移到座B,再将剩下的1个盘子(第3个)从座A移到座C。(5)最后将这2个盘子看成一个整体,从座B移到座C(桃红框里的为一个整体,红框里的为底座)。(7)先将上面的1个盘子从座A移到座B,再将剩下的1个盘子(第2个)从座A移到座C。
2024-01-11 19:35:09
1070
1
原创 编程求组合数公式。要求在main()函数中输入自然数m和n的值,并输出结果。
【代码】编程求_^。要求在main()函数中输入自然数m和n的值,并输出结果。
2024-01-11 15:10:20
641
1
原创 手把手教你写IIC(要是学不会,来找我)(C语言)
应答信号:上拉电阻影响下SDA默认为高,而从机拉低SDA就是确认收到数据即ACK,否则NACK。注意:这里面最重要的的就是三个信号(起始信号,终止信号,应答信号)组成,并且都接上拉电阻,确保总线空闲状态为高电平。SCL为高电平期间, SDA从高电平往低电平跳变。SCL为高电平期间, SDA从低电平往高电平跳变。2us的延时, 读写速度在250Khz以内。
2024-01-11 11:38:19
926
1
原创 编写程序,输入三角形的3条边长,求其面积。注意:三角形的任意两边之和大于第三边,对于不合理的边长输入,要求给出错误提示。(C语言)
printf("您输入的边长不合理,请重新输入\n");printf("面积为%f\n",s);printf("请输入三边长:");
2024-01-11 10:03:06
1034
1
原创 OLED图片显示(手把手教学,有不懂的地方私聊)
5.我这里使用火影忍者图片,先使用Image2Lcd改成黑白画,输出格式为.bmp,我的OLED是0.96寸,为128*64,调节图片宽度为128,长度自动调节。3.找到显示图片函数,此函数为列行式,一列打完8个像素点,再打第二列(下面有视频介绍列行式)6.将这些16进制整数复制到bmp.h的数组中。1.先找到厂家给的驱动文件,如图所示。4.使用取模软件,建议使用正点原子的。2.将工程移植到自己的工程里面。7.使用图片显示函数。
2024-01-09 19:29:08
2754
5
原创 用new分配100个整数空间,将1到100存储在这100个空间里
int main()int i,*p;elsefor (i = 0;i < 100;i ++)for (i = 0;i < 100;i ++)delete []p;return 0;
2023-12-14 20:05:13
474
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅