嵌入式
文章平均质量分 73
linzhihan7410
这个作者很懒,什么都没留下…
展开
-
STM32之中断(按键)
下面将以一个按键实例来说说外部中断的配置方式一个程序的中断流程:配置外部中断(包括GPIO和EXTI)->配置NVIC(分组及优先级)->编写中断服务函数第一步: 配置外部中断: void EXTI_PE5_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; //具体的GPIO可以查看之前的博客 EXTI_InitType原创 2016-07-13 02:16:59 · 2647 阅读 · 0 评论 -
RTOS与linux区别
一句话解释: linux是分时系统,不过可以通过配置内核改成实时。 嵌入式Linux 系统是在原来Linux的发行版本之上进行了优化和改进的,用于嵌入式的移动终端等设备的嵌入式Linux系统现在基本上都是实时性较高的,但有些LiNUX系统还是分时系统,实时操作系统 实时操作系统 英文称Real Time Operating System,简称RTOS。 1.实时操作系统定义转载 2016-09-20 17:40:27 · 19137 阅读 · 0 评论 -
Android Studio 2.2 来啦
今年的 I/O 2016 Google 放出了 Android Studio 2.2 的预览版,改进了多项功能,只不过为了保证公司项目不受影响,我一般都不安装预览版的,因为预览版意味着不稳定,可能遇到各种意想不到的坑,昨天,Google 终于发布了 Android Studio 2.2 的正式版,于是赶紧第一时间体验了下,按照 Google 的说法本次更新包含了三个方面:speed, smarts,转载 2016-09-21 10:40:59 · 316 阅读 · 0 评论 -
使用pull解析用xml方式存储的数据
xml数据格式通常有3种解析方式:dom,sax,pull,现在一般用pull方式,pull是安卓内置的解析器.使用pull解析用xml的话,xml文件是一层层节点往里剖析的,例如下面的xml,从进入xinxi节点开始,一直往里剖析节点,并根据用户自己的条件判断得到相应的数据 (这里的lianxiren在下面的代码中是被dianhuaben替换了)流程: 1.调用ja原创 2016-11-28 21:27:15 · 447 阅读 · 0 评论 -
用json方式存储数据
SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集.JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等), 这些特性使JSON成为理想的数据交换语言,易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速原创 2016-11-30 00:09:48 · 2383 阅读 · 0 评论 -
用SQLiteDatabase类存储数据
SQLite简介: SQLite是用C语言写的小型嵌入式关系型数据库.占用资源非常低,在嵌入式设备中,只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合.安卓系统里自带SQLite数据库.SQLite支持任意类型的数据,常用的数据类型有:integer(整数)、real(小数)、text(文字)、blob(任意类型)、NULL(原创 2016-12-02 00:26:53 · 503 阅读 · 0 评论 -
用SQLiteOpenHelper类存储数据
Android平台提供给我们一个数据库辅助类来创建或打开数据库,这个辅助类继承自SQLiteOpenHelper类 SQLiteOpenHelper创建的数据库所在位置是在: 手机内存盘里的根目录下/data/data/应用软件包名/databases/SQLiteOpenHelper类的应用: 流程: 一.创建数据库 二.关闭数据库(在页面关闭的时候使用)原创 2016-12-02 21:57:28 · 714 阅读 · 0 评论 -
Android基本游戏循环
开始前必须知道的知识: 视觉暂留 视觉暂留现象即视觉暂停现象(Persistence of vision,Visual staying phenomenon,duration of vision)又称“余晖效应”. 1824年由英国伦敦大学教授皮特‘马克’罗葛特在他的研究报告《移动物体的视觉暂留现象》中最先提出. 人眼在观察景物时,光信号传入大脑神经,需经过一段短暂的时间,光的作用结束后,视原创 2016-12-04 11:33:58 · 320 阅读 · 0 评论 -
Android GPS使用
Android中的LocationManager提供了一系列方法来处理地理位置相关的问题 通过getLastKnownLocation(String provider)以及requestLocationUpdates(String provider, long minTime, float minDistance, LocationListener listener)方法可以获取到当前位置此类提供原创 2016-12-05 22:42:51 · 619 阅读 · 0 评论 -
AndroidWIFI的基本实现
AndroidWIFI需要知道的WIFI状态以及WIFI权限:WIFI网卡的状态: 1.WIFI_STATE_DISABLED //WIFI网卡不可用 2.WIFI_STATE_DISABLING //WIFI网卡正在关闭 3.WIFI_STATE_ENABLED //WIFI网卡可用 4.WIFI_STATE_ENABLING //WIFI网原创 2016-12-13 22:55:43 · 767 阅读 · 2 评论 -
Android音频和震动的基本实现
Android为音频和震动功能提供了两个类: MediaPlayer 播放器类 Vibrator 震动类实现效果:打开应用时,播放一段音乐并且震动 (这里没有用按键做操作停止播放,继续播放,可以使用MediaPlayer.start()以及MediaPlayer.pause()做播放和暂停(暂停这里需要记录播放的时长))音频流程 inits(): 零.在res目录下创建ra原创 2016-12-07 21:47:58 · 951 阅读 · 0 评论 -
使用javaIO流往SD卡里存储数据:
用javaIO流写数据到SD卡上 流程: 一.判断sd卡是否存在 二.获得sd卡的路径 三.调用javaIO流 四.用javaIO流把数据写到sd卡上 五.关闭javaIO流 六.在Androidmanifest.xml下添加读写sd卡权限(在application标签外)<uses-permission android:name="an原创 2016-11-27 17:18:43 · 592 阅读 · 0 评论 -
使用Xml文件格式存储数据
xml数据格式: 存储格式是以节点为主,一个节点衍生出另外的子节点(比如name和phone节点属于lianxiren,lianxiren节点属于xinxi)存储流程(生成xml数据格式): 1.通过DocumentBuilderFactory获得DocumentBuilder 2.创建Document接口进行DOM转换 3.建立数据节点 4.把数原创 2016-11-27 21:18:42 · 3133 阅读 · 0 评论 -
用HttpURLConnection访问网络
本次要实现的功能为 1.用HttpURLConnection接收网络数据 2.用HttpURLConnection发送数据给网络,并获得网络响应的数据。1.流程:用HttpURLConnection接收网络数据 第一步: 新建一个子线程来写通信代码 第二步: 用URL类处理访问地址 第三步: 用URL类里的openConnection()方法建立网络连接原创 2016-12-18 21:48:08 · 714 阅读 · 0 评论 -
Android 开发中调用google语音接口
最近项目开发中需求中要采用多种的输入方式,于是乎想起google的语音搜索做了一下尝试,做了一个简单的语音识别的demo,总结起来,大致的过程如下: 一、检查Androird手机上是否装上了google的语音搜索(一般Android的手机都会自带,没有的话需要你自己手动下载) [java] view plain copy PackageManager pm = getPackageManage转载 2016-09-20 16:59:04 · 1798 阅读 · 0 评论 -
linux BSP开发指导
引言嵌入式系统由硬件环境、嵌入式操作系统和应用程序组成,硬件环境是操作系统和应用程序运行的硬件平台,它随应用的不同而有不同的要求。硬件平台的多样性是嵌入式系统的主要特点,如何使嵌入式操作系统在不同的硬件平台上有效地运行,是嵌入式系统开发中需要解决的关键问题。解决的方法是在硬件平台和操作系统之间提供硬件相关层来屏蔽这些硬件的差异,给操作系统提供统一的运行环境,这种硬件相关层就是嵌入式系统中的板级支持包转载 2016-09-19 15:13:59 · 934 阅读 · 0 评论 -
STM32之RTC实时时钟
RTC实时时钟简介: STM32的RTC外设,实质是一个掉电后还继续运行的定时器,从定时器的角度来看,相对于通用定时器TIM外设,它的功能十分简单,只有计时功能(也可以触发中断).但是从掉电还能继续运行来看,它是STM32中唯一一个具有这个功能功能的外设.(RTC外设的复杂之处不在于它的定时,而在于它掉电还可以继续运行的特性) 所谓掉电,是指电源Vpp断开的情况下,为了RTC外设掉电可以原创 2016-08-12 22:25:35 · 43099 阅读 · 7 评论 -
STM32之ADC_1
STM32的ADC的简介: ADC(Analog to Digital Converter),模/数转换器。在模拟信号需要以数字形式处理、存储或传输时,模/数转换器几乎必不可少。 STM32在片上集成的ADC外设非常强大。例如STM32F103xC 、STM32F103xD和STM32F103xE增强型产品,内嵌3个12位的ADC,每个ADC共用多达21个外部通道,可以实现单次或多次扫描转换。原创 2016-07-24 21:51:02 · 2876 阅读 · 0 评论 -
STM32之SysTick(系统定时器)
SysTick定时器是被捆绑在NVIC中的,用于产生SysTick异常(异常号是15)。(同样,玩过51单片机的都知道定时器的作用了)在STM32在内核部分是包含了一个简单的定时器–SysTick timer。因为在所有的Cortex-M3芯片上都有这个定时器,所以软件在不同芯片生产厂商的Cortex-M3器件间的一只工作就得以化简。 该定时器的时钟源可以是内部时钟( FCLK, CM3 上的自由原创 2016-07-14 20:35:38 · 6280 阅读 · 1 评论 -
关于嵌入式分享技术
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2016-07-05 02:05:53 · 363 阅读 · 0 评论 -
STM32之ADC_2(DMA实例)
实例分析:(采用DMA模式)mian函数: extern __IO u16 ADC_ConvertedValue;//ADC转换的电压值,是在ADC1_Init()所属的文本中定义的 float ADC_ConvertedValueLocal;//用来保存转换计算后的电压值 int main(void) { USART1_Config(); //串口配置原创 2016-07-27 21:32:35 · 13818 阅读 · 1 评论 -
STM32之USART(串口通信)
如果你看过《STM32的中文手册》,你会发现STM32的串口是非常强大的,不仅支持最基本的通用串口同步,异步通讯,还具有LAN总线的功能(局域互联网),IRDA功能(红外通讯),SmartCard功能异步串口通讯协议: 这里介绍的是串口最基本,最常用的方式,全双工,异步通讯方式. 通过串口的通讯协议,我们知道要配置串口通讯,至少要配置几个参数: 字长(一次传送的数据长度); 波特率(每秒传输原创 2016-07-16 01:55:29 · 13365 阅读 · 2 评论 -
STM32之ADC_3(内部通道)
ADC的内部通道: STM32的ADC除了可以用外部通道来采集外部模拟电压信号之外,还有两个内部通道16和17。其中通道16是连接至芯片上的温度传感器,通道17是连接至内部电源模块.(所以这两个通道可以用来检测STM32芯片d额温度和电源状态,就可以检测芯片运行的状态啦!)温度检测实例: 通道16是把内部温度传感器输出的模拟电压转换成数字值,通过公式运算我们就可以得到温度值.内部温度原创 2016-07-29 18:37:07 · 6058 阅读 · 0 评论 -
STM32之DMA(直接存储器存储)
DMA简介: 在硬件系统中,主要由CPU(内核),外设,内存(SRAM),总线等结构组成,数据就经常要在内存与外设之间传输转移,或者是从外设A转移到外设B. DMA(Direct Memory Access)直接存储器存储,是一种可以大大减轻CPU工作量的数据存储方式. 数据转移的一般方式: 例如当CPU需要处理由ADC外设采集回来的数据时,CPU首先要把数 据从ADC外设的寄存器读取到内原创 2016-07-19 22:41:06 · 6583 阅读 · 1 评论 -
STM32?I2C-EEPROM
I2C????: I2C(inter-integrated Circuit)????Phiilps?????,???????,??????,?????(??USART,CAN???????),??????????????????(IC)?????. (??I2C????,?????I2C?????????) ???: 1,????????,?????????(SDA)原创 2016-08-02 00:24:17 · 2069 阅读 · 1 评论 -
STM32之SPI_FLASH
SPI的简介: SPI协议(Serial Peripheral Interface),即是串行外围设备接口,是一种高速全双工的通信总线,它是由摩托罗拉公司提出的,他被广泛的使用在ADC,LEC等设备与MCU间通讯的场合.SPI信号线: SPI总线包含4条总线,分别是为SS(PS:这里用SS代替,起始还有一个非号—在顶上),SCK,MOSI,MISO。 SS(Slave select)原创 2016-08-05 18:21:41 · 1621 阅读 · 0 评论 -
STM32之I2C_EEPROM读写
EEPROM的数据组织形式: EEPROM设备把它的存储矩阵进行了分页处理: 型号是AT24C02的EEPROM分为32页,每一页可以存储8个字节的数据,若在同一页写入超过8字节,则超过的部分会被写在该页的起始地址(也就是一开始写好的部分会被覆盖). 为了把连续的缓冲区数组按页写入到 EEPROM ,就需要对缓冲区进行分页处理.I2C_EE_BufferWrite()是根据输入的缓冲区大小参数原创 2016-08-02 23:16:45 · 10056 阅读 · 0 评论 -
STM32之SPI_FLASH(实例)
本实例用的是STM32F103VET6平台,它有3个SPI接口(这里使用SPI1),各信号线连接到FLASH(型号:W25X16)的CS,CLK,DO,DIO线,以实现SPI通讯,对FLASH进行读写. (这里采用主模式,全双工通讯,通过查询发送数据寄存器和接收数据寄存器状态确保通讯正常) mian函数: 1#define sFLASH_ID 0xEF3015(前面加个1,免得变大) u32原创 2016-08-06 21:58:36 · 21875 阅读 · 1 评论 -
STM32之定时器
定时器功能简介: 相对于SysTick这种一般只用于系统时钟的计时定时器,STM32的定时器外设功能是非常强大的.(仅在《STM32参考手册》中对定时器的介绍就已经占了100多页) STM32一共有8个都为16位的定时器.其中TIM6,TIM7是基本定时器,TIM2,TIM3,TIM4,TIM5是通用定时器,TIM1和TIM8是高级定时器,这些定时器使STM32具有定时,信号的频率测量,信号的P原创 2016-08-09 21:41:06 · 2557 阅读 · 1 评论 -
STM32之定时器(实例)
PWM输出实例: PWM在电力电子技术中占据着重要的地位,被广泛地用在逆变电路之中。利用STM32定时器的PWM输出功能,可以直接获取PWM波。根据面积等效原理,利用规则采样法、查表法可以调制出SPWM波及各种调制PWM波形。 这里实现的是输入占空比固定的PWM波形 PS: 通用定时器TIM3产生4路不同占空比的PWM波。(仅仅适合本实例)) TIM原创 2016-08-09 21:48:08 · 5876 阅读 · 0 评论 -
Android使用DefaultHttpClient访问要登录的网络
用DefaultHttpClient访问要登录的网络有时候,有一些网站不光是浏览,还需要登录才能访问某些版块,这里就涉及了session\cookie等问题. Android中提供了一个DefaultHttpClient类来解决登录和访问的接口问题DefaultHttpClient访问这类性质的网络数据步骤如下: 第一步 调用DefaultHttpClient类 第二步 新建一个子线程来原创 2016-12-23 01:06:48 · 1515 阅读 · 0 评论