<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[一只路痴兔子的博客]]></title><description><![CDATA[这是啥？那是啥？啊~！？Boom~~~]]></description><link>https://blog.youkuaiyun.com/qq_37284607</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_37284607]]></copyright><item><title><![CDATA[Android-Studio-Chipmunk版本解决gradle报错connection-refuse的问题]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/126557114</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/126557114</guid><author>qq_37284607</author><pubDate>Sat, 27 Aug 2022 13:34:01 +0800</pubDate><description><![CDATA[目前网上解决gradle下载依赖失败问题的教程都比较老，已经不适用于Android Studio Chipmunk版本了，因此摸索出了这个方法。]]></description><category></category></item><item><title><![CDATA[使用手环代替NFC标签实现多屏协同]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/124891630</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/124891630</guid><author>qq_37284607</author><pubDate>Fri, 20 May 2022 22:44:19 +0800</pubDate><description><![CDATA[有手环带NFC功能的小伙伴可以不用买NFC贴纸啦，教你用手环实现手机和电脑一碰传和多屏协同，简直cool到没朋友😱。
一、需要的工具

带NFC功能的手环一个。这里就不得不说我刚到的华为手环7 NFC版了，这轻薄的机身，这华丽的外表，这…… 咳咳，扯远了。
软件：一碰传助手。在UP主小猴学府视频下面的简历里下载https://www.bilibili.com/video/BV1Pg41137Xr?share_source=copy_web

二、实际操作


