- 1、本文档共76页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM体系结构和常用接口简介
*;ARM-Advanced RISC Machines ;ARM 公司的Chip less模式;ARM微处理器的特点—低功耗、低成本、高性能;ARM微处理器的特点—采用RISC体系结构;ARM微处理器的特点—大量使用寄存器;ARM微处理器的特点—高效的指令系统;ARM微处理器的特点—其他技术;ARM微处理器系列 ;ARM处理器核心技术演进路线;ARM9微处理器系列 ;ARM9微处理器系列;ARM920T系统结构分析;ARM920T系统结构分析;嵌入式微处理器;ARM微处理器的工作状态 ;ARM微处理器:处理器工作状态;ARM微处理器:处理器工作状态;ARM与THUMB;处理器模式;ARM微处理器的存储器格式 ;ARM体系结构的存储器格式—大端格式 ;ARM体系结构的存储器格式—小端格式 ;ARM微处理器:内存和I/O;ARM微处理器:内存和I/O;寄存器组织 ;ARM体系结构所支持的异常类型 ;异常向量表(Exception Vectors) ;异常优先级(Exception Priorities) ;应用程序中的异常处理 ;ARM微处理器:内存和I/O;ARM微处理器:内存和I/O;ARM微处理器:内存和I/O;ARM微处理器:内存和I/O;嵌入式系统总线;概述;概述;概 述;*;*;*;AMBA总线;AMBA总线;*;AMBA总线-AHB;AMBA总线-AHB;AMBA总线-AHB;ISA ; PCI ;PCI总线:特点;PCI总线:特点;PCI总线:特点;PCI总线:信号定义? ;PCI总线:信号定义;PCI总线:操作;PCI总线-读操作;CPCI总线;CPCI总线;CPCI总线;PCI-Express总线;;I2C 总线 ;*;SPI总线 ;PC104总线 ;CAN总线 ;并行接口 ;串口 ;
现在的PC机一般有两个串行口:COM1和COM2,我们可以选择任何一个进行连接,然后在操作系统上面进行正确的配置。Windows操作系统和Linux操作系统都能够很好地支持串口,特别是在Linux环境下可以对串口通信简单地进行编程,下面就来介绍串口编程。 ;Linux系统环境下的所有设备都提供了相应的设备文件供用户访
问,设备文件都位于/dev目录下。COM1和COM2对应的文件分
别为/dev目录下的ttyS0和ttyS1,我们可以通过打开并读写这两
个文件来对串口进行操作。使用open()函数打开串口的例子如下:
int fd;
/*以读写方式打开串口*/
fd = open( /dev/ttyS0, O_RDWR);
if (-1 == fd){
/* 不能打开串口一*/
perror( 提示错误!);
}
对串口进行设置是一种常见的操作,一般的设置包括波特率设
置、校验位和停止位设置。;Termios的结构如下:
Struct termios{
tcflag_t c_iflag; //输入模式
tcflag_t c_oiflag; //输出模式
tcflag_t c_cflag; /控制模式
tcflag_t c_lflag; //局部模式
cc_t c_cc[NCCS]; //特殊控制字符
}
在上面的结构体成员中,c_cflag是最常用的,它用于控制串口的波特
率、奇偶校验、停止位等。
在c_cflag成员中,选项 CLOCAL和CREAD是必须的,即本地和接收使
能。例如,下面的代码将波特率设为115200、数据位为8位、偶校验并且
停止位为1位:
options.c_cflag |= B115200|CLOCAL|CREAD|CS8| PARENB;
options.c_cflag =~PARODD;
options.c_cflag =CSTOPB; ; 所有对串口的操作都是通过结构体termios和几个函数实现的,其中最常用的两个函数是tcgetattr()和tcsetattr()。在一般情况下,程序通过tcgetattr()函数获取设备当前的设置,然后修改这些设置,最后用tcsetattr()使这些设置生效。我们也可以用tcgetattr()函数保存设备的配置,最后在程序结束前用函数tcsetattr()恢复设备的配置。
常用的操作结构体termios的函数如下:
int tcgetattr(int fd ,struct termios *t)
该函数用于获得文件描述符fd所表示设备的当前设置值,并将此设置值写入指针t内。若成功,函数返回0,否则返回-1。
int tcsetattr(int fd, int options ,struct termios
您可能关注的文档
最近下载
- GBT1804—2000自由公差标准.doc VIP
- SIMATIC-S7-200 SMART编程培训(高端培训).ppt VIP
- 2020年越南投资法-恒利中文简体版.pdf VIP
- 2025年3月22日山东事业单位统考《行测》部分真题(含答案).pdf VIP
- 2024年北京市专职工会社会工作者招聘笔试参考题库附带答案详解.pdf VIP
- GB/T39204-2024信息安全技术关键信息基础设施安全保护要求.pptx VIP
- 数学北师大版五年级下册长方体的认识作业设计.doc VIP
- 安全与风险评估模型.pdf VIP
- 报告同级班子履职尽责和廉洁自律情况.pdf VIP
- 2024年新大象版科学六年级上册全册知识点 (精编版).pdf
文档评论(0)