通用IO接口

上传人:清****欢 文档编号:243154394 上传时间:2024-09-17 格式:PPT 页数:27 大小:3.07MB
返回 下载 相关 举报
通用IO接口_第1页
第1页 / 共27页
通用IO接口_第2页
第2页 / 共27页
通用IO接口_第3页
第3页 / 共27页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,通用,IO,接口,-1,本节要点,GPIO,基础知识,K60 GPIO,模块概要及编程要点,第一,个,GPIO,程序,3.,1,GPIO基础知识,1,),I/O,接口的概念,I/O,接口,即输入输出接口,是微控制器同外界进行交互的重要通道。,在嵌入式系统中,接口千变万化,种类繁多,有显而易见的人机交互接口,如操纵杆、键盘、显示器;也有无人介入的接口,如网络接口、机器设备接口,等,。,CPU,I/O,接口,外设,2,),I/O,接口要解决的问题,:,速度匹配,(Buffer),信号电平和驱动能力,(,电平转换器、驱动器,),信号形式匹配,(A/D,、,D/A),信息格式,(,字节流、块、数据包、帧,),时序配合,(,定时关系,),3.1 GPIO,的基本知识,I/O,信息的三种类型:,数据、命令、状态,。传送这三类信息的通道分别称为:数据端口、控制端口、状态端口。,CPU,I/O,设备,译码,数据端口,状态端口,控制端口,DB,AB,CB,3.1,GPIO的基本知识,通用,I/O,,也记为,GPIO,(,General Purpose I/O,),即基本的输入,/,输出,有时也称并行,I/O,,或普通,I/O,,它是,I/O,的最基本形式,。,3),通用,I/O,通用,I/O,接口一般应具备:,放置工作方式控制字的寄存器,放置输入或输出控制字的寄存器,放置要交换数据的寄存器,放置反映工作状态的寄存器,3.1 GPIO,的基本知识,4).,常用,I/O,输入电路,输入引脚有三种不同的连接方式:,带上拉电阻的连接,带下拉电阻的连接,“,悬空,”,连接。,若,MCU,的某个引脚通过一个电阻接到电源(,Vcc,)上,这个电阻被称为,“,上拉电阻,”,。,若,MCU,的某个引脚通过一个电阻接到地(,GND,)上,则相应的电阻被称为,“,下拉电阻,”,。,悬空的芯片引脚被上拉电阻或下拉电阻初始化为高电平或低电平。,MCU,内部程序向该引脚输出高电平或低电平来驱动器件工作,即开关量输出。,O1,引脚是发光二极管,LED,的驱动引脚,当,O1,引脚输出高电平时,,LED,不亮;当,O1,引脚输出低电平时,,LED,点亮。,O2,引脚接蜂鸣器驱动电路,当,O2,脚输出高电平时,蜂鸣器响;,O2,脚输出低电平时,蜂鸣器不响。,5,),I/O,输出电路,3.2 K60 GPIO,模块概要及编程要点,1,),K60 GPIO,模块概要,可作为,GPIO,功能的引脚数目及引脚名称:,(,1,),A,口有,26,个引脚,,PTA0PTA19,、,PTA24PTA29,;,(,2,),B,口有,20,个引脚,,PTB0PTB11,、,PTB16PTB23,;,(,3,),C,口有,20,个引脚,,PTC0PTC19,;,(,4,),D,口有,16,个引脚,,PTD0PTD15,;,(,5,),E,口有,18,个引脚,,PTE0PTE12,、,PTE24PTE28,。,如何,对,上述,IO,引脚进行操作?,Not all pins within each port are implemented on each device.,The following is the implement On device MK60DN512VMD10.,(,1,),PORTA29:24, PORTA19:0, 26Pins,(,2,),PORTB23:16, POPTB11:0,20Pins,(,3,),POTRC19:0,20Pins,(,4,),PORTD15:0,16Pins,(,5,),PORTE28:24,PORTE12:0,18Pins,GPIO,Registers,(,1,) Pin Control Register n (PORTx_PCRn),引脚控制寄存器 n,K60,的,I/O,口与其他功能模块均能引脚复用。配置相关模块的输入输出通道时,要先对,I/O,口的引脚复用寄存器进行配置。配置,GPIO,功能,只需配置第,810,位(,MUX,)。,Pin Control Register n (PORTx_PCRn),引脚控制寄存器 n,引脚复用功能选择,0,:不支持拉电阻,1,: 支持拉电阻,0,:支持下拉电阻,1,:支持上拉电阻,(,2,),GPIO,寄存器的概要说明:,(,3,),系统时钟门控寄存器 5,K60,中每一个模块都需要在,SIM,模块中开启或者关闭模块的时钟。通过设置,SIM_SCGC5,寄存器就可以为,I/O,模块的,PORTA,、,PORTB,、,PORTC,、,PORTD,、,PORTE,提供时钟,该寄存器在复位时被清零,从而使得相应模块的时钟被关闭。,打开A口,则SIM_SCGC5,|,=(19);打开A、B口,则为 SIM_SCGC5,|,= ( (19) | (110) ),(2) 系统时钟门控寄存器 5,GPIO,模块的基本编程步骤,:,3,)通过设置,GPIOx_PDDR,来配置相应引脚传输方向:“,1,”为输出, “,0,”为输入。,1,)通过设置,“,SIM_SCGC5”,寄存器来打开相应端口时钟。,2,)通过设置引脚控制寄存器来配置相应引脚复用功能。,以,PA10,输出为例,GPIO,模块的基本编程步骤,:,4,)若是输入引脚,则通过,GPIOx_PDIR,获得引脚的状态,: “0”,表示为低电平;,: “1”,表示为高电平。,5,)若是输出引脚,则通过,GPIOx_PDOR,输出低电平或高电平,对应值为,0,或,1,。亦可通过,“,输出置位寄存器,”,、,“,输出清位寄存器,”,、,“,输出取反寄存器,”,改变引脚状态。,(,1,)置位。要将,R,的第,3,位置,1,,其他位不变,可以这样做:,R |= (13),,其中“,13,”的结果是“,0b00001000,”,,R |= (13),也就是,R=R|0b00001000,,任何数和,0,相或不变,任何数和,1,相或为,1,,这样达到对,R,的第,3,位置,1,,但不影响其他位的目的。,(,2,)清位。要将,R,的第,2,位清,0,,其他位不变,可以这样做:,R &= -(12),,其中“,-(12),”的结果是“,0b11111011,”,,R&=-(14) & 1,,是获得,R,第,4,位的状态,“,R4,”是将,R,右移,4,位,将,R,的第,4,位移至第,0,位,即最后,1,位,再和,1,相与,也就是和,0b00000001,相与,保留,R,最后,1,位的值,以此得到第,4,位的状态值。,3.2.2,GPIO,模块概要和编程要点,3,置位与清位的宏函数,p48,第一个工程,:,控制发光二极管指示灯闪烁,要求,根据前面课上讲解的知识,设计程序,实现,E4,灯闪烁。,#include derivative.h,“,void delay(void);,/*/,int,main(,void,),SIM_SCGC5 = SIM_SCGC5_PORTA_MASK;,/,打开,A,口时钟,值为,0x200u,PORTA_PCR10 |= (18);,/,将,A,口,10,号 引脚配置为,GPIO,口功能,GPIOA_PDDR= 110;,/,引脚配置为输出功能,while(1),GPIOA_PTOR|=110;,/,输出取反寄存器;灯闪烁,delay();,/,延时,return 0;,void delay(),/,延时程序, unsigned int i, n, m ;,for(i=0;i30000;i+),for(n=0;n100;n+) m=m;,第二个嵌入式,C,语言工程,:,对按键进行查询方式工作,启动,/,停止发光二极管闪烁,两个按键分别接,PTA19,,,PTE26,,当键按下,对应引脚输入低电平。输入、设置内部上拉电阻。,先画流程图,考虑好逻辑关系再编程。,综合练习:,实验仪器上有两个按键、四个,LED,灯,请自己设计一个控制流程,希望把按键和,LED,都用上。,例如:荧光棒,多种亮灯模式,通过按键切换模式。,关于上机实验,上机地点:金智楼,4,楼,5# 6#,机房,上机时间:,10.15 35,节,上机要求:完成本课件上的第,1,和第,2,个项目,项目,1,)学习,CW,软件的使用,程序可直接拷贝,通过正确操作,完成程序的录入、编译和运行;,项目,2,)仿照项目,1,)的程序,编制一个,GPIO,输入口的程序;,项目,3,)综合使用实验仪上的按键和,LED,,编写一个程序。(第二次上机完成),
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 临时分类 > 人文社科


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!