自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (31)
  • 收藏
  • 关注

原创 富有哲理的10则故事(必读经典)

这里写自定义目录标题前言初心短而小的故事1.搭讪2.相亲3.结婚4.拔牙5.报警6.剑客中长故事1.进京赶考2. 农民阿土3.成就他人前言首先,从一个小故事开始——在一个深深的鼠洞里,一个老鼠家族正在召开会议,会议的中心是怎样在觅食的时候及时发现那只喜欢搞突袭的黑猫。不一会儿,一只小老鼠想出一个好办法——在黑猫的脖子上挂一只铃铛。话一说完,大家齐声说好,但接下来却都沉默了,因为没有哪一只老鼠敢去挂这只铃铛。 这个故事不禁让我浮现出一个念头:与行动相比,有时候,幻想或想象其实是一件再舒服不过的事——它没有

2020-06-07 23:17:31 495 1

原创 变量命名缩写参考

有时候一个变量命名要想上半天,怎么命名合适,怎么才不显得别扭,怎么才显得更舒适,下面提供一些参考,如果某个变量意义一个单词无法表达,可以用多个单词缩写然后用下划线间隔表达,譬如:文件地址:file_addrAaddr = addressapp = applicationarg = argumentasm = assembleasyn = asynchronizationauth = authorization / authenticationavg = averageBbuf

2021-11-30 15:29:53 36

原创 MTK开发 — touch key驱动

本驱动的大概流程是:加载驱动module_init—》注册platform驱动—》解析设备树—》申请gpio与中断—》注册input设备—》创建工作队列用于中断下半部其中涉及驱动相关的知识点有设备树、platform设备驱动总线、gpio/pinctrl子系统、input子系统、中断上/下半部、软中断与工作队列的使用如果要将以上每点都讲清,实在是不容易的,每个知识点都可以长篇大论,本人更喜欢实操,直接上代码,代码中有比较详细的注释,看看应该都能懂!设备树定义了一个touchsensor节

2021-10-13 17:03:14 18

原创 linux驱动 — regalator使用

Regulator,即LDO(low dropout regulator),低压差 线性稳压器,简称稳压器。本篇我们只讨论regalator api的使用,regalator 常用api如下:/* regulator get and put */struct regulator *__must_check regulator_get(struct device *dev, const char *id);struct regulator *__must_check devm_regulator

2021-10-11 11:12:32 18

原创 linux驱动 — 常用API

①of_find_compatible_node 函数 of_find_compatible_node 函数根据 device_type 和 compatible 这两个属性查找指定的节点, 函数原型如下: struct device_node *of_find_compatible_node(struct device_node,*from, const char *type,const char *compatible) 函数参数和返回值含义如下: from:开始查找的节点,如果为.

2021-10-08 14:58:04 42

原创 MTK开发之—修改关机充电动画

关机充电相关文件修改关机充电动画,首先要关注的几个比较重要的文件:①/device目录下的ProjectConfig.mk文件,这是安卓端对boot、kerner传参的配置文件②/vendor/mediatek/proprietary/external/libshowlogo下的cust_display.h文件,这是定义动画logo形状以及位置的头文件③vendor/mediatek/proprietary/external/charger,关机充电实际就是个应用,就在这个目录下,入口即ma

2021-09-17 10:30:55 44

转载 Linux-Kconfig总结与分析

发现一篇很优秀的博文,转载分享一下!转载:https://www.cnblogs.com/lifexy/p/10292742.html使用Kconfig时,需要注意的地方1.在Kconfig中定义的配置宏,前缀都没有"CONFIG_",只有编译内核时,自动生成autoconf.h才会出现前缀.2.如果XX_defconfig板卡配置文件中定义新的宏=y时,而在Kconfig并没有声明它,则内核编译出来的autoconf.h里也不会定义它的.3.如果XX_defconfig板卡配置文件中没有设

2021-08-17 19:40:34 16

原创 linux驱动 — i2c设备总线驱动

