基于Cortex-A9 LED汇编、C语言驱动编写
基于Cortex-A9 LED汇编、C语言驱动编写ARM系列文章合集如下:《从0学arm合集》0. 前言一般我们购买一个开发板,厂家都会给出对应的电路图文件,我们可以通过搜索对应名
ARM系列文章合集如下:
《从0学arm合集》
0. 前言
一般我们购买一个开发板,厂家都会给出对应的电路图文件,我们可以通过搜索对应名称来查找到对应的外设。对于驱动工程师来说,我们只需要知道外设与SOC交互的一些数据线和信号线即可。
用主控芯片控制这些外设的一般步骤:
看电路原理图,弄明白主控芯片和外设是怎么连接的,对于驱动工程师来说,主要是看外设的一些clk、数据引脚、控制引脚是如何连接的;外设一般都会连接到SOC的1个或者多个控制器上,比如i2c、spi、gpio等,有的是数据线有的是信号线,中断线等;根据电路连接和需求对主控芯片进行设置,往往对外设的设置都是通过寄存器操作实现;书写相应代码,实现功能,不同类型的外设,代码结构也不尽相同,比如按键,我们既可以通过轮询方式读取按键信息,也可以通过中断方式来读取。
下面我们就以华清远见的fs4412开发板为例来看如何编写led的裸机程序。SOC exynos 4412 datahseet 下载地址:
https://download.csdn.net/download/daocaokafei/12533438
一、LED灯电路图
首先看下led电路图:
LED电路图该板子有4个LED,是发光二极管,有电流是为蓝色;led都接了上拉电阻;三极管的基极接了SOC的某个GPIO引脚;比如GPX1_0,当该引脚为高电平是,三极管pn结导通,于是LED3两侧就有了电势差,LED3被点亮,如果该引脚为低电平,pn结截止,LED3两侧就没有了电势差,LED3熄灭。
下面是CPU核访问GPIO控制器的数据通路:
AHB:高速总线APB Bridge:APB总线桥APB:外设总线,低速总线GPIO挂载在APB总线上
GPIO 与 SOC
由上图可知,cpu要访问GPIO的寄存器需要经过的路径。
3 4 首页 下一页 上一页 尾页-
全新户外设计70 种运动模式,华米 Amazfit Ares 智能手表正式发布2020-05-19
-
Nreal Light全新体验 发力外设及韩国市场2019-11-22