欢迎来到嵌入式培训专家——华清远见嵌入式学院
集团官网
创客学院
研发中心
北京
上海
深圳
成都
南京
西安
武汉
广州
沈阳
济南
重庆
长沙
嵌入式AI就业班
星创客精英班
嵌入式视频教程
C语言视频教程
Linux视频教程
ARM视频教程
原创图书
研发硬实力
关于我们
联系我们
加入我们
总裁寄语
专利软著
当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 >
Android硬件抽象层(HAL)深入剖析(一)
本文内容是基于Android4.0源码分析得到。 android HAL是什么?为什么有它? 硬件抽象层是介于android内核kernel和上层之间的抽象出来的一层结构。他是对linux驱动的一个封装,对上层提供统一接口,上层应用不必知道下层硬件具体怎么实现工作的,它屏蔽了底层...…
WebView的简单使用
有时候我们可能会碰到一些比较特殊的需求,比如说要求在应用程序里展示一些网页。相信每个人都知道,加载和显示网页通常都是浏览器的任务,但是需求里又明确指出,不允许打开系统浏览器,而我们当然也不可能自己去编写一个浏览器出来,这时应该怎么办呢? 不...…
Android 异步任务AsyncTask
在日常的开发过程中,Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行,当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图...…
sqlite入门基础(一):sqlite3_open,sqlite3_exec,slite3_close
打开数据库链接sqlite3_open用法 原型: int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); 用这个函数开始数据库操作。需要传入两个参数,一是数据库文件名,比如:E:/test.db。文...…
静态库和动态库的制作
一、什么叫做库: 库:二进制的程序,能被操作系统载入内存中执行 二、Linux下的库有两种: 静态库和共享库(动态库),二者的不同点在于代码载入的时刻不同。 A、静态库在程序编译的时候并会被连接到目标代码中,程序运行时将不再需要该静态库,因此体积较大...…
scanf函数简单问题讨论
曾经错的几个地方:(xpsp2,vc6.0环境下) 1.空白符问题 #include main() { int a; printf(input the data\n); scanf(%d\n,a);//这里多了一个回车符\n printf(%d,a); return 0; } 结果要输入两个数程序才结束,而不是预期的一个。why? 原因:用空白符结尾时,...…
arduino花式点灯续
之前我们使用Arduino 实现了点灯,闪烁灯,串口点灯以及与上位机结合的点灯。这一次我们将实现一个UDP服务器接受命令实现点灯,以及使用Intel Edison开发板实现点灯。 一、UDP实现点灯 UDP服务器是一种网络通信采取的正常方式。使用udp协议实现快速的网络通...…
C语言预处理命令解析
C语言的源代码中可以包括各种编译指令,这些指令就称之为预处理命令。虽然它们实际上不是c语言的一部分,但却扩展了c程序设计的环境,预处理程序和注释简化程序开发过程,并且提高程序的可读性。然而这些命令是在编译前由预处理程序对源文件的预处理文件进行...…
回到顶部