当前位置: 首页 > news >正文

asp网站建设运用的技术千锋教育

asp网站建设运用的技术,千锋教育,新郑网站建设公司,开发网站定制前面的文章介绍了如何在MDK-Keil下面进行S32K144的开发,下面就使用该工程模板进行GPIO LED的编程试验。 1. 开发环境 S32K144EVB-Q100开发板MDK-Keil Jlink 2. 硬件连接 S32K144EVB-Q100开发板关于LED的原理图如下: 也就是具体连接关系如下&#xf…

前面的文章介绍了如何在MDK-Keil下面进行S32K144的开发,下面就使用该工程模板进行GPIO LED的编程试验。

1. 开发环境

  • S32K144EVB-Q100开发板
  • MDK-Keil + Jlink

2. 硬件连接

S32K144EVB-Q100开发板关于LED的原理图如下:

在这里插入图片描述

也就是具体连接关系如下:

LEDPIN
BLUEPTD0
REDPTD15
GREENPTD16

3. GPIO LED实验

S32K144的开发,NXP官方提供了driver库和pal库,我们使用这些封装好的API函数就可以很容易实现我们想要的功能。

但是我为了进一步了解S32K144的芯片特性,计划是想着使用寄存器操作的方式编写代码。

当然,我不会使用那些地址值啊什么的去操作寄存器。前面的文章就介绍过,对于S32K144的SDK,就有提供寄存器操作的封装函数,xxx_hw_access.c/.h 这些文件。

Driver层那些封装函数,就是调用 xxx_hw_access.c/.h 这些文件的寄存器操作函数进一步封装得。我想着不调用 driver 层封装的那些函数了,直接调用寄存器操作的函数进行编写代码。

3.1 编写思路

  • 1、使能对应GPIO端口的时钟
  • 2、配置 PORT 模块寄存器,设置上拉/开漏/下拉模式、引脚复用模式、引脚是否使能中断等配置
  • 3、配置 GPIO 模块寄存器,设置数据输入输出方向、GPIO引脚电平控制

3.2 代码编写

代码编写实现LED闪烁。

1、LED引脚宏定义

/* LED GPIO_Type */
#define LED_GPIO   PTD/* LED PORT_Type */
#define LED_PORT   PORTD/* LED PIN */
#define LED_BLUE_PIN      0U
#define LED_RED_PIN       15U
#define LED_GREEN_PIN     16U

S32K144的GPIO引脚,它涉及两个模块,PORT模块和GPIO模块。

2、LED引脚初始化代码

/* Enable PORT_D clock */
PCC_SetClockMode(PCC, PORTD_CLK, 1);/* Configurate PORT register, MUX = GPIO */
PINS_SetMuxModeSel(LED_PORT, LED_GREEN_PIN, PORT_MUX_AS_GPIO);/* Configures the port pin interrupt/DMA request */
PINS_SetPinIntSel(LED_PORT, LED_GREEN_PIN, PORT_DMA_INT_DISABLED);/* onfigurate GPIO register, set direction is output */
PINS_GPIO_SetPinDirection(LED_GPIO, LED_GREEN_PIN, 1);

首先是使能LED引脚端口PORTD的时钟。然后配置的GPIO复用模式,失能中断和DMA。然后配置输出方向是输出模式。

3、main函数如下:

/* Delay function */
void Delay(volatile uint32_t count)
{while (count--);
}int main(void)
{/* Enable PORT_D clock */PCC_SetClockMode(PCC, PORTD_CLK, 1);/* Configurate PORT register, MUX = GPIO */PINS_SetMuxModeSel(LED_PORT, LED_GREEN_PIN, PORT_MUX_AS_GPIO);/* Configures the port pin interrupt/DMA request */PINS_SetPinIntSel(LED_PORT, LED_GREEN_PIN, PORT_DMA_INT_DISABLED);/* onfigurate GPIO register, set direction is output */PINS_GPIO_SetPinDirection(LED_GPIO, LED_GREEN_PIN, 1);while (1){PINS_GPIO_TogglePins(LED_GPIO, (1 << LED_GREEN_PIN));Delay(0xFFFFF);}
}

编译下载上面的代码之后,就可以看到LED闪烁。

http://www.yayakq.cn/news/454677/

相关文章:

  • 重庆制作网站公司做网站卖什么产品利润高
  • 东莞我的网站建设安福相册网站怎么做的
  • 做网站的流程前端做什么如何腾讯云二级域名做网站
  • 公司网站实名制杭州官网
  • 高端网站开发怎么选郑州网络营销与网站推广
  • 上海网站建设 微信开发公司哪家好查询域名后缀网站
  • 网站改版 百度影响做网站要钱吗
  • 北京个人网站公司从化门户网站建设
  • 学平面设计的网站白云网站建设价格
  • 服装网站建设方案ppt深圳定制网站制作费用
  • 哪些做网站的公司wordpress 内容编辑器
  • 加拿大28网站开发网站设计制作用软件
  • 织梦dedecms蓝色培训机构模板教育学校学院整站php网站源码免费网页小游戏在线玩
  • 建网站需要什么软件wordpress tag链接优化
  • 大连网络运营郑州网站建设优化
  • 网站搭建交流群中秋贺卡手工制作图片 简单
  • 提示网站有风险网页建设哪家好
  • 北京网站开发怎么样企业网站建设英文
  • 湖北网站建设哪里有.net 网站域账号自动验证码
  • 邯郸市做网站建设济南百度代理
  • 做网站需要注册公司吗深圳最好的营销网站建设公司排名
  • 青岛网站建设培训班本地网站建设视频
  • wordpress相关的网站网站设计软件培训
  • 手机网站模板 怎样做吉安市城乡建设局网站
  • 无锡做网站多少钱建设网站学什么
  • 同安区建设局网站招投标网站设计案例公司
  • 综合网站开发设计嘉祥县建设局网站
  • 揭阳网站制作计划什么是wordpress网站
  • 商标被注册了做网站怎么在网站做外部链接
  • 做护肤品好的网站好以色列网站后缀