嵌入式学习(入门)

一些命令上的问题

1.如何查询一个函数的头文件

2.如何显示代码行数

网络编程(TCP)

1.socket()函数的返回值问题

首先socket()的返回值为文件描述符

为啥是3呢?首先LCD(printf)默认是文件描述符1(标准输出),键盘(scanf)默认0(标准输入),出错处理默认2(标准出错),其他文件描述符从3开始累计。

相似的有         open(),它返回的也是一个从3开始的文件描述符。

2.bind()的参数问题

a.

&addr 取结构体成员变量的首地址,这个地址用*来表示,这样强制转换的目标可以合法表示,(struct sockaddr_in *)&addr 就是一个地址(指针),指向sockaddr_in 结构

b.

这里 struct sockaddr 而不是 struct sockaddr_in ,

c. addr.sin_port,addr.sin_family,addr.sin_addr.s_addr,这些成员变量的初始化要放在bind()前面哦

类似的是client中的connect()函数

d.

为啥用fd?connect()函数成功返回值是0,client中socket返回一个文件描述符,该文件用于网络通信,accept返回一个文件描述符,接收client数据。

e bind error :

可能是地址发生改变。

3.双向通信应用

a.rw_ret 没有更新过程,会导致第二个用户无法上传数据

网络编程(UDP)

函数: 

驱动程序

1.gcc更新到自己需要的版本:

看下面

2.Makefile的学习

单独写一个 h.c 时,然后make会报错:

然后我想着用老师的源码结果仍报错:

我该怎么修改Makefile?

问题:签名有误,内核认为被污染所以报错,无法打印出myopen和myclose函数里面的内容!

不管它了,不碍事(暂时看来)

没有修改Makefile,只需要更换gcc版本: sudo apt install gcc-x,x为需要版本

3.ioremap函数

硬件

有一个参考学习:JZ2440开发板与电脑通过网线直连,实现开发板、虚拟机、PC机三者互Ping,并成功挂接网络根文件系统_jz2440与虚拟机网线直连-CSDN博客

1.无法联网:

2.ping的问题:

a.有网线的版本:https://blog.csdn.net/masudong/article/details/105009743

但是我的网络

这不能吧

首先主板:

这样我们把网线连上去,然后设置以太网,勾选桥接,然后设置IP地址,一个网段即可。

这样主机和主板就能ping通。参考:https://blog.csdn.net/liuxianfei0810/article/details/109532737?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-109532737-blog-79029261.235%5Ev43%5Epc_blog_bottom_relevance_base1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-109532737-blog-79029261.235%5Ev43%5Epc_blog_bottom_relevance_base1&utm_relevant_index=2icon-default.png?t=N7T8https://blog.csdn.net/liuxianfei0810/article/details/109532737?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-109532737-blog-79029261.235%5Ev43%5Epc_blog_bottom_relevance_base1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-109532737-blog-79029261.235%5Ev43%5Epc_blog_bottom_relevance_base1&utm_relevant_index=2

其次对于主板的ping:记得是虚拟机是桥连模式哦

b.无网线:暂时noway

3.主板不能进行这么多的活动,所以需要虚拟机运行后把关件文件共享到主板上。

重点:怎么共享?

mount -t nfs -o nolock 169.254.106.6:/work/nfs_root/first_fs /mnt 

但是出现错误:

mount: RPC: Unable to receive; errno = Connection refused

参考:jz2440:Ubuntu与开发板之间互传文件(3)_连接上开发板但无法传文件-CSDN博客

问题:指令:mount -t nfs -o tcp,intr,nolock,rsize=1024,wsize=1024 192.168.1.20:/home/gyfyd/share  /kkk,报错:这个是因为NSF默认UDP协议,改为TCP即可-otcp

4.arm-linux-gcc 安装报错

一直显示无此命令!

5.

linux摄像头课程设计

1.

./demo 黑屏

没有解决但不影响结果!

2.实时传输视频延迟高

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值