前言linux下设备跟驱动是分开的,他们通过总线进行匹配,设备由设备树负责,在设备树中添加相应的结点,系统会自动向总线注册相应的设备,而驱动开发需要负责的主要就是驱动的编写,向总线注册驱动,如果通过of_device_id中的.compatible跟设备匹配成功进执行其中的probe函数。i2c结构体对于i2c设备我们都不陌生,i2c是一种实际存在的物理总线,不像有些字符设备,使用的是虚拟的platform总线,实际上是不存在的,是虚拟出来的总线。在linux下写i2c驱动,掌握4个结构体就够了

2021-08-12 16:36:08 21

原创 linux应用:多线程编程

线程在linux应用开发中是非常常用的,因为有些功能需要实时响应,而有些功能比较耗时,从而引入了并发的概念,即任务调度与时间片轮转,目的只有一个:更高效的利用cpu。那么如果不用线程用别的成吗,有没有其它的可取代线程的呢,比如进程、比如定时器?单纯从功能上说是可以的,但是严格意义上来说没有什么能取代多线程的地位。一、线程跟进程比较:1、线程是程序最基本的运行单位,也是参与系统调度的基本单位,而进程不能直接运行2、线程间切换的开销比进程间切换开销小,创建的速度也比进程创建速度快的多3、系统为.

2021-07-28 21:10:46 48

原创 一个函数超过1000行?

今天我就见到了一个函数超过1300行的。。。今天维护公司的一个老产品,因为要清库存,有一些bug需要修复,开发这个产品的那些同事早已不知去向,查了下git上的提交log,开发过这个产品的有好几个人呢,本来就是在炬芯方案上做的二次开发,现在到我这不知道几手了,有问题,那就查代码改呗,不看不知道,一看吓一跳,什么牛鬼蛇神写的,全局变量满天飞,一个函数动辄几百行,还没什么注释,更有好些函数是上千行的,我倒是不奇怪,几年前我就领教过上1000行一个函数的代码,逻辑重复混乱,TM谁写的,真想揪出来让他把它吃掉。。

2021-07-14 18:24:38 40

原创 人生的意义是什么?

我时常在想,上班的意义是什么,人生的意义又是什么?这份工作是我热爱的吗,这辈子就这么按部就班的过下去了?似乎每隔一段时间我都会迷茫一段时期也许是没有目标,也许是没有信仰,,人如果没有目标跟咸鱼又有什么区别在网上看到这样一段话:世人慌慌张张,不过图碎银几两,偏偏这碎银几两,能解世间惆怅。可让父母晚年安康,呵护幼子成长。但这碎银几两,也断了儿时念想,让少年染上沧桑,压弯了脊梁,让世人愁断肠。世人之所以慌慌张张,是怕来不及,是患得患失在股票论坛里经常看到一些人发今天的收益如何如何,

2021-07-08 15:56:15 14

原创 MTK开发之cpu核开关与频率调节

一、最近碰到MTK芯片cpu时常跑满,四核又经常变为两核,导致各种卡顿,放音乐都卡,所以想强制让它跑四核,让系统跑的流畅一些。1、首先通过adb查看系统cpu有几个核心在/sys/devices/system/cpu目录下,ls一下就可以看到,如果是四核,就是cpu0、cpu1、cpu2、cpu3,如果是双核,就没有cpu2和cpu3。2、查看cpu的某个核有没有启用比如查看cpu0有没有起来,可以查看cat /sys/devices/system/cpu/cpu1/online,0表示

2021-07-07 18:29:45 310 4

原创 ADB常用指令

adb工具的全称是Android Debug Bridge:即android调试桥梁是安卓下开发非常方便的调试工具。adb工具链接如下: https://pan.baidu.com/s/1tPBrxKas3lM5jHnmEpDiVQ 提取码: cdhd无需安装,解压就可以用,将路径添加到环境变量path,就可以通过cmd在命令行直接使用...

2021-06-18 18:37:39 75

