摘要: 最近在调研STM32 F10X,准备把公司AVR的MCU项目迁移到STM32上。在调研STM32 i2c这一部分时,在与i2c slave硬件连接断开后,这时再去读/写 i2c slave需要STM32这边的i2c_read/write函数做一些处理。 刚开始在i2c读写timeout后,添加了如下 阅读全文
posted @ 2020-04-16 18:56 闹闹爸爸 阅读(3223) 评论(0) 推荐(2) 编辑
摘要: STM8S是8 bit单片机在STM8S中 unsigned long是32位, unsigned short和unsigned int都是16位,unsigned char是8位。 以以下代码编译时报了“shift count is too large”的warning, 并且代码执行时也没有达到 阅读全文
posted @ 2020-03-05 15:58 闹闹爸爸 阅读(5560) 评论(0) 推荐(0) 编辑
摘要: 上图是TPS65987的i2c读写协议,和标准i2c协议读写有点出入,实际上是SMBus协议的块读写,即 I2C_FUNC_SMBUS_READ_BLOCK_DATA 和 I2C_FUNC_SMBUS_WRITE_BLOCK_DATA,可参考我的另一篇文章《SMBus协议》。不过也不难理解,在读的时 阅读全文
posted @ 2020-03-05 14:03 闹闹爸爸 阅读(1776) 评论(6) 推荐(0) 编辑
摘要: 内核第一宏 list_entry()有着内核第一宏的美称,它被设计用来通过结构体成员的指针来返回结构体的指针。现在就让我们通过一步步的分析,来揭开它的神秘面纱,感受内核第一宏设计的精妙之处。 整理分析的思路 list_entry()在内核源代码/include/linux目录下的list.h中被定义 阅读全文
posted @ 2019-11-01 14:56 闹闹爸爸 阅读(544) 评论(0) 推荐(1) 编辑
摘要: 公司最近开发的一款产品用到了ambarella H2平台的一款Soc,众所周知ambarella的H2系列的Soc编码能力很强,最高可达4kp60,捕捉上没有用ambarella开发板推荐的几个捕捉卡,是自己用fpga做的一款捕捉卡, 所以捕捉卡驱动需要自己来写。 捕捉卡驱动其实没有什么东西,就是简 阅读全文
posted @ 2019-10-29 17:06 闹闹爸爸 阅读(804) 评论(0) 推荐(0) 编辑
摘要: ambarella H2系列Soc的GPIO口能作PWM使用的个数有限(GPIO0-GPIO3),从PRM里GPIO: Function Selection章节可以得到如何配置GPIO为PWM功能。 假设想把GPIO0配置成PWM输出,根据上图修改ambarella/boards/h2_xxx/bs 阅读全文
posted @ 2019-10-29 15:33 闹闹爸爸 阅读(713) 评论(0) 推荐(0) 编辑
摘要: 1 模块参数 定义模块参数 1、module_param(name, type, perm); 定义一个模块参数, name 变量名 type 数据类型 bool:布尔型 invbool:一个布尔型( true 或者 false)值(相关的变量应当是 int 类型).invbool 类型颠倒了值,所 阅读全文
posted @ 2019-02-01 10:51 闹闹爸爸 阅读(882) 评论(0) 推荐(0) 编辑
摘要: 创建脚本gpio.sh #!/bin/sh PIN=$1 VALUE=$2 if test -d /sys/class/gpio/gpio$PIN/ then echo $VALUE > /sys/class/gpio/gpio$PIN/value else echo $PIN > /sys/cla 阅读全文
posted @ 2018-10-09 15:54 闹闹爸爸 阅读(1291) 评论(0) 推荐(0) 编辑
摘要: U-boot,除非在RAM中调试,一般情况下都是从flash中执行一段代码,然后将flash中储存的代码和数据搬移到ram中,然后跳转到ram中执行。当然这应该也是一般的bootloader的执行方式, 大家都差不多,但是各个bootloader的内存规划(栈,堆之类的)也 不太一样,而且u-boo 阅读全文
posted @ 2018-10-09 14:39 闹闹爸爸 阅读(958) 评论(0) 推荐(0) 编辑
摘要: Make Target Options make命令如下: 下面列出了一些最常用的目标: 编译 进入到 h2_linux_sdk/ambarella/boards/h2_everest 目录下,依次执行以下步骤,即可编译出所需image。 修改amboot配置 在执行完'make h2everest 阅读全文
posted @ 2018-09-21 17:06 闹闹爸爸 阅读(2901) 评论(0) 推荐(0) 编辑