进入运动健康APP-&gt;钱包-&gt;添加钥]]></description><category></category></item><item><title><![CDATA[正则表达式]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/120204712</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/120204712</guid><author>qq_37284607</author><pubDate>Thu, 09 Sep 2021 16:50:37 +0800</pubDate><description><![CDATA[正则表达式一. 基础正则表达式字符集二. 扩展正则表达式字符集三. 贪婪和非贪婪模式1. 什么是贪婪和非贪婪模式2. 编程中如何区分两种模式四、正则表达式结果取反五、正则表达式工具网站
常用的正则表达式字符集，以及正则表达式中的贪婪匹配和非贪婪匹配。

一. 基础正则表达式字符集




RE字符
描述
例子




.
匹配任意字符，不能匹配换行符
查找e e, eee, e任意一个字符e，但不能是ee：grep -n “e.e” regular.txt


*
重复零个到无穷多个的前一个RE字符
找出含]]></description><category></category></item><item><title><![CDATA[Conda导入环境时 ResolvePackageNotFound错误]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/120144593</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/120144593</guid><author>qq_37284607</author><pubDate>Mon, 06 Sep 2021 21:11:33 +0800</pubDate><description><![CDATA[Conda导入环境时有时候会出现ResolvePackageNotFound错误，该错误的解决方式，博主哦啦哦啦已经说明了怎么解决了，但是手动去删除包后面的详细配置信息还是比较麻烦的，我这里给出使用正则去删除的方法。首先用支持正则匹配的文本编辑器打开，推荐VScode、Notepad3。PS：不推荐notepad++，原因的话百度notepad++作者即可知道。

使用VScode或Notepad3打开conda导出的yaml环境文件，然后打开替换，输入如下正则表达式

(?&lt;=^ {2}-.*=.*]]></description><category></category></item><item><title><![CDATA[hexo博客yilia-puls主题使用aplayer音乐插件]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/119876394</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/119876394</guid><author>qq_37284607</author><pubDate>Mon, 23 Aug 2021 19:53:16 +0800</pubDate><description><![CDATA[文章目录hexo博客yilia-puls主题使用aplayer音乐插件一、安装并启用aplayer插件二、添加aplayer插件到主页1.直接拉取仓库到本地。2.自己进行配置三、一些问题
hexo博客yilia-puls主题使用aplayer音乐插件
由于yilia-puls使用的网易云插件放歌比较麻烦，所以添加了aplayer音乐插件，支持播放歌单，可以在我的博客查看效果兔子的个人博客 - Hexo Blog (gitee.io)。经过测试，能够支持QQ音乐和网易云音乐歌单（其他的只是我没测，酷狗除外，确]]></description><category></category></item><item><title><![CDATA[hexo博客yilia-plus主题更换Beaudar评论插件]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/119876322</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/119876322</guid><author>qq_37284607</author><pubDate>Mon, 23 Aug 2021 19:50:50 +0800</pubDate><description><![CDATA[文章目录hexo博客yilia-plus主题更换Beaudar评论插件一、安装Beaudar app。二、添加到主题中1.直接拉取仓库到本地。2. 自己进行配置三、 一些问题
hexo博客yilia-plus主题更换Beaudar评论插件
因为yilia-plus自带的giteement和gitment评论插件都不能用了，所以更换评论插件为Beaudar - 表达。可以在我的博客查看效果兔子的个人博客 - Hexo Blog (gitee.io)。Beaudar名称源于粤语“表达”的发音，是 Utteran]]></description><category></category></item><item><title><![CDATA[Git撤销修改]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/118822368</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/118822368</guid><author>qq_37284607</author><pubDate>Fri, 16 Jul 2021 20:45:18 +0800</pubDate><description><![CDATA[Git撤销修改Git撤销修改一、撤销修改二、文件删除
Git撤销修改
本篇文章主要分为两部分，一是主要说明下如何使用Git来撤销对文件的修改，二是如何恢复误删的文件。以前一直没有弄明白，现在终于弄清了QAQ。在说操作之前，先说明下Git的工作区、暂存区和版本库的概念。先上图，用的是菜鸟教程的图。


**工作区：**就是你在电脑里能看到的目录。
**暂存区：**英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件（.git/index）中，所以我们把暂存区有时也叫作索引（in]]></description><category></category></item><item><title><![CDATA[git-commit-amend踩坑]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/118547987</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/118547987</guid><author>qq_37284607</author><pubDate>Wed, 07 Jul 2021 15:34:28 +0800</pubDate><description><![CDATA[因为改动比较小，所以我不想重建一个commit，于是我是用了git commit --amend命令,由于之前已经将该commit推送到远程仓库，导致修改后推送失败。百度后发现如果你的commit已经push到了远程仓库，那么使用--amend修改commit后，git push时一定要使用 --force-with-lease 参数来强制推送，否则就会报错。

这是我自己推送失败的例子

解决方式
一、第一种
使用后git commit --amend -m "修改Git学习(三)指令"
注意：-m “.]]></description><category></category></item><item><title><![CDATA[Linux下printf函数不加换行符就不能输出打印的内容]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/112470262</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/112470262</guid><author>qq_37284607</author><pubDate>Mon, 11 Jan 2021 15:10:30 +0800</pubDate><description><![CDATA[Linux下printf函数不加\n就不能输出相关的内容
转载自：优快云博主Alen.Wang1
原因：  输出缓冲区的问题。
unix上标准输入输出都是带有缓存的，一般是行缓存。
对于标准输出，需要输出的数据并不是直接输出到终端上，而是首先缓存到某个地方，当遇到行刷新标志或者该缓存已满的情况下，才会把缓存的数据显示到终端设备上。
ANSI C中定义换行符\n可以认为是行刷新标志。所以，printf函数没有带\n是不会自动刷新输出流，直至缓存被填满。
解决方案：
方案1、在printf里加\n
方案2、在]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（十一）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/112470134</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/112470134</guid><author>qq_37284607</author><pubDate>Mon, 11 Jan 2021 15:06:18 +0800</pubDate><description><![CDATA[Linux异步通知一、异步通知简介1.1 硬件中断1.2 信号1.3 信号处理函数1.4 驱动中对异步通知的处理1.5 应用程序对异步通知的处理二、实验驱动编写2.1 驱动程序2.2 测试APP程序
IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
一、异步通知简介
1.1 硬件中断
中断是处理器提供的一种异步机制，配置好中断以后就可以让处理器去处理其他的事情了，当中断发生以后会触发事先设置好的中断服]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（十）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/112347483</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/112347483</guid><author>qq_37284607</author><pubDate>Fri, 08 Jan 2021 11:09:34 +0800</pubDate><description><![CDATA[Linux阻塞和非阻塞IO一、Linux阻塞和非阻塞IO1.1 阻塞和非阻塞简介1.2 等待队列（阻塞访问）1.3 轮询（非阻塞访问）二、编写试验驱动2.1 阻塞式访问驱动2.2 非阻塞式访问
IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
一、Linux阻塞和非阻塞IO
1.1 阻塞和非阻塞简介
这里的 IO 指的是 Input/Output，也就是输入/输出，是应用程序对驱动设备的输入/输出操作]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（九）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/112347254</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/112347254</guid><author>qq_37284607</author><pubDate>Fri, 08 Jan 2021 10:59:22 +0800</pubDate><description><![CDATA[Linux中断处理一、Linux内核中断处理1.1 裸机中断1.2 Linux中断1.3 上半部和下半部1.3.1 软中断1.3.2 tasklet1.3.3 工作队列1.4 设备树中断节点信息二、编写按键中断实验驱动2.1 配置设备树2.2 按键中断驱动程序2.3 使用下半部`tasklet`的按键中断驱动程序2.4 测试APP程序
IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
一、Linux内]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（八）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/109758277</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/109758277</guid><author>qq_37284607</author><pubDate>Tue, 17 Nov 2020 23:34:24 +0800</pubDate><description><![CDATA[Linux内核定时器和ioctl函数IMX6ULL嵌入式Linux驱动开发学习Linux内核定时器和ioctl函数定时器使用练手使用`ioctl`函数控制
IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
Linux内核定时器和ioctl函数


内核时间管理
1.1  对于Cortex-M内核来说，一般使用systick硬件定时器作为系统定时器，使用过FreeRTOS等操作系统的也知道，FreeRT]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（七）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/109758174</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/109758174</guid><author>qq_37284607</author><pubDate>Tue, 17 Nov 2020 23:32:57 +0800</pubDate><description><![CDATA[Linux并发与竞争IMX6ULL嵌入式Linux驱动开发学习Linux并发与竞争一、并发与竞争二、原子操作`atomic`三、原子位操作四、自旋锁`spinlock`五、信号量`semaphore`六、互斥锁`mutex`
IMX6ULL嵌入式Linux驱动开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
Linux并发与竞争
一、并发与竞争
多线程对共享资源同时进行访问，比如全局变量，就会产生并发与竞争现象。以打印机为例，当线程A]]></description><category></category></item><item><title><![CDATA[Visio调整图形的间距]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/109632535</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/109632535</guid><author>qq_37284607</author><pubDate>Wed, 11 Nov 2020 22:10:46 +0800</pubDate><description><![CDATA[​		有时候在Visio绘图时我们想要自定义图形之间的间距选项，但是在选中后图形，在开始-&gt;位置-&gt;间距选项中调整了间距后，但是却没有效果。
​		解决这个问题的方法很简单，微软也说明了，点击间距选项上的?即可。

​	在弹出的网页中，可以看到说明


只要使用连接线将图形相连接，不用全部链接，然后选中要调整的图形。

然后再次使用间距选项调整间距即可，最后将连接线删除。


...]]></description><category></category></item><item><title><![CDATA[Word一行排列多个图片并插入题注]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/109571601</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/109571601</guid><author>qq_37284607</author><pubDate>Mon, 09 Nov 2020 10:54:56 +0800</pubDate><description><![CDATA[Word中一行排列多个图片并插入题注1. 首先根据图片要排列成样式，插入表格。2. 然后将图片放入表格中。3. 对图片插入题注4. 取消表格边框5. 其他地方引用
1. 首先根据图片要排列成样式，插入表格。
2. 然后将图片放入表格中。
就像这样。

图片大小可能要调一调。

3. 对图片插入题注

4. 取消表格边框

5. 其他地方引用


...]]></description><category></category></item><item><title><![CDATA[寄存器映射]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/108742855</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/108742855</guid><author>qq_37284607</author><pubDate>Tue, 22 Sep 2020 22:34:49 +0800</pubDate><description><![CDATA[寄存器映射原理
首先看下这行代码
((unsigned int *)(GPIOB_BASE+0X00))

其中GPIOB_BASE是GPIOB寄存器的起始地址，它是一个4字节（32位）的地址。但是电脑不知道它地址，因此需要在前面加一个(unsigned int *)对其进行强制类型转换，这个的作用就是把GPIOB_BASE + 0x00强制转化为地址，因为*符号运算的是地址，所以(unsigned int *)(GPIOB_BASE + 0x00)这一串就成了地址，相当与一个指针常量，当需要向其写入或者读]]></description><category></category></item><item><title><![CDATA[Ubuntu修改默认终端]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/108696812</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/108696812</guid><author>qq_37284607</author><pubDate>Mon, 21 Sep 2020 09:28:14 +0800</pubDate><description><![CDATA[在终端中输入如下命令即可，当然前提是安装了Debian的深度终端。
gsettings set org.gnome.desktop.default-applications.terminal exec /usr/bin/deepin-terminal  

gsettings set org.gnome.desktop.default-applications.terminal exec-arg "-x"



...]]></description><category></category></item><item><title><![CDATA[C语言函数指针]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/108696807</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/108696807</guid><author>qq_37284607</author><pubDate>Mon, 21 Sep 2020 09:27:51 +0800</pubDate><description><![CDATA[C语言函数指针用法
//定义中断处理函数类型
typedef void (*system_Irq_Handler_t)(unsigned int gicciar, void *param);

/** 
 * 定义一种新的变量类型，类型名 *system_Irq_Handler_t 因此用这个类型定义的变量是一个指针
 * 这种指针可以指向 void function(unsigned int gicciar, void *param) 这种类型的函数
 * 常用在函数数组中，这样可以通过函数数组来直接调用]]></description><category></category></item><item><title><![CDATA[IMX6ULL嵌入式Linux驱动学习笔记（六）]]></title><link>https://blog.youkuaiyun.com/qq_37284607/article/details/108696768</link><guid>https://blog.youkuaiyun.com/qq_37284607/article/details/108696768</guid><author>qq_37284607</author><pubDate>Mon, 21 Sep 2020 09:27:09 +0800</pubDate><description><![CDATA[IMX6ULL嵌入式Linux驱动学习IMX6ULL裸机开发学习一、pinctrl子系统二、gpio子系统三、驱动编写
IMX6ULL裸机开发学习
以下内容是我在学习正点原子IMX6ULL开发板alpha中记录的笔记，部分摘录自正点原子IMX6ULL开发手册。
正常工作中进行驱动开发的方式——子系统。
一、pinctrl子系统
​	借助pinctrl来设置一个pin的复用和电气属性。
​	pinctrl 子系统主要工作内容如下：

获取设备树中的pin信息。
根据获取到的pin信息来设置pin的复用功能。
]]></description><category></category></item></channel></rss>