原创 Linux下开发怎样才算入门了?

记得开始学单片机的时候,也很想知道自己到底学的怎样了,到了什么水平,到处问人单片机开发怎么才算入门了,最后老师跟我说:能做一个万年历出来就算入门了于是用单片机控制显示器做一个万年历就成了我的目标,通过按键进行日期设置与时间调整,能区分闰年闰月,设置后的时间需要断电保存等。后面终于做出来了,并且显示方面我用了两种实现方式(数码管与LCD1602),当时欣喜若狂,自己心里面终于有底了,总算是入门了。这个万年历在今天看来,是挺简单的,不过在当时也确实是一个比较全面的练手项目,到现在为止我仍然认为这是单片机的

2021-06-15 23:06:55 785 9

原创 关于个人成长的一些思考

1.时光荏苒,岁月如梭,转瞬间参加工作已近十载,不知不觉间已经过了而立之年,发际线不断上移,头发越发稀疏是时间留下最显著的痕迹,曾几何时青涩稚嫩的脸庞,早已深沉、油腻,不得已感慨岁月真是一把杀猪刀,紫了葡萄,黑了木耳,软了香蕉…2.暮然回首,真想给曾经的自己一个大大的拥抱(辛苦了,我的少年),感谢曾经那个努力的自己,感谢那个顶着压力,嘲讽,打击迎难而上的自己,感谢你,那个从小就懂得父母的辛苦,从不向他们抱苦诉怨的自己,那个把所有委屈都藏在心里的自己,曾经所碰到的一切艰难困苦,都是通过你一步一个脚印坚忍的

2021-06-09 10:35:17 93 2

原创 嵌入式软件架构设计

一、前言小生做MCU方面的开发已经很多年了,记得当初开始做项目的时候,实现功能就是我的目标,基本不会关注其它方面,功能的实现已经够让我折腾的了,也没有多少精力关注其它方面,后面慢慢对代码风格、编码规范有一定的讲究,有些代码看起来令人赏心悦目,而有些却不忍直视,再后来发现有些功能模块在一个产品上做了,然后换一个平台(mcu)后,又得调一遍,有些甚至调了一遍又一遍,多几次之后真是烦躁,哲学上有句话叫"人不能两次踏入同一条河流",而我却是一个坑踩了一次又一次,直到实在受不了了,我决定"再也不踩了",于是,软件框

2021-06-02 23:40:21 1004 23

原创 linux驱动 — 中断下半部之tasklet&workqueue

前言linux中断下半部是linux中断处理中非常重要的一个组成,如果没有下半部系统很多情况都不能正常工作,所以我们如果用到了中断,比如gpio中断、定时器中断等最好将大部分工作都放到下半部去处理,中断中只做标记跟激活下半部的工作,尤其是那些需要休眠的、有阻塞的、或者耗时长的处理必须放到下半部的work_queue中,别问我为什么,因为你不这么做的话系统跑到这里就挂掉了。。。Linux实现下半部的机制主要有软中断、tasklet、工作队列和线程化irq,不过基于实际开发中的常用性,本篇只介绍taskle

2021-05-11 17:18:07 46

原创 MTK开发之—为上层提供简易操作文件

背景在实际开发中,底层驱动往往要暴露一些接口供上层应用,比如需要上层对一个gpio进行操作,应用层没办法直接去控制gpio,只能通过驱动层来间接调用,方式有很多,可以将gpio封装到一个字符设备中,或者直接用misc类注册等等,因linux下一切皆文件,我们也可以在驱动层将gpio封装成文件,让应用层操作文件方式来操作gpio;想必做过mcu开发的朋友对AT指令不陌生,AT指令后面加 ‘?’ 号表示查询,加 ‘=’ 表示设置,同样的,在应用层或者adb下,我们可以通过cat与echo对一个文件进行读写,

2021-04-30 16:43:42 108 1

原创 git 使用总结

