vscode 全局搜索的用法: 搜索栏最右边功能是区分大小写,全字匹配(比如搜索abc,就不会显示abcd或者ab这些内容),使用正则表达式。变成高亮就是开启对应功能。 包含的文件:这栏里如果最右边高亮填入带路径的文件,指的是在文件中搜索,并把所有符合的内容显示在左边的框中。如果最右边不是高亮,填入路径,指的是在此路径下查找包含内容的文件,并显示。用逗号分隔包含的文件或路径。 排除的文件:好像只能排除通配符这种表示方式。指定路径无效。
正点原子imx6ull-uboot启动理解 0x80800000:这是zimage(nxp的linux内核格式,是无压缩的。uimage是有压缩)在内存DDR中的地址。 0x83000000:这是设备树的DDR地址。 setenv,saveenv把环境变量保存在启动介质中,当用SD卡启动,就存在SD卡中。
遇到李鬼了,www.iodraw.com和www.drawio.com 这是两家公司。www.iodraw.com好像是国内的公司。www.drawio.com好像是瑞士公司。 两家公司都支持.drawio和.iodraw后缀的文件。 有意思。
thumb指令集会把函数在flash中的地址的LSB置1 这里有没有发现一个奇怪的地方,就是SystemInit的值是0x08000abd,(来自工程的.map文件)但是反汇编出来的,真正的地址是0x08000abc,差了1,为什么会差了1呢?又验证了其他几个函数名,发现都是相差1,我曾经看过这么一段话,就是在更新PC(R15)寄存器时,会将PC指针的LSB置1,来表示Thumb状态,对于高级编程语言(包括C和C++),编译器会自动将跳转目标的LSB置位。正好对应到这里的相差1。
stm32启动文件中的__main函数功能(拷贝别人的)。 注意这里有个误区,有的人可能会将__main换成比如__testmain,然后实际自己定义的是testmain,这样编译肯定通不过,然后就说什么stm32的主函数名改不了。因为__testmain没有定义啊,这个和__main不一样,__main是c的库函数,标准库自己包含的,__main函数属于c库函数,其内部依次进行三步工作,即先初始化rw段,然后初始化zi段,最后调用另一个c库函数__rt_entry(),,而我这里直接把__main函数替换成自己想要运行的函数则不包含那些操作,
wsl2 ubuntu 桥接以太网卡 设置 WSL 2 可以使用的最大 CPU 核心数为 4,自行修改。memory=4GB;设置 WSL 2 可以使用的最大内存量为 4 GB,自行修改。指定使用的虚拟开关为 "WSL2",这里填虚拟交换机的名称。swap=4GB;设置 WSL 2 的交换空间大小为 4 GB,自行修改。ipv6=true;装好三个必要的服务。
wsl中安装ubuntu,vscode访问这个ubuntu WSL1升级为WSL2 wsl --set-default-version 2 wsl --set-version Ubuntu-22.04 2 在windows商店中也可以安装ubuntu, 在这个ubuntu中windows的c盘在/mnt/c中
ubuntu安装包时报错 这种报错:openssh-server : Depends: openssh-client (= 1:7.2p2-4) Depends: openssh-sftp-server but it is not going to be installed 解决方法:sudo apt-get install openssh-client=1:7.2p2-4
使用root账号ssh登录虚拟机ubuntu 在C:\Users\Administrator\.ssh目录下的config中,添加 ubuntu会在根目录中,建立一个root文件夹。在该文件夹中建一个.ssh目录。像免密登录ubuntu设置中,把公钥考进去。在vscode中打开文件夹中选择要打开的文件夹,就可以不需要在ubuntu中输入命令编辑文件了
ubuntu 16.04不能使用sudo命令 chmod a+w /etc/sudoers 在root ALL=(ALL:ALL) ALL后,加上username ALL=(ALL:ALL) ALL chmod a-w /etc/sudoers
ubuntu16.04不能打开terminal解决方法 ctrl+alt+f4切换到命令行模式。 su -,进入root账号。 更改/etc/default/locale权限:chmod a+w locale nano locale,把第一行改成这个样子:LANG=“en_US.UTF-8” 改回/etc/default/locale权限:chmod a-w locale 重新启动ubuntu
嵌入式linux,交叉编译驱动程序,头文件路径问题 交叉编译驱动程序,实际上是利用linux内核编译的源码编译makefile中的modules选项。所以头文件的包含目录在内核源码的安装目录下,即,源码目录/usr/src/kernel/include。如果没有在交叉编译器的安装目录里面:/arm-linux-gnueabihf/libc/usr/include,也有交叉编译的头文件。 交叉编译默认的头文件包含目录,通过:echo 'main(){}'|arm-linux-gcc -E -v -,这个命令查看。 gcc默认的头文件包含目录,通过:echo
正点原子imx6ull,linux编译报错。 因为和正点原子使用的ubuntu不同,所有/usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x50): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here,这个报错。 在scripts/dtc/中,更改dtc-parser.tab.c_shipped中的YYLTYPE yylloc;变为 externYYLTYPE yyllo
virtualbox ubuntu使用usb网卡连接开发板 把usb网口连到电脑上,给这个网口设置一个ip地址:192.168.2.1 virtualbox设置中设置桥接模式,其中名称选择windows设备管理器中的网卡名字。 在ubuntu中设置桥接模式虚拟网卡的ip地址:192.168.2.2 设置imx6ull开发板的uboot里面的ip地址:192.168.2.3。serverip:192.168.2.2 可以使用imx6ull开发板uboot的tftp和nfs了