- 博客(122)
- 资源 (7)
- 收藏
- 关注
原创 snap安装repo问题
在ubuntu20.04上用snap安装repo会存在问题,使用用下面的命令从官方源上安装curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/bin/repo
2022-04-16 19:01:52 1002
原创 USB协仪
1 插入检测USB集线器的每个下游端口D+和D-都接了15k的下拉电阻。在usb设备端,全速和高速设备D+上接1.5k的上拉电阻。低速设备D-上接1.5k的上拉电阻。当设备端接入集线器时,集线器D+或D-上的电平被拉高,检测到设备接入。2 描述符一个usb设备只有一个设备描述符。设备描述符时决定该设备有多种配置,每个配置对应一个配置描述符。每个配置描述符又定义该配置有多少个接口,每个接口都有一个接口描述符。每个接口描述符又定义方接口有多个端点,每个端点都有一个端点接口...
2022-01-23 17:44:51 1424
原创 linux中的锁
1 自旋锁在想要获得临界区执行权限时,如果临界区已经被加锁,那么自旋锁并不会阻塞睡眠,等待系统来主动唤醒,而是原地忙轮询资源是否被释放,自旋就是自我旋转。自旋锁的优点是避免了系统的唤醒,自己来执行轮询,如果在临界区的资源代码非常短且是原子的,使用自旋锁避免了各种上下文切换,开销非常小,因此在内核的一些数据结构中自旋锁被广泛的使用。2 互斥锁互斥锁是信号量的一种特例二值信号量。使用互斥锁时在访问共享资源之前对进行加锁操作,在访问完成之后进行解锁操作。加锁后,任何其他...
2022-01-16 15:00:08 1543
原创 I2C总线协仪
1 一次完整的数据传输数据的传输遵循图10 所示的格式,在起始条件S后发送了一个从机地址,这个地址共有7位紧接着的第8位是数据方向位R/W,0表示发送数据,1表示请求数据,数据传输一般由主机产生的停止位P终止,但是如果主机仍希望在总线上通讯它可以产生重复起始条件Sr和寻址另一个从机,而不是首先产生一个停止条件再产生一个起始条件。在这种传输中可能有不同的读写格式结合。1.1 主机发送数据1.2 主机接收数据1.3 复合传输2 时钟同步如果在总线...
2022-01-15 15:48:53 919
原创 NV21图像旋转
// 顺时针90度static void rotateYUV420Degree90(uint8_t * data, uint8_t * yuv, int imageWidth, int imageHeight) { // Rotate the Y luma int i = 0; for (int x = 0; x < imageWidth; x++) { for (int y = imageHeight - 1; y >= 0; y--) { .
2021-12-28 14:03:56 1327
原创 将程序的标准输出重定向到syslog
int main() { FILE *fl; fl = popen("logger","w"); if(fl == NULL) return 1; fprintf(fl,"logger test"); int nf; nf = fileno(fl); dup2(nf,STDOUT_FILENO); dup2(nf,STDERR_FILENO); fprintf(stdout,"wriiten in s.
2021-12-09 17:03:23 739
原创 中断下半部tasklet
在驱动中如果在中断函数中直接调用一些耗时的操作可能会引起系统崩溃,这时可以使用tasklet的调度。1.初始化staticstructtasklet_structt_isr1;tasklet_init(&t_isr1,isr1_lower_half,0);2.回调voidisr1_lower_half(unsignedlongdata){printk("runisr1_lower_half\n");}3.开始调度ta...
2021-10-15 15:46:04 68
原创 macos安装flutter的坑
1.版本macos 10.14android studio 3.5.2flutterv1.9.12.ERROR: Error installing cocoapods: ERROR: Failed to build gem native extensionsudo gem install -n /usr/local/bin cocoapods -v 1.8.4
2021-06-23 23:38:54 260 2
原创 dart可空变量
String?v表示v可以为空,这样在调用一些函数时可能出错,因为这些函数的输入是不能为空的,比如int i =v.trim().length
2021-06-06 19:35:15 589
原创 linux的线程锁
#include <stdio.h>#include <string>#include <iostream>#include <pthread.h>#include <queue>#include <unistd.h>pthread_mutex_t mMutex;pthread_cond_t mCond;pthread_condattr_t mAttr;std::queue<std::string>..
2021-06-03 18:27:47 195
原创 一些好的视频教程
1.flutter“coderwhy003”老师https://www.bilibili.com/video/BV1KE41117XV?from=search&seid=2314793976747751382.
2021-05-30 13:16:20 118
原创 flutter学习1:开发环境搭建
1.一些学习资料flutter中文官网:https://flutter.cn/docs/get-started/installflutter中文网:https://flutterchina.club/docs/flutter实战电子书:https://book.flutterchina.club/一些实战应用:https://github.com/Solido/awesome-flutter2.安装flutter先安装android,然后安装sdk。然后将flutter解压,将flu
2021-05-27 11:38:48 691
原创 django学习3:发邮件
1.使用django自带的邮件服务在工程目录的settings.p文件中设置EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'EMAIL_USE_TLS = False #是否使用TLS安全传输协议(用于在两个通信应用程序之间提供保密性和数据完整性。)EMAIL_USE_SSL = True #是否使用SSL加密,qq企业邮箱要求使用EMAIL_HOST = 'smtp.qq.c
2021-05-20 00:31:19 497
原创 ubuntu20.04安装mysql8并配置远程访问
环境:ubuntu20.048.0.25-0ubuntu0.20.04.11.安装mysqlapt-get install mysql-serverapt-get install mysql-client2.配置mysqlsudo mysql_secure_installation按下面流程配置完成,主要是设置密码root@ailyun:~# sudo mysql_secure_installationSecuring the MySQL server deplo
2021-05-16 18:16:49 959
AM335x NAND启动失败问题Debug方案.pdf
2019-08-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人