前言网上与git相关的文章已经有很多了,其中有不少写的很优秀的文章,所以本篇对git的使用就不再详细赘述,本篇列出的是一些跟git相关的指令,与平时使用git时遇到的一些问题处理方法。一、git仓库相关的网址1、Git官网:https://github.com/这个网站因为服务器在国外,所以访问一般比较慢,我们国内相应的有码云2、码云官网:https://gitee.com/可以很方便的将git上的仓库导入码云3、阿里云:https://signin.aliyun.com/这个也不错,不过企

2021-04-28 20:14:35 83

原创 MTK开发之—添加aw21024 i2c设备驱动

从供应商处拿到一驱动led模块的 i2c设备驱动,人家驱动已经基本给我们写好,我们需要做的就是将驱动添加进我们的内核,烧录进我们的板子为我们所用,aw21024驱动与资料:https://download.csdn.net/download/maodewen11/18171562第一步:修改设备树首先按要求将设备树信息添加进我们的设备树文件:/kernel/arch/arm64/boot/dts下的dts文件相应的gpio需要改为我们板子对应的gpio口,例如我的板子aw21024挂载到的是i2c-2

2021-04-27 17:58:39 367

原创 MTK开发之—最简单的触摸按键驱动

现在比较喜欢直接上代码,代码也不算难,就直入主题了!本程序实际包含了设备树、pinctrl子系统、gpio中断、工作队列等的使用,是一个较完善的触摸按键驱动,已在MTK8163上验证!代码实例#include <linux/irq.h>#include <asm/irq.h>#include <asm/io.h>#include <linux/string.h>#include <linux/gpio.h>#include <

2021-04-27 16:13:29 76

原创 linux驱动 — switch_dev类设备的使用

前言在项目中碰到有人用switch_dev_register注册了switch_dev类设备,并且应用层能读到它的状态信息,感觉挺好奇,于是网上搜了些资料,自个又琢磨了一下,算是理解了,现在整理一下。switch_dev是一个开关设备类,跟其它很多类一样的,像misc类,都是对一类设备的总称,使用起来很简单,大部分工作内核已经给你干了,通过switch_dev_register函数注册switch_dev类之后,系统会自动在/sys/class下生成你定义的文件夹,可以进入/sys/class/swit

2021-04-25 20:39:22 405

原创 linux驱动 — timer定时器的使用

前言定时器是我们最常用到的功能,一般用来完成定时功能,本章我们就来学习一下 Linux 内核提供的定时器 API 函数,通过这些定时器 API 函数我们可以完成很多要求定时的应用。Linux内核也提供了短延时函数,比如微秒、纳秒、毫秒延时函数,本章我们就来学习一下这些和时间有关的功能。一、普通定时器使用这种定时精度低,对实时性要求不严格的场合可以用,内核中使用 CONFIG_HZ 来设置自己的系统时钟。打开文件 include/asm-generic/param.h,有如下内容:# unde

2021-04-25 19:54:33 84

原创 MTK开发之—音量大小修改

上电默认音量修改文件路径:/frameworks/base/media/java/android/media/AudioSystem.java找到DEFAULT_STREAM_VOLUME 数组,其中定义的就是各种音频流默认音量大小,比如语音呼叫、系统音量、打电话、播放音乐、闹钟等等; 如下设置的默认音量均是7. /** * M: modify the default stream volume @{ */ public static int[] DEFAULT_STRE

2021-04-21 10:46:46 142

原创 MTK开发之—开机永不灭屏

步骤一:修改配置文件文件路径:/frameworks/base/packages/SettingsProvider/res/values/defaults.xml将<integername=“def_screen_off_timeout”>6000修改为:<integername=“def_screen_off_timeout”>-1步骤二:修改电源管理文件源码/frameworks/base/services/core/java/com/android/server/po

2021-04-20 13:52:58 96

原创 Linux驱动 — 设备树操作常用API

