自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (19)
  • 收藏
  • 关注

原创 C语言结构体深度剖析

做了挺久的开发,对于C这种东西,我不敢说自己已经精通了,毕竟还是有许多细节在学习的过程中会遗忘,然后再通过实践慢慢去一点点捡回来。所以只能算是熟练级别。     Linux内核的实现博大精深,从offsetof的实现到后面的container_of,为什么通过结构体的的成员就能获得整个结构体的指针呢?这就得益于offsetof宏的实现。关于这个宏,前面的博文也有讲解,但不够深入,今天的这个例子,足

2017-08-28 10:38:22 1560 1

原创 C语言Window控制台实现弹弹方块(单个方块,多个方块)

前面,我们用C语言实现了列表时的学生信息管理系统,那么,window控制台还能做什么好玩的东西呢?http://blog.csdn.net/morixinguan/article/details/77511003这节我们来实现一下Window下的弹弹方块。设计这个小游戏要考虑的问题(1)方块:方块的大小,方块的颜色,方块在Window控制终端的起始位置(x,y的坐标),方块移动的速度,移动的方向。

2017-08-24 21:03:22 4055

原创 MTK平台M非kk版本的OTA差分包的制作方法

制作OTA差分包可以参考以下博文:http://blog.csdn.net/wei_zhi/article/details/50489623同时也可以参考MTK的OTA更新相关的pdf文档。示例如下:ep: ./build/tools/releasetools/ota_from_target_files --block -s ./device/mediatek/build/releasetools

2017-08-24 17:25:24 1224

原创 C语言实现一个列表式的学生信息管理系统(完善)

http://blog.csdn.net/morixinguan/article/details/77489633       上节,我们实现了学生信息管理系统的大多数功能,但还有两个功能没有实现,就是学生信息修改还有学生信息删除了。当然,程序中依然存在诸多的BUG,比如,scanf和getchar函数就是一对冤家,如果用了scanf,再调用getchar,就会出现所谓的输入缓冲区问题,导致程序一

2017-08-23 20:14:59 11853 6

原创 C语言实现一个Window控制台带彩色,且可以用方向键选择并确认的菜单式列表(二) ---学生信息管理系统

http://blog.csdn.net/morixinguan/article/details/77485367上节,我们写了一个简单的列表框架,是关于学生信息管理系统的,这节,我们来把它尽量的完善一下。目前,我这边已经除了学生信息修改以及学生信息删除还没有做好,其余功能以及可以正常使用,我们来看看程序的实现,往后更新了这两个接口,会将本文继续修改。我们来看看代码的实现:student_proj

2017-08-23 00:27:19 2348 2

原创 C语言实现一个Window控制台带彩色,且可以用方向键选择并确认的菜单式列表(一)

在Linux的编程里,管理列表的形式,我们可以使用VT100控制码来进行实现。因为VT100控制码在printf函数中就可以设置显示的行和列,这样实现一个列表选择的GUI界面就非常容易。比如Linux内核中的Make menuconfig。我们可以看到像下面这样的GUI菜单式界面,这样的界面用Linux VT100控制码结合C语言是很容易就可以实现出来的。那么,在Window上想要在控制台实现类似

2017-08-22 20:45:16 10658 9

原创 C语言实现数组的循环左移,右移,翻转

数组结合指针可以实现很多有趣的功能,比如下面这个程序:假设数组为 : 12345如果左移一次即为:23451 ,依次类推如果右移一次即为:51234 ,依次类推翻转则为:54321我们来实现下这个程序:#include #include #include #define NR(x) (sizeof(x)/sizeof(x[0]))//数组左移 int buffer_left_move

2017-08-22 15:57:01 11741 1

原创 C语言结构体位段特性实现断言宏

关于位段的特性这里就不多说了,多去看看相应的C语言书籍都会有介绍了。今天来介绍断言宏。什么是断言宏?断言宏可以认为是校验数据范围的有效性的一个宏的实现。我们来看看代码:#include //结构体位段#define CHECK(x) sizeof(struct {unsigned:(-!!(x));})//检查常量是否在一定范围之内,如果不在范围之内,则编译报错

2017-08-21 23:23:27 1468

原创 C语言结构体数组同时赋值的另类用法

说到C语言结构体数组的同时赋值,许多人一想就会想到用以下的这种方法,咱们来写一个例子:#include struct student{ int a; int b ; int c ; };struct student array1[1000] ;int main(void){ int i ; for(i = 0 ; i < 1000 ; i++) { array[i]

2017-08-21 22:43:04 7705 2

原创 从Tiny4412--mma7660 gsensor驱动探索Linux内核I2C总线驱动框架

