迟思堂工作室 | 李迟的技术主页

2017年个人总结

2017年个人总结
时光飞逝,2017年过去了,新的一年开始了,旧的一年发生很多事,心理变化也很大,这篇总结就改一改文风。 流水账 2017年年初,早上6点起床从南宁赶火车,到梧州和父母一起接我娃李大锤出院。李大锤的到来,让家里多了笑声,但更多了矛盾。农历正月十六回家,把老婆和大锤接到南宁,开始一家三口的生活。 总的来说,1月份和2月份,在上班和通话中度过,在内心纠结中度过。 2月最后一天,中午在科技园吃午饭...

嵌入式Linux入门:概述

嵌入式Linux入门:概述
李迟按: 嵌入式入门文章比比皆是,不同的人有不同的入门方法。本文就结合笔者经历写一写个人的嵌入式Linux入门的一些步骤和经验。不当之处,望方家指正。 在正式开始之前,先花一点时间写写笔者学习的经历。我是计算机专业,因此,对于模拟电路、数字电路、操作系统原理、数据库原理、编译原理、计算组成原理、计算机体系结构、数据结构等等课程,都是必修课。我虽然都不精通,但起码是学习了。 我从大二...

Python实现阳历转农历功能

Python实现阳历转农历功能

去年我家李大锤出生,办出生证明前根据老家族谱、八字、五行起名字,我起了十几个,然后再请村里大叔公算了一下。

于是心血来潮,决定研究一下阳历转换农历的算法,但网上几乎都是几种文章(或其演绎版本),笔者看了看,好像能得到正常结果,但没深入理解算法。为了练手Python,决定自己实现。

使用python实现GBK转unicode码查询表

使用python实现GBK转unicode码查询表

接触python有一段时间了,但没有专门学习基础知识,写代码时总是到网上找资料。不过,相信经过练习可以慢慢积累。本文拿以前写的小程序练手。参见文章《GBK转unicode码查询表的改进》。

Linux内核小笔记:spin_lock锁内不能使用sleep休眠

Linux内核小笔记:spin_lock锁内不能使用sleep休眠

有一个字符驱动,内部ioctl函数不同的分支均使用spin_lock和spin_unlock,以保证对外设操作的原子性。但是,有一个功能需要对一个GPIO引脚设置上下沿,于是就使用msplee来延时。结果应用层程序在多个线程中调用该驱动提供的ioctl接口时,发现系列卡死了,只能手动复位。

我的2016年个人总结

我的2016年个人总结
时间过得真快,2016年过去了,新的一年开始了。站在2017年起点上,总结2016年,以此记念。 今年的主题,可用“转变”一词概括。 部门合并之初,主管就将部门开发人员分成“平台组”和“方案组”,我作为平台组组长。不久后,主管将做底层平台开发的人慢慢向方案发展。一年多后公司高层又开始重视平台,一瞬间平台组要预研5个新SOC,于是主管又重新梳理部门,又将部门开发人员分成“平台组”和“方案组”,我变成组员...

我的内核学习笔记12:linux i2c-gpio驱动应用实例

我的内核学习笔记12:linux i2c-gpio驱动应用实例
linux内核的i2c-gpio是使用GPIO模拟I2C协议的驱动,只需要配置2根GPIO即可使用。Linux的I2C子系统比较复杂,笔者暂时还没有研究。本着“实用”的目的,介绍一下如何使用这个驱动及一些注意事项。 一、概述 Linux内核很多驱动都使用到I2C子系统。如EEPROM、RTC等。 GPIO模拟I2C协议的驱动位于drivers/i2c/busses目录。驱动名称为“i2c-gpio”,驱动文件为drivers/i2c/busses/i2c-gpio.c。 二、内核配置 本文基于...