Linux设备树语法详解一文中介绍了设备树的语法,这里主要介绍内核中提供的操作设备树的API,这些API通常都在"include/of.h"中声明。device_node内核中用下面的这个结构描述设备树中的一个节点,后面的API都需要一个device_node对象作为参数传入。//include/of.h 46 struct device_node { 47 const char *name; //节点名 48 const char *type; //设备类型

2021-04-19 17:05:56 61

原创 MTK开发之—强大的DEVICE_ATTR宏

1.简介使用DEVICE_ATTR宏,可以实现驱动程序中在sys目录自动创建文件,我们只需要实现show和store函数即可.使用该宏创建出来的文件,在应用层就能通过cat和echo命令来对文件进行读写驱动设备,实现交互.这个宏真真是极好的,为我们大大地提供了便利,并且非常简单方便好用2.DEVICE_ATTR宏定义DEVICE_ATTR定义位于kernel/include/linux/device.h中,定义如下所示:#define DEVICE_ATTR(_name, _mode, _sho

2021-04-16 16:04:31 77

原创 MTK开发之—常见问题与解决方案

排查方法设备树文件有没有生效,看设备节点gpio配置有没有生效,看生成的.h文件还可以直接进入系统查看各个gpio的模式、状态等驱动有没有生效,首先看串口记录的log,然后看相应的设备节点下有无对应的驱动,能否进行操作gpio不知道哪里被重用了怎么办,很好吧,在mtk_gpio_set下设置log,看是哪个函数调用了,通过dump_stack...

2021-04-13 18:27:12 102

原创 MTK开发之—开发前的准备工作

前言MTK是联发科技股份有限公司的英文简称,英文全称叫MediaTek。联发科技股份有限公司,创立于公元1997年,是世界顶尖的IC专业设计公司,位居全球消费性IC片组的领航地位。产品领域覆盖数码消费、数字电视、光储存、无线通讯等多大系列,是亚洲唯一连续六年蝉联全球前十大IC设计公司唯一的华人企业,被美国《福布斯》杂志评为“亚洲企业50强”。联发科技作为全球IC设计领导厂商,专注于无线通讯及数位媒体等技术领域。公司提供的晶片整合系统解决方案,包含无线通讯、高解析度数位电视、光储存、高解析度DVD等相关产品

2021-04-10 17:33:53 92

原创 MTK开发之—开机动画log修改

开机LOGO修改文件位置启动log文件:\vendor\lkk\customer\oem下的bootlogo.bmp修改bootlogo.bmp文件就修改了开机logo,不过要根据所使用屏幕尺寸/像素进行修改,如果更改了屏幕则还需修改LCM配置文件其它log文件:vendor\mediatek\proprietary\bootable\bootloader\lk\dev\logo各厂商的log文件都在这个目录下,像移动、联通、电信等都有各自的文件文件配置在此目录:vendor\lkk\cu

2021-04-10 15:15:45 130 2

原创 MTK开发之—客制化DCT工具使用指南

简介为了方便开发人员可视化配置gpio,MTK提供了DCT工具,全称是Driver Customization Tool,该工具导入dws文件来产生驱动代码,它是个exe可执行程序,目前只支持在windows下运行,在ubuntu下运行可借助于wine工具或装windows虚拟机。工具及代码具体路径dct工具在:vendor\mediatek\proprietary\bootable\bootloader\preloader\tools\dct下coden.dws文件在: vendor\mediat

2021-04-10 10:27:06 223

原创 linux驱动 — 学习总结

前言linux驱动学习也有一段时间了,但是其中断断续续的,以前是不得要领,一直在门外徘徊,后面也是自己特别感兴趣,感觉linux这东西挺有趣、挺有技术含量,我非得去弄一下不可,有些人说弄linux就得从应用开始,我看了下应用层的代码,这不跟windows下的差不多吗,本人原本是做mcu开发的,像stm32这种,linux应用层的东西感觉用不上也没意思,我应该从驱动开始,趁着工作没那么忙,又仔细学了下,于是有了如下收获,特记录一下:学习记录1、学习了led驱动、beep驱动、按键驱动、其实这些驱动本质都

