- 博客(152)
- 资源 (3)
- 收藏
- 关注
原创 【转】这些年背过的面试题——网络和操作系统基础篇
转自:阿里巴巴技术质量阿里妹导读本文是技术人面试系列网络和操作系统基础篇,面试中关于网络和操作系统基础都需要了解哪些内容?网络基础客户端——发送带有SYN标志的数据包——服务端一次握手Client进入syn_sent状态;服务端——发送带有SYN/ACK标志的数据包——客户端二次握手服务端进入syn_rcvd;客户端——发送带有ACK标志的数据包——服务端三次握手连接就进入Established状态;主要是为了建立可靠的通信信道,保证客户端与服务端同时具备发送、接收数据的能力。
2024-04-18 08:46:00 651
原创 [FreeRTOS] 调用vTaskSuspend后,通过vTaskResume恢复任务无法响应
串口接收中断函数:通过设置(give)一个信号量标记,告诉串口接收主任务函数,可以进行接收串口数据了。调用vTaskSuspend挂起任务后,通过vTaskResume恢复任务,恢复的任务无法响应。观察led任务,发现灯还可以闪烁,说明RTOS任务能正常切换,操作系统未被挂死。串口接收主任务函数:等待信号量,接收数据,将数据送入队列。按道理已经恢复任务了,应该可以响应正常的指令才对。
2024-04-15 11:21:15 161 1
原创 ccs识别不了头文件的问题
src下新建了个.c它使用的是总工程默认的属性编译选项,所以他识别不了src配置的这些编译选项。这种方式,把src和prj_cfg上的扳手 符号取消掉,然后把这些配置,添加到主工程的编译配置。1、今天在已经编译好的工程里添加功能,发现新加的.c引用原来工程的头文件时,死活不成功。这样搞,太复杂了,居然有这样的bug,就不应该提供每个文件夹单独配置编译属性的功能!中了,因为原来工程已经编译OK了,工程里其他的.c会引用该文件。-----------------这就很垃圾,没法搞。2、很肯定原来的.h所在。
2024-03-28 15:50:11 167
原创 crc16计算
/ 调用CRC函数计算CRC值。printf("crc16_2 分段计算出 value: %X\n", result);// 调用CRC函数计算CRC值。crc16计算,以生成式G(x)=x16+x15+x2+1,为例。
2024-03-01 16:09:03 392
原创 const和指针结合 记录
uint8 const* sPtr:表示sPtr指向的内容为常量,也就是说,const uint8 * sPtr,和上面一样,放在类型前后无关;,指针地址无法修改,在定义时初始化好的,无法指向其他对象!
2024-01-30 11:12:06 372
原创 微信支付转账延迟设置在哪
原先在服务--》钱包里找,找了半天都找不到,浪费时间。1、新版本微信更新后,转账延迟设置找不到了。2、网上搜了半天每一个对的,浪费时间。”--》进去后,点击。就可以设置到账时间了。
2024-01-22 14:55:42 437
原创 LWIP_HOOK_UNKNOWN_ETH_PROTOCOL宏定义使用方法
通过包含头文件的方式,不利于移植;如果调用lwip是通过lib方式调用,那这个lwip.lib移植就受限,不灵活,必须将LWIP_HOOK_FILENAME 具体的路径包含在工程里,不方便在不同工程调用。例如,你可以决定如何处理这些未知类型的数据包,例如将其转发到另一个接口、将其丢弃或将其传递给应用程序进行处理。这样改动小,也方便移植,自己在不同工程中自定义自己的eth_unknow_type_hook函数即可。2) 使能LWIP_HOOK_UNKNOWN_ETH_PROTOCOL,对应都具体的函数。
2024-01-18 11:00:48 359 1
原创 freertos任务管理器,任务监控
例如,如果一个任务调用vTaskDelay(),它将被阻塞(被置于阻塞状态), 直到延迟结束-一个时间事件。处于阻塞状态的任务通常有一个"超时"期, 超时后任务将被超时,并被解除阻塞, 即使该任务所等待的事件没有发生。与“阻塞”状态下的任务一样, “挂起”状态下的任务不能 被选择进入运行状态,但处于挂起状态的任务 没有超时。当任务实际执行时,它被称为处于运行状态。准备就绪任务指那些能够执行(它们不处于阻塞或挂起状态), 但目前没有执行的任务, 因为同等或更高优先级的不同任务已经处于运行状态。
2024-01-12 14:43:35 866
原创 调用lwip的函数,在LWIP_ASSERT_CORE_LOCKED()出错
1、lwip在很多函数里都加了LWIP_ASSERT_CORE_LOCKED断言判定,比如我直接发送以太网报文是,调用ethernet_output函数就有这个判定。已解决:MCUX SDK和lwIP -- 使用LWIP_ASSERT_CORE_LOCKED - 恩智浦社区 (nxp.com)就是检测锁有没有lock啊(前提是使能了LWIP_FREERTOS_CHECK_CORE_LOCKING)
2024-01-08 11:57:20 534
原创 lwip发送组播数据问题
在ip4_route函数中,使能组播后(LWIP_MULTICAST_TX_OPTIONS=1),貌似这个代码。2)或者通过ip4_set_default_multicast_netif,强制设置一个网卡为默认组播网卡。1、今天测试组播包发现,组播数据只能在默认网卡发送成功,多次交叉测试依然这样,所以和网卡的配置无关。函数,将ip4_default_multicast_netif设置为NULL,则取消这个限制,需要改ip4_route,或者ip4_route_src 函数代码啊。限制死了发送数据的网卡啊,
2024-01-03 18:07:02 396
原创 lwip初始化网卡和使用
2)我们要把网卡 gnetif挂载到netif_list链表上才能使用,因为LwIP是通过链表来管理所有的网卡,所有第二步是通过netif_add()函数将我们的网卡挂载到netif_list链表上。总之一句话,在开始使用LwIP协议栈的时候,我们就需要将网卡底层移植完成,才能开始使用,而移植的第一步,就是将网络进行初始化,并且设置该网卡为默认网卡,让LwIP能通过网卡进行收发数据。1)lwip把网卡抽象成netif结构体了,所以需要先定义一个网卡结构体变量struct netif gnetif。
2023-12-29 11:22:48 455
原创 setsocket函数
具体的实现函数是:lwip_setsockopt_impl(int s, int level, int optname, const void *optval, socklen_t optlen)源码位置\lwip\lwip-stack\src\api\sockets.c中,lwip的setsocket函数可以设置很多属性,
2023-12-21 16:59:34 410
原创 明明我在头文件写了宏定义,为啥还提示未找到use of undeclared identifier
如果NUMBER_OF_INTERFACES是在一个特定的作用域内定义的(例如函数内部),那么在外部作用域中可能无法访问该宏。确保在board.c文件中包含了包含NUMBER_OF_INTERFACES定义的头文件。一直提示NUMBER_OF_INTERFACES宏未定义,我找这个错误找了好久,可明明我在头文件已经包定义了#define NUMBER_OF_INTERFACES 2。在代码中直接使用NUMBER_OF_INTERFACES作为数组的长度,但是没有加上中括号[],因此编译器无法正确展开宏。
2023-12-11 09:34:40 1438
原创 常用的DNS地址记录一下
2、阿里云DNS,223.6.6.6 还有一个223.5.5.5这一个PING值50多。服务ip为:114.114.114.114 和 114.114.115.115。拦截 钓鱼病毒木马网站 增强网银、证券、购物、游戏、隐私信息安全。1、百度公共DNS服务IP:180.76.76.76。以上DNS按需设置,一个慢就换一个。4、 电信:首选:101.226.4.6。5.联通:首选:123.125.81.6。6.移动:首选:101.226.4.6。7.铁通:首选:101.226.4.6。
2023-11-27 16:46:15 164
原创 记录几个自己常用的正则表达式
*Modified.*\r\n : 选中含有字符Modified的所在行。^.*[$] :选中$符之前的字符,包含$自身,从每行的开头开始。
2023-10-16 15:55:56 69
原创 1、AM64xx的SDK重新编译lib文件
如果安装了ccs,ccs已经有gmake了,所以只需将gmake添加到系统的path路径。我的ccs装在D盘,使用将 D:/ti/ccs1230/ccs/utils/bin 加入系统path路径,之后打开cmd,查询如下:OK。
2023-10-11 10:46:23 250
原创 使用ccs中 exclude from build功能,源代码不能从工程里去除/恢复
1、使用ccs免不了将源文件从工程里去除,或者重新添加到工程里,一般使用功能exclude from build,如下示:在.c上有键就可以看到。2、有时候用这个功能时,经常会出现ccs没有反应了,不能正常将源代码去除/恢复到工程里,这时候很头头。同理将要添加的文件夹从里面删除,就可以将这个文件夹的代码加入工程。将要去除的文件夹添加到里面,就将这个文件夹的代码不进行编译了;2>找到 打开文件.cproject。
2023-08-31 15:01:35 403
原创 windows安装新openssl后依然显示旧版本
才找到原来的openssl在哪里,把老的卸载掉就好了!2、网上找了老半天也没找到答案,最后通过指令。这个版本号是以前的老版本,不知道在哪里。
2023-08-24 16:48:16 2040
原创 6、CCS 配置工程头文件批量添加路径的方法
3、选中include paths(-I)框框里的最后一条路径。4、然后ctrl v,这样路径就复制到预定义路径里了。2、编辑好需要添加的路径,并按ctrl c。1、进入到图示的框框里。
2023-08-11 15:28:11 946
原创 5、Task_stat() always report used == size他两总是相等
将 Task.initStackFlag 字段由flase改为true后就行了。statbuf.used 和 statbuf.stacksize 一直相等。百度不行啊,同样关键字,百度都搜不到这个主题帖,碰到问题还是得google。1、今天想查看一下任务的堆栈使用情况,按官方手册加入下面调试下面代码。2、一直以为是堆栈不够,一直在加堆栈,发现一直不行。4、参照之后,按照下面修改就可以。3、最后Google才发现问题。调试了一天发现那个;
2023-07-08 22:26:41 188
原创 4、ccs生成bin文件大小问题
今天运行 例程 MMCSD_bbbAM335x_EMMC_armTestproject,编译后得到的bin文件有十几M,打开bin后发现,后面有一堆0x00。可以看到,从10几M降为100多k了,记录一下。百度和官方论坛方法都不行后。
2023-06-21 10:58:16 659 2
原创 3、添加/修改GPIO管脚应该修改的位置
在D:\ti\pdk_am335x_1_0_17\packages\ti\starterware\board\am335x\am335x_beagleboneblack_pinmux_data.c。D:\ti\pdk_am335x_1_0_17\packages\ti\drv\gpio\test\led_blink\src\am335x\GPIO_bbbAM335x_board.c中。数组gpioPinConfigs[] 定义IO的属性,输入输出,中断等;中,添加自己的管脚属性。3、定义宏,方便控制。
2023-06-02 14:26:15 186 2
原创 ext-8 gmake bootloader BUILDCFG=boot BOOTMODE=uart PLATFORM=am335x-evm PROFILE=debug -s KW_BUILD=no出
找了好久才发现原来tiimage.exe没有,需要将他从D:\ti\pdk_am335x_1_0_17\packages\ti\starterware\tools\ti_image\tiimage_bin这里拷贝到指定位置。原来官方的PDK也有这种低级错误啊!
2023-05-24 19:18:56 66
原创 ext-7 记录一些分析代码的关键地方
D:\ti\pdk_am335x_1_0_17\packages\ti\drv\uart\src\v1\UART_v1.h里。1、UART_config[]用来初始化串口配置的数据,他的定义在。
2023-05-15 17:22:31 81
原创 ext6 修改板级驱动,代码后重新编译驱动
1、重新编译库代码:这里是以开发板evmAM335x为例。2、重新编译出BootLoader。(指令可以看我以前的文章)
2023-05-13 23:26:28 405 1
原创 ti wiki访问不了了
我用夸克网盘分享了「processorswikiticom-20200906-wikidump.7z」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。大家都知道,ti 的wiki服务器关闭了,在关闭前有人将wiki的服务器内容下载下来了,链接:https://pan.quark.cn/s/da79306046fa。
2023-05-13 20:44:07 173
原创 ext-5 void GPIO1Pin23PinMuxSetup(void)含义
在阅读starterware里控制led的代码,GPIO初始化有个这个函数void GPIO1Pin23PinMuxSetup(void){HWREG(SOC_CONTROL_REGS + CONTROL_CONF_GPMC_A(7)) = CONTROL_CONF_MUXMODE(7);}如果不熟悉可能看的一头雾水,这个含义是:解释一下:1、我们要控制的管脚是GPIO1_23这个管脚,2、HWREG是个写地址值的函数; SOC_CONTROL_REGS是个通用的地址偏移量,就不说了;
2023-05-10 15:15:24 800
原创 ext-3 怎么将PDK的库包添加到CCS工程中
第一次接触ccs和A8这个库,PDK工具包的库是啥后缀,怎么添加到工程里?等等,这些摸索了好久,这里记录一下!(这里的编译器都选则的是GNU,非TI自带的编译器)
2023-05-04 23:01:16 680 1
原创 ext-1:PDK工具包编译出例程
这个提示按官方意思是找不到ccs的路径,所以需要指令CCS_INSTALL_PATH到环境变量,可是我添加进了也不行,后面直接修改pdkProjectCreate.bat里的东西,pdk,ccs完成之后,需要将pdk相关的东西导入到ccs中,具体如下图,打开ccs--》windows--》preference--》后续如下。这里我说一下:我们可以一次性把所有的例程都编译出来,也可以先编译出一些自己先测试要用的例程,为什么有这样选项呢,因为一次性编译出 所有例程,,所以提供单独编译驱动,这点还是比较好的。
2023-04-25 23:26:05 749
wxWidgets-2.9.5 帮助文档
2016-02-24
2002-2009年中科院微电子所考研专业课《信号与系统》试卷.
2014-12-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人