led驱动的实现原理尽管 Linux 驱动直接与硬件打交道,但并不是 Linux 驱动直接向硬件中的内存写数据 而是与本机的 ν0 内存( νO Memory ,位于内核空间〉进行交互。所谓 1/0 内存是通过各种接口( PC I 、USB 、蓝牙、以太网口 等〉连接到主机( PC 、手机〉的硬件〈 ...
分类:
移动开发 时间:
2016-05-30 21:40:07
阅读次数:
189
为了节省IO资源单片机会在一个IO上复用很多功能,一般的单片机用到 一个功能后就能再用两外复用的功能了,这就体现出了STM32 GPIO的强大功能了,我们用重映射的方法把其中一个外设映射到其他IO脚上,这样就可以充分利用片内资源! 如下代码即可实现JETG的引脚,用来当做普通引脚来用,简单3行代码即 ...
分类:
其他好文 时间:
2016-05-30 21:32:48
阅读次数:
439
LED将为我闪烁:控制发光二极管 一.编写LED驱动 创建LED驱动的设备文件 1.使用cdev_init函数初始化cdev cdev结构体 struct cdev{ struct kobject kobj; struct module *owner; const struct file_opera ...
分类:
移动开发 时间:
2016-05-30 00:52:14
阅读次数:
249
心得体会:本章讲述了控制发光二级管,该 Linux 驱动用来控 制开发版上的 4个 LED 小灯。也就是说通过向 Linux 驱动发送数据可以控制 LED 小灯的开关。刚开始讲LED驱动的实现原理,Linux 内核提供了多个与 1/0 内存交互的函数,如 ioread16、 ioread32、 io ...
分类:
其他好文 时间:
2016-05-29 21:20:54
阅读次数:
140
心得体会:第八章讲了第二个实验:让开发板发出声音,蜂鸣器驱动将介绍蜂鸣器的实现原犁,并实现一个完整的蜂呜器驱动,可以打开和关闭蜂鸣 器). PW时驱动的实现方式不同于 LED 驱动, PWM 驱动将由多个文件组成。这也是大多数 Linux 驱动的标准实现方式. 刚开始是LIID驱动的代码重用,Lin ...
分类:
其他好文 时间:
2016-05-29 21:11:13
阅读次数:
151
前言 对于初学STM32的人来说,很多基础的知识没有掌握,这些基础知识就成为阻挡他们入门的门槛。因此,今天也把基础的知识分享出来,带领那些还没有迈过这个门槛的人入门。 今天总结“GPIO配置详细”,以F0标准外设库初始化结构体来重点讲解。接着昨天“新建软件工程详细过程”来进行讲解,今天分两大部分内容 ...
分类:
其他好文 时间:
2016-05-28 10:03:20
阅读次数:
201
好记性不如烂笔头,整理一下笔记~ Linux驱动之输入子系统框架
输入子系统将该类驱动划分为3部分
1、核心层 input.c
2、设备层 Gpio_keys.c ...
3、事件处理层 Evdev.c
事件处理层为纯软件的东西,设备层涉及底层硬件,它们通过核心层建立联系,对外提供open write等接口。
1、我们首先来看,核心层 input.c如何向外界提...
分类:
系统相关 时间:
2016-05-27 11:22:58
阅读次数:
291
TI的CC254x芯片 1. SoC 2. RF收发器+8051MCU 128/256KB Code空间. 3. Master或者Slave 4. 可编程flash 5. 8KB SRAM 6. 全软件协议栈, 无版权问题 7. 21个GPIO口, 2个UART或者SPI, 全速USB2.0, 2个 ...
分类:
其他好文 时间:
2016-05-26 14:19:45
阅读次数:
208
Swift是现在Apple主推的语言,2014年新推出的语言,比Scala等“新”语言还要年轻10岁。2015年秋已经开源。目前在linux上可用,最近已经支持Android NDK;在树莓派上有SwiftyGPIO库,可以通过GPIO控制一些硬件。 Object C is old and ugly ...
分类:
移动开发 时间:
2016-05-25 07:02:12
阅读次数:
239
初步概念: 看datasheet的关于时钟与定时器的部分, FCLK供给cpu, HCLK供给AHB总线设备(存储器控制器,中断控制器、LCD控制器、DMA、USB主机控制器等), PCLK供给APB总线上的设备(watchdog、IIS、i2c、 pwm、定时器、ADC、uart、gpio、rtc ...
分类:
系统相关 时间:
2016-05-24 22:35:32
阅读次数:
531