2021-03-19 20:21:55 74

原创 linux驱动 — 第一个实战驱动模板之Misc驱动

前言前面所讲的字符设备驱动基本是从概念与流程上进行分析的,是用来学习与理解的,在实际应用中我们可不会这么一步一步去实现,在实际中我们往往会使用那些开发快、代码又简洁的途径,linux下都已经为我们准备好了;这就比如你家离镇上有10公里,你要去镇上赶集,可以走路去,可以骑车去,也可以坐车去,完全取决于你自己,不管用什么方式你都能到达,但是在实际中我想应该更多的是坐车去,因为速度快、轻松、少吃马路上的很多灰,但是有些杠精说:我就是要走路去,走路不仅可以锻炼身体又低碳环保,当然,这也是可以的,但是如果你有急事赶

2021-03-15 16:47:19 66

原创 char*(字节数组)转QString

char字节数组类型转QString里边要特别注意的是,数组中含有00时,直接用QString的方法toLatin1()转换会出问题,遇到0就认为结束。下面是字节数组转QString类型的列子 //字节数组转16进制字符串,用于16进制显示 static QString toHexStr(QByteArray data, int len = 0) { QString tempStr= ""; QString hexStr = data.toHex()

2020-12-22 18:26:15 892

原创 手把手教你mysql从入门到玩转

开发环境准备首先安装mysql环境,本文使用的开发工具是Navicat Premium,这是一款数据库管理工具,这个工具安装非常方便、使用也很简单,当然SQL Server Management Studio 工具也是可以的,但是我个人觉得安装麻烦,软件安装包与破解文件如下:链接: https://pan.baidu.com/s/1zrT1CmDDi-pwahR5c80vAg 提取码: 9pky测试是否安装好,点击“开始”—“所有程序”—“MySQL”—然后选择下面的命令行工具“MySQL 5.6 C

2020-12-11 18:24:17 128

原创 最通透的KMP算法详解

前言以前自己写一个字符串匹配或者主串中查找子串的程序时,都是用一个指针指向主串,另一个指针指向子串,然后两指针按字母逐一比较,看着自己写的代码运行一切正常时还沾沾自喜,现在想来~,虽然这种方法也行的通,但是当字符串足够长时,效率会很低,自从看到了KMP算法,我觉得人类的智慧真的超乎想象,无论什么事情总能想出更优更简的解决方法,我们生活中也是,真的很多事情用对了方法能事半功倍,对于我们大部分人来说,自己研究出一种算法真的太难了,但是我们可以站在前人的肩膀上,学习他们的思想与经验,将它们用起来,对我们的

2020-12-09 15:56:08 134

原创 Qt操作Excel文件,附完整工程

…最近因项目需要,需将Qt工具测试到的数据通过Excel文件存储,在Qt下以前没弄过对Excel的操作,网上铺天盖地的一顿好找,终于,皇天不负有心人,Excel方面已经能满足项目需求了,现将代码整理,方便坛友与自己后续使用接口方法截图如下:其中导入到数据库还需完善,其它功能都测试通过,今天实在有点乏了!测试代码创建或者打开一个Excel文件,然后依次写入字符串!测试结果结果显示可以按行累加写入字符串,可以增加sheet,也可以对sheet重命名!核心代码widget.h文件#if

2020-12-03 18:34:18 1501

原创 linux驱动 — 字符设备驱动模板

背景最近学习字符设备驱动,其大致的框架与流程都基本搞懂了,为了方便以后代码重用,写了一个较为完善的模板,以后如果需要写如:led、key、beep等的字符设备驱动,就不需要从O开始,可以直接用来修改调试,代码中有比较清晰的注释,以及错误处理与回收机制,并且经过了初步测试,是通过的该模板的作用:编译生成.ko文件后,通过insmod *.ko加载模块,会自动在/dev目录下生成相应的设备文件,模板中设备文件名称为firdev,同样,卸载模块时会自动将其删除,这主要是device与class这两个结构

