GPIO 是ARM芯片最基本的输入输出通道,在ADS下操作就是一个单片机工作,直接读写其寄存器。在ARM9平台上,Windows CE系统将GPIO的实地址(例如2410的GPIO的基地址为0x56000000)映射到虚拟地址空间(GPIO对应为0xB1600000),这 样,通过对这段虚拟地址空间的操作,就能够完成对GPIO或者其他片内资源的控制、输入输出工作。
要操作一个平台的GPIO,在其对应BSP中按照基地址,找到虚拟地址,并且找到方便操作这个地址的数据结构就可以了,关键函数就是 VirtualAlloc和VirtualCopy。并且CE的方便之处就是用户态的应用程序仍然可以使用这两个函数来访问所有这些虚拟空间,对于不太复 杂的程序,甚至可以省略写驱动直接在应用程序中操作,其实在CE6之前,这些驱动也是工作在用户态的。
下面以操作Samsung S3C2410的GPIO为例,讲述这个步骤:
1.首先在BSP中的s2410.h文件,找到虚拟地址映射以及操作GPIO的寄存器结构体(这个在自己制作一些特殊设备的BSP时,会依据需要而发生更改)
//
// Registers : I/O port
//#define IOP_BASE 0xB1600000 // 0x56000000
typedef struct {
unsigned int rGPACON; // 00
unsigned int rGPADAT;
unsigned int rPAD1[2];
unsigned int rGPBCON; // 10
unsigned int rGPBDAT;
unsigned int rGPBUP;
unsigned int rPAD2;
unsigned int rGPCCON; // 20
unsigned int rGPCDAT;
unsigned int rGPCUP;
unsigned int rPAD3;
unsigned int rGPDCON; // 30
unsigned int rGPDDAT;
unsigned int rGPDUP;
unsigned int rPAD4;
unsigned int rGPECON; // 40
unsigned int rGPEDAT;
unsigned int rGPEUP;
unsigned int rPAD5;
unsigned int rGPFCON; // 50
unsigned int rGPFDAT;
unsigned int rGPFUP;
unsigned int rPAD6;
unsigned int rGPGCON; // 60
unsigned int rGPGDAT;
unsigned int rGPGUP;
unsigned int rPAD7;
unsigned int rGPHCON; // 70
unsigned int rGPHDAT;
unsigned int rGPHUP;
unsigned int rPAD8;
unsigned int rMISCCR; // 80
unsigned int rDCKCON;
unsigned int rEXTINT0;
unsigned int rEXTINT1;
unsigned int rEXTINT2; // 90
unsigned int rEINTFLT0;
unsigned int rEINTFLT1;
unsigned int rEINTFLT2;
unsigned int rEINTFLT3; // A0
unsigned int rEINTMASK;
unsigned int rEINTPEND;
unsigned int rGSTATUS0; // AC
unsigned int rGSTATUS1; // B0
unsigned int rGSTATUS2; // B4
unsigned int rGSTATUS3; // B8
unsigned int rGSTATUS4; // BC
}IOPreg;
将这些复制备用。
2.在EVC中建立一个应用程序工程,由于VirtualCopy函数没有在头文件中定义,但是在coredll.lib里面提供了符号连接,所以我们这里直接添加一个函数定义就OK了。
......
更多内容请点击查看全文:http://www.hzlitai.com.cn/article/ARM9-article/system/1699.html
Windows CE下操作GPIO的方法(以ARM9 S3C2410为例)
关键词: Windows 操作 方法 S3C2410 为例
-
硬件资源特点:
- 核心板为6层板,扩展板为4层板,优秀的PCB工艺
- SDRAM总线主频(HCLK)真正做到133MHz, 普通开发板均为100MHz.
- 独具可编程逻辑器件CPLD,代码开放
- 具有数字摄像头接口;同时支持30万像素摄像头和130万像素摄像头
- 支持JTAG仿真调试
- 硬件电路兼容大页(2048字节)Nandflash、128M SDRAM
- 金手指扩展引脚200针,充分扩展了资源。一般产品只有144针。 软件资源特点:
- 提供4套操作系统资源;
- WINCE5.0:
- 1>提供支持USB下载的eboot.
- 2>完全自动兼容大小页的NANDFLASH(更改NANDFLASH无需修改代码).
- 3>修改注册表就可以旋转屏幕.
- 4>支持注册表设置永久保存.
- 5>支持SDIO设备;
- 6>提供摄像头驱动和测试程序源码。
- .Linux2.4/2.6:
- 1> 支持yaffs文件系统.
- 2> uboot高速下载,整个系统在Nandflash上.
- 3>提供LED,buttons例子驱动和测试程序源码;
- 4>支持30万象素摄像头,具备应用程序源码
- 5>支持PPP,具备pppd
- 6>boa动态Web服务器实例
开发板尺寸:148(W)×104(H) 单位:mm
新增USB无线网卡(选配)
该产品支持无缝漫游功能,可以方便地与其它的11b、11g无线设备连接。这款USB无线网卡提供两种工作模式:集中控制式和对等式;安全方面支持 64/128/152位WEP数据加密,同时支持WPA、IEEE 802.1X、TKIP、AES等加密与安全机制。支持无缝漫游功能;另外还可以方便地与其它的11b、11g无线设备连接。
主要性能
◇ 网络标准 IEEE 802.11g、IEEE 802.11b
◇数据传输率 54Mbps
◇频率范围 2.4-2.4835GHz
◇信道数 13
◇支持网络协议 CSMA/CA with ACK
◇传输方式 直接序列扩频 (DSSS)
◇调制方式 OFDM/CCK/16-QAM/64-QAM
◇总线接口 USB
◇安全性能 支持64/128/152位WEP加密,支持WPA/WPA2、WPA-PSK/WPA2-PSK等高级加密与安全机制
◇状态指示灯 Status
◇尺寸 Without case: 75x24x4mm( with connector), 60x24x4mm( without connector)
◇With case: 78x27x9mm( with connector), 76x27x9mm( without connector)
◇支持系统 Windows 2000/XP linux wince uclinux
◇其他技术参数 工作温度:0℃-50℃、存储温度:-40℃-70℃、工作湿度:10%-95% RH不凝结
此产品供应形式:提供样机,批量供货,并接受委托定制,另外本公司还提供各种不同的开发板系列套餐,欢迎前来咨询!
-----------------------------------单位名称:杭州立宇泰电子有限公司
网 址:http://www.hzlitai.com.cn/
联 系 人:郭细娇/黄玲燕
联系电话:0571-56763523/25
联系QQ:384945206/734591416
-----------------------------------
【立宇泰ARM产品夏季火爆促销中】
杭州立宇泰电子有限公司与旗下设立的杭州锐嵌科技有限公司,是业界领先的嵌入式计算机系统厂商之一.
在近几年的快速发展中,凭借成熟的核心技术及雄厚的研发力量,立宇泰成功推出了嵌入式平板电脑、便携式无线电子菜单、
多串口服务器、嵌入式单板电脑、S3C2440/2410/44B0开发板、各种显示方案等自主知识产权的产品。
在炎炎夏季来临之际,为答谢广大新老客户的支持与厚爱,我公司(立宇泰电子有限公司)特推出ARMSYS2440系列产品全面优惠
活动,ARMSYS2440-B开发板从原来的1980调整至现在的1480元,其他系列产品也相应优惠。这是公司又一项回馈客户的活动,
品牌产品,质量保证,想不到的优惠,看得见的满意。
公司网址:http://www.hzlitai.com.cn/
我们的联系方式是:
联系人:郭小姐
电话:0571-56763525-807
传真:0571-56763525-808
email:lyt_sale@yahoo.com.cn
QQ:384945206
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |