完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
楼主第一次发帖 很紧张,如果哪写的不对还请各位好友多多指正,共同交流,共同进步! 首先非常感谢电子发烧网kl25的开源课堂,让自己能接触到飞思卡尔,自己拿到板子便开始苦心修炼,终于完成了开发板的初级操作---控制IO口。 话不多说,下面直接进入主题。当然这个完全是基于对寄存器的操作,希望对于只学过51的同学有一定的帮助。 首先插入原理图:(原理图中特别注意D13是指端口D的1引脚而不是13引脚)
关于KL25Z要实现普通的IO口操作,大致需要完成三个步骤: (1)设置系统时钟门的控制寄存器 通俗一点说就是要打开打开你要控制的GPIO的时钟,否则GPIO端口将无法工作
D12(PORTD)--D 端口时钟门控制。该位控制D模块的时钟门。0:禁用时钟 1:开启时钟 所以这里我们需要打开端口B和D的时钟所以只要像该寄存器的D10 和D12位写入1即可。 (2)设置引脚控制寄存器n(PORTx_PCRn)
此寄存器主要设置GPIO引脚的主要起到什么作用,led灯肯定用的是GPIO的通用输出功能,所 以,这里我么需要将MUX的 D10:D8 设置成001,即可实现GPIO通用的输入输出功能。 其他功能还需要大家详细的参见KL25的数据手册。这里我就不多赘述了。 (3)设置GPIO端口数据方向寄存器---GPIOx_PDDR 也就是说既然选择了GPIO的通用输入输出功能,那么是选择输入还是输出,就要设置这个 寄存器了,通过原理图可以看出我们要选择的是GPIO口的输出功能,当给IO口一个高电平, led灯关闭,给一个低电平则打开。 对于这个寄存器的描述如下: D31-D0 为端口数据方向位,各位的值决定了相应引脚为输入还是输出。若其为设定为0,则相 对应的引脚为输入;为1,则对应的引脚为输出。 所以这里,我们需要把GPIOD_PDDR的D1和GPIOB_PDDR的D18和D19设置为1 即可。 以上都完成了,那我们就可已控制IO口了,那么该怎么控制? 对于kL25共有五个端口ABCDE,每个端口都有各自的寄存器,我们以端口A为例。端口A有如下寄 存器 ,功能我也就不多赘述了。
当然在这里我只需要写1或者写0即可,那么我们只需要对GPIO_PDOR寄存器 (Port data oupt register)数据输出寄存器进行操作就可以了,这里毫无疑问对 对应位写1 就是输出高电 平,写0自然就是输出底电平了。 举例来说我们控制PTB18(B端口的18引脚),这里我需要对GPIOB_PDOR寄存的D18写入1 此 时,PTB18输出高电平,D18写入0,则输出低电平。 到这里我相信,对于GPIO控制流水灯就差不多了,以下是我的代码, 关于如何定义、操控我们需要的寄存器注释中都有详细的说明:
最终完成后,大家自己可以打断点实现一下在线仿真,具体仿真的操作大家参考下suyong大神的帖子 https://bbs.elecfans.com/forum.p ... amp;highlight=jlink https://bbs.elecfans.com/jishu_464925_1_1.html 仿真效果和断点我就不上传了相信大家都可以的
led of GPIO.rar
(201.61 KB, 下载次数: 236
)
|
|
|
相关推荐
|
|
|
谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~谢谢O(∩_∩)O哈哈~
|
|
|
|
|
|
|
|
|
9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用
|
|
|
|
|
|
|
|
|
9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用9S08DZ60特别适合初学者使用
|
|
|
|
|
|
|
|
|
感谢分享,学习中。
|
|
|
|
|
|
|
|
|
感谢楼主,加油!!!!!!!!!!!!!!
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
2135个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
37376 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
6776 浏览 1 评论
7794 浏览 1 评论
7642 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
5071 浏览 0 评论
1556浏览 2评论
关于NINA-W132 Wi-Fi模块SPI通信遇到的疑问求解
1209浏览 2评论
如何在MPC PowerPC MCU上首次刷写后禁用BDM?
749浏览 1评论
将HFREFR和LFREFR寄存器值设置为错误的值来将故障注入CMU,但CMU_ISR值始终为零,为什么?
735浏览 1评论
将SPSDK for FRDM-MCX-W71 SDK与VS一起安装时出现hidapi构建错误怎么解决?
678浏览 1评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 13:40 , Processed in 1.217362 second(s), Total 109, Slave 89 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