2020-08-14 20:19:41 122

原创 linux驱动 — 字符设备驱动分析

前言明白了字符设备驱动基本框架与相关概念之后,我们知道一个字符设备驱动如果想要像文件一样去操作,首先肯定需要有设备号,还需要有个驱动名,然后需要填充file_operations结构体,这样才能实现对设备的具体操作,可以开始写代码了,just do it!接口介绍1、写代码之前,先介绍两个宏module_init() //这个是加载模块的时候调用的,相当于模块入口module_exit() //这个是卸载模块的时候调用的,相当于模块出口2、再介绍两个函数①.注册字符设备驱动函数用regis

2020-08-14 15:52:39 114 1

原创 linux驱动 — 字符设备解析

前言linux字符设备驱动学的是云里雾里,一团乱麻,剪不断理还乱… 放弃?不,反正闲着也是闲着,打王者还老遇到坑,免不了上火!那就一点一点来吧,弄一点是一点问题写字符设备驱动,我们首先需要知道:1、啥是设备号,用来干嘛的2、file_operations结构体的作用3、cdev是啥上面这三个应该就是字符设备驱动的关键了,把它们弄熟了才能更好的编写字符设备驱动概念理解1、啥是设备号,用来干嘛的?设备号又分为主设备号和次设备号主设备号用来区分不同硬件设备类型,如串口和USB之间的区别,

2020-08-13 16:04:31 203

各种CRC16校验C语言程序源码

CRC16校验在通讯中应用广泛,这里不对其理论进行讨论,只对常见的3种实现方法进行测试。方法1选用了一种常见的查表方法,类似的还有512字节、256字等查找表的,至于查找表的生成,这里也略过。

2014-10-22

Qt操作Excel文件

Qt5,excel文件,创建文件,读写文件,增加删除excel内容等,主要接口有新建一个Excel、增加1个Worksheet、向Excel单元格中写入数据、保存Excel、设置sheet名称、导入到数据库等,各接口方便使用 详细描述可见:https://blog.csdn.net/maodewen11/article/details/110558752

2020-12-03

fpga项目经验集锦

大虾们多年积累的项目经验,好资料不敢独享,现传上来供大伙共享!

2012-10-19

diamond 中文版

用lattice软件而又对E文头疼的同胞,这是一份相当省时省事有价值的资料,对你绝对有帮助!

2012-10-19

UART的异步串口通信协议的VHDL语言实现

UART的异步串口通信协议的VHDL语言实现

2011-03-26

Linux-C编程常用API接口-函数

linux中常用API详细介绍,包含应用例程 1 字符测试篇 2 2 字符串转换篇 10 3 内存控制篇 17 4 日期时间篇 22 5 内存及字符串操作篇 28 6 常用数学函数篇 45 7 用户组篇 56 8 数据结构及算法篇 78 9 文件操作篇 85 10 文件内容操作篇 94 11 进程操作篇 109 12 文件权限控制篇 130 13 信号处理篇 153 14 接口处理篇 166 15 环境变量篇 184 16 终端控制篇 186

2018-07-18

Linux-C编程API函数(掌握这些足够).pdf

linux下C编程各种API接口,查找非常方便,并且还有实例,我也是借花谢佛,不知道是哪位大佬整理的,这么好的资源应该跟大家一起分享! 1 字符测试篇 2 字符串转换篇 3 内存控制篇 4 日期时间篇 5 内存及字符串操作篇 6 常用数学函数篇 7 用户组篇 8 数据结构及算法篇 9 文件操作篇 10 文件内容操作篇 11 进程操作篇 12 文件权限控制篇 13 信号处理篇 14 接口处理篇 15 环境变量篇 16 终端控制篇

2020-06-02

RT-Thread编程指导手册