源码位于: driver/hwmon/mma7660.c参考博客:http://www.cnblogs.com/pengdonglin137/p/5240416.html参考mma7660的芯片数据手册:https://wenku.baidu.com/view/3ef59c28ed630b1c59eeb521.html 那么驱动分析完了,设备板级配置文件配置在哪里呢?代码位置:/arch/arm/

2017-08-21 21:33:54 2072

转载 MTK平台使用刷机软件刷机错误代码

https://jingyan.baidu.com/article/9c69d48f876a2913c9024efe.html

2017-08-18 17:16:41 1415

原创 strtok函数的应用

strtok函数是字符串函数库中的一个函数,函数原型如下:char *strtok(char s[], const char *delim);作用:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。例如:"hello,hi:what?is!the.matter;" 把这串字符串传入strtok函数,第二个delim写 ",:?!.;" , 这样就可以得到6个不同的子字符串。我们

2017-08-17 16:39:05 701

原创 关于加入NDK编译环境的方法以及如何加入PIE模块的编译选项

之前在编译一个公司的MTK平台的Android开机加密程序的时候死活编译不通过,后面发现,有一样东西没有设置:TOOLPREFIX = $(ANDROID_SRC_PATH)/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-这一项指的是用Android交叉编译工具链中的arm编译器。当设

2017-08-17 11:48:56 1685 1

原创 C语言字符串的另类用法

讲这个例子前,咱们先来看一个简单的程序:字符串数组实现数字转字母:#include #include int main(void){ int num = 15 ; //26个字母 const char str[] = "abcdefghijklmnopqlstuvwxyz" ; //这个做法是将num这个十进制数通过取模转换为字母并输出,从程序看,即可知道是输出p char a

2017-08-16 15:19:17 944

原创 MTK Camera驱动框架学习

前面,我分析了Tpd和Keypad的驱动框架,其实大体都差不多,都是利用平台总线进行管理和注册。那么,今天要总结的是MTK平台的Camera驱动框架。参考博客:http://www.2cto.com/kf/201605/509354.html参考博客:https://wenku.baidu.com/view/5f818d537e21af45b207a807.html 参考博客:http://blo

2017-08-15 21:45:22 5057 2

原创 MTK Keypad驱动框架

上一节,看完了http://blog.csdn.net/morixinguan/article/details/7717020,tpd驱动框架的实现。那么这一节来分析下Keypad驱动框架的实现,其实大同小异,套路也是类似的,我们来看看:

2017-08-14 22:10:52 11816

原创 MTK tpd驱动框架

分析代码架构 mtk_tpd.c位置: kernel-3.18\drivers\input\touchscreen\mediatek\mtk_tpd.c.

2017-08-14 21:33:22 4810 4

原创 C++构造函数可向父类或者本类传参

在C++的构造函数中,子类继承父类,那么,在创建一个子类成员时,可以同时向父类或者子类的构造函数进行传参,实现方法如下:写一个例子:mul_argc.c#include #include using namespace std ; //英雄联盟类 class Hero{ private : int blood ; string name ; public : Hero(int

2017-08-13 18:23:44 3505

原创 MTK平台Android Gsensor数据校准与数据获取

http://blog.csdn.net/morixinguan/article/details/76850600上节,写WIFI MAC地址的时候我们已经知道,MTKAndroid系统的Gsensor校准的数据其实也是存储在NVRAM中的,Gsensor隶属于传感器系统架构。 接下来我们来看下Gsensor校准的基准图像: 那么如何来校准Gsensor的X,Y,Z三个方向呢?我们可以参考MTK提

2017-08-10 20:42:38 6909 1

原创 Android如何客制化adb shell进去后显示shell@xxxx的标识

