标签 arm 下的文章
100ask 韦东山 驱动大全 I2C驱动 学习笔记
I2C 介绍 i2c device driver: 如何读写数据,组织命令数据等,比如命令中需要包含命令、地址等数据,还有收到原始数据后如何解析。 i2c controller driver: 如何按照 i2c 的协议,来传输 device driver 的数据。 i2c 数据通道 普...
100ask 韦东山 驱动大全 同步互斥 LCD驱动 学习笔记
同步与互斥 atomic,适用于单个变量的操作,不可分割,无锁操作。 spinlock, 忙等,一直占用 cpu, 只能由于非常短的临界区,比较适合多核系统。 semaphore, 用于多个线程访问临界资源,阻塞睡眠。 mutex, 只有一个线程访问临界资源,阻塞睡眠,比 spinlock ...
100ask 韦东山 第五篇 嵌入式 Linux 驱动开发基础知识 视频零散知识点
https://www.bilibili.com/video/BV14f4y1Q7ti 2 hello 驱动 可以参考 drivers\char\misc.c 这个是非常经典的字符设备驱动程序。 printk 打印信息,可以通过 dmesg 来查看。 9 总线设备驱动模型 platfor...
100ask 韦东山 第五篇 嵌入式 Linux 驱动开发基础知识 学习笔记
第1章 Hello 驱动(不涉及硬件操作) 1.1 APP 打开的文件在内核中如何表示 使用 open 打开文件时,传入的 flags、mode 等参数, 读写文件时,文件的当前偏移地址,对文件的操作api,都在 include\linux\fs.h 的 struct file 中。 stru...
100ask 韦东山 第四篇 嵌入式 Linux 应用开发 视频零散知识点
https://www.bilibili.com/video/BV1kk4y117Tu 4【第四章】文件I/O 4_6_综合实验_处理表格 hexdump -C main.c 可以用来查看二进制数据,并且在右侧显示相应的文本对照。 4_7_文件IO系统调用内部机制 /proc/pid/f...
100ask 韦东山 第四篇 嵌入式 Linux 应用开发 学习笔记
2 编译器的使用 2.1 gcc 编译过程 使用 gcc -o hello hello.c -v 之后,会打印出详细的编译过程,去除不重要的信息后,最后剩余的就是三步,分别是:编译为 .s 汇编文件,汇编为 .o 机器码,链接为最终的可执行文件。具体三条信息如下: /usr/lib/gcc/...
stm32cube eth 调试
参考: http://www.waveshare.net/study/article-666-1.html STM32CubeMX系列教程27:ETH https://blog.csdn.net/lan190827/article/details/81500996 STM32F417+DP...
stm32f4 usb 调试
stm32f4 usb 调试,软件调试可以使用 Wireshark 里面的 usb 组件,或者 usb Monitor 。 但是这些软件调试都有一个问题,必须在枚举分配地址之后,才能由软件调试收集到信息。如果在枚举的时候出错,就无法确认具体的错误。 碰到这种情况,只能选用有 usb 协议分析功...
stm32cube f429 sdram 配置
在 cube 中配置时可选 sdram1 和 sdram2,这两个对应的是内部映射的存储区域 sdram1 和 sdram2。如果选择 sdram2,那么访问 0xD000 0000 - 0xDFFF FFFF 之间的地址时,芯片就会使用 sdram2 的控制器。 sdram2 的控制器还可以...
stm32f429 hal 报错 FLASH_FLAG_PGSERR
stm32f429使用 stm32cube 自动生成 eth 代码的时候,运行出现 FLASH_FLAG_PGSERR 错误。 见过调试发现,MX_ETH_Init 中没有对指针进行赋值,就直接写入了,所以出错。 进行下面的修改。 /* USER CODE BEGIN 0 */ static ...
最新回复