这是一份 RT-Thread 开发人员的开发指引。RT-Thread 做为一份开源软件,它需要由不同 的人采用合作的方式完成,这份文档是开发人员的一个指引。RT-Thread 的开发人员请遵 守这样的编程风格。同时对于使用 RT-Thread 的用户,也可通过这份文档了解 RT-Thread 代码内部一些约定从而比较容易的把握到 RT-Thread 的实现方式。

2018-04-27

经典C++程序员笔试题

C++程序员笔试题,我觉得很好,对刚开始学习的人是一份很好的资料

2012-10-29

DiFi MQTT服务器测试教程(PC测试)

MQTT服务器测试教程 一、 准备工作 硬件:不需要。 电脑:这个就不用写了,现在能见到的电脑基本上都能跑,推荐系统版本 Win7 64 位。 账号 :请打开 www.difiot.com,通过用户注册获取合法的用户名和密码,接下来要用到 这个用户名和密码。 软件:打开 http://mqttfx.jfx4ee.org/,下载 mqtt.fx,并安装好。 固件:不需要 .........

2018-07-18

安富莱与正点原子的编码规范

安富莱编码规范与正点原子编码规范

2021-06-24

aw21024驱动与资料.rar

aw21024是一款led驱动芯片,包含了安卓linux驱动,设备树添加方法与描述等

2021-04-27

学ARM必读arm硬件手册

arm硬件手册 学ARM的人必读之 arm硬件手册 学ARM的人必读之

2011-03-26

\串口通信\基于FPGA的多串口扩展实现

\串口通信\基于FPGA的多串口扩展实现

2011-05-19

linux_help.zip

Linux+API+帮助文档、Linux-C编程常用API接口-函数、Linux C常用API中文手册三个文件一起,方便下载查看

2020-12-10

12小时制时钟的制作

VHDL编写的可调整时间的12小时制时钟,可设置闹钟,程序并不复杂,逐条有注释

2011-06-01

嵌入式学习步骤及方法

嵌入式门槛虽然较高,但也跟其他事物一样,并不是牢不可破。只要我们用心去对待,冬雪终将化去,春风定会吹来,详细介绍嵌入式学习方法与参考书籍

2018-07-18

STM32F103 例程

STM32F103 带操作系统的例程,实现了分任务控制led,按键,串口等功能,有助于初学者学习用

2014-06-10

华为liteOS开发手册

Huawei LiteOS基础内核是最精简的Huawei LiteOS操作系统代码,包括任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器、异常管理等操作系统基础组件,可以单独运行。

2018-04-27

linux下编程规范.pdf

linux下编程规范,对标识符、变量、宏、函数以及程序效率、代码质量与安全做了相应的说明,供大家参考!借花献佛,如有侵权,告知删掉

2020-06-02

linux source code.zip

linux下应用程序 ,C语言编写,从简单的printf、scanf库函数使用到socket编程、服务器以及对话框程序设计,都有详细的源代码,可以供学习与开发提供参考!

2020-06-02

应用电子技术专业技能抽查标准及题库

应用电子技术专业技能抽查标准及题库,硬件,pcb制板,软件开发,电子器件维修

2011-10-17

基于单片机的数字钟设计

基于单片机的数字钟设计 分别用C语言与汇编语言编程 内容详实,易懂

2010-12-11

LCD1602数据手册

LCD1602数据手册 LCD1602数据手册

2011-03-26

红色飓风开发板原理图

红色飓风开发板原理图

2012-07-03

FPGA嵌入式项目开发实战--电子书

FPGA嵌入式项目开发实战--电子书 很全很详细,这是一本不错的书

2011-10-17

SDRAM控制代码

用VHDL硬件描述语言写的SDRAM控制代码,很有借鉴的价值

2012-10-19

DS12C887中文资料

DS12C887中文资料 DS12C887中文资料

2011-03-26

stm32配置文件

stm32配置文件,运行工程有误,缺的就是这个文件

2014-06-10

Mini2440_Linux移植开发实战指南.pdf

Mini2440 之 Linux 移植开发实战指南

2014-10-22

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除