首先,找到源代码,在external/mksh/mkshrc,打开这个文件后会看到开头有如下脚本:android4.2源码内容如下:: ${TERM:=vt100} ${HOME:=/data} ${MKSH:=/system/bin/sh} ${HOSTNAME:=android}: ${SHELL:=$MKSH} ${USER:=$(typeset x=$(id); x=${x#*\(};

2017-08-09 10:07:39 1680

原创 MTK中NVRAM WARNING的含义

最近在和NVRAM打交道,所以务必要总结一下知识点,如有雷同,纯属巧合。以下的知识点参考MTK_on_line最新的文档总结。在做开发的时候,搜索网络AP经常会看到NVRAM WARING警告的信息,后面会有对应的数值。NVRAM WARNING的含义:(1)NVRAM WARNING = 0x00   表示NVRAM文档不存在(2)NVRAM WARNING = 0x02   表示NVRAM版本

2017-08-09 09:06:04 1415

转载 Git内网服务搭建全过程

看到一篇搭建git服务器的文章,主要是公司内网搭建的,讲得非常详细,比廖雪峰的要完整,必须赞!http://developer.51cto.com/art/201507/483448.htm

2017-08-08 15:12:31 10586

原创 如何从MTK平台机器的NVRAM中获取WIFI mac地址

在MTK的机器中,如果不用特定的工具烧写MAC地址,在开机后打开WIFI后会显示: “NVRAM WARNING: Err=0x10”这就是没有烧写mac地址的原因,所以每次打开wifi,wifi的MAC地址都是一个随机产生的值,为什么会这样?答案在: vendor/mediatek/proprietary/packages/apps/CdsInfo/src/com/mediatek/connne

2017-08-07 16:27:41 7767 2

原创 HTML学习3---排版标记

上节,我们学习了boda常用的属性以及HTML的一些标记,但是图显示的效果却不是那么的好看。原因就是没有排版好,我们这次使用居中来使这个页面更好看一点,顺便多加入几个别的标记。 HTML排版标记(1) : 表示一个段落。一段文字放在p标记里就可以了。         常用属性:align  水平对齐方式,取值:left(左对齐)、cente

2017-08-04 14:06:04 1196

原创 HTML学习2---body常用属性以及文本修饰标记

上节 ,我们了解了网站制作相关的基础知识,也了解了制作网站需要用到的语言,以及一些简单的HTML的基础知识学习笔记:博文链接如下:http://blog.csdn.net/morixinguan/article/details/76457441这节,来写一下body常用属性以及文本修饰标记的常用属性(1)bgColor : 网页的背景色。 如: (2)Background : 网页背景图片地址 。

2017-08-01 23:38:14 2513

尚观教育嵌入式4个月培训课堂笔记

主要是当年在尚观学习嵌入式所记的和总结的课堂笔记

2021-03-01

LV3096用户手册(1).pdf

该手册为扫码模块的用户手册,里面有扫码模块的详细说明。

2019-08-23

STM32F103ZET6_AT24C02.rar

提供对AT24C02的一个最基本的测试demo,只涉及读写两个接口。

2019-08-17

freertos_for_Uart_lcd.rar

该例程基于大彩串口屏,用于学习freertos和大彩串口屏。

2019-08-06

7.OLED0.96_SPI.rar

该项目基于stm32cubeMx进行配置,硬件平台使用的是秉火stm32f103zet6平台。

2019-07-13

QT多个按键同时按下的实现方法

多个按键同时按下的实现方法,目前实现了左、右、上、下、Enter按键以及左+上+Enter的实现,读者可以自行拓展该程序。

2018-11-12

Tiny4412应用测试软件源码

该测试软件在Android源码下编译,可以在external下创建一个目录,加入以上代码和Android.mk,然后编译,使用C语言编写,一共有9个测试项目,可以在开机的时候加入init.rc下执行显示,包括RGB测试、按键测试、LED测试、ADC测试、Gsensor测试、编译日期和版本信息、ddr内存测试、SD卡测试、EMMC测试,也可以自己定制。

2018-11-11

敦泰--FT5X06 Android驱动框架分析-杨源鑫.pdf

自己写的关于敦泰电容屏的原理,以及Linux驱动分析的一个文档,分享给学习TP的工程师,如有错误的见解,欢迎各位多多指教。

2018-01-14

嵌入式C开发经验总结

全部整理软件出自于我的CSDN博客: http://blog.csdn.net/morixinguan

2017-02-18

tiny4412按键驱动开发

基于友善之臂的ARM-cotexA9驱动编写,包含按键驱动的驱动代码和测试程序

2016-02-03

tiny4412蜂鸣器驱动源码

基于友善之臂的ARM-cotexA9驱动编写,包含蜂鸣器驱动的驱动代码和测试程序

2016-02-03

tiny4412led驱动编写源码

基于友善之臂的ARM-cotexA9驱动编写,包含led驱动的驱动代码和测试程序

2016-02-03

V4L2最详尽文档

这是V4L2非常好的资料,详尽剖析,深入剖析的文档。

2016-01-31

HI257数据手册

本手册是hi257摄像头的数据手册,网上找不到的,只有我有

2016-01-28

Ov2686摄像头数据手册

该手册为Ov2686的摄像头数据手册,世间少有!!珍品

2016-01-14

安卓编程指南

安卓入门的相关书籍和资料,写得很好很实用

2016-01-09

模拟电子技术基本知识200例

模拟电子技术课程的相关知识点的总结和应用

2016-01-09

空空如也

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

TA关注的人

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