0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

飞凌国产芯片系列干货|A40i开发板应用笔记-PWM 的应用

飞凌嵌入式 2021-11-26 14:36 次阅读

本文讲解了国产A40i 开发板PWM的应用,本篇文章主要适用于飞凌 OKA40i 平台 Linux3.10.65 操作系统,其他arm 平台也可以参考,但是不同平台之间会存在差异,请自行修改以适应自己的使用。 写本文章的主要目的是协助客户加速产品的研发速度,由于水平有限, 不提供任何的完整性、可靠性等保证,软件版本更新之后,有些位置名称等内容可能会及时更新,修改方法请参考使用。

FETA40i-C核心板基于全志工控行业平台级处理器四核Cortex-A7 A40i设计,主频1.2GHz,集成MAli400MP2GPU,内存1GB/2GB DDR3L,存储8GB eMMC。支持绝大部分当前流行的视频及图片格式解码,具有稳定可靠的工业级产品性能和高性价比低功耗等优势,搭载LinuxAndroid操作系统,适用于基于视觉交互的工业控制产品,目标应用包含,嵌入式设备、智能终端、工业控制、数据采集、机器视觉工业物联网 、移动互联设备、数字标牌 等。
特点:
●全志工业级A40I四核Cortex-A7,主频最高为1.2GHz,集成Mali400MP2 GPU;
●支持双屏同显异显和多种显示接口RGB/MIPI /双8位 LVDS/HDMI/TV OUT,1920x1080@60fps;
●支持1路千兆网络,1路百兆网络,支持WIFI/BT4.0,支持4G
●支持多路摄像头输入,两路DVP摄像头接口,最高支持500W像素,四路TVIN,支持NTSC与 PAL制式
CPU内部集成Audio Codec,支持1路差分PHONEOUT,1路立体声耳机输出 ,1路microphone输入
●外部扩展接口丰富UART *8、SD*4、USB*3、SPI *4、IIC*5、SATA、PWM*8等;
●支持Linux和Android操作系统;

正文开始:

一、PWM的应用

1、pwm的添加

增加一路 pwm,以 pwm4 为例说明,其他方法类似,只做为参考。

arch/arm/boot/dts/sun8iw11p1.dtsi

中添加

pwm = &pwm; pwm0 = &pwm0; pwm4 = &pwm4; pwm: pwm@01c23400 { compatible = "allwinner,sunxi-pwm"; reg = <0x0 0x01c23400 0x0 0x154>; pwm-number = <1>; pwm-base = <0x4>; pwms = <&pwm4>; }; pwm4: pwm4@01c23400 { compatible = "allwinner,sunxi-pwm4"; pinctrl-names = "active", "sleep"; reg_base = <0x01c23400>; reg_peci_offset = <0x00>; reg_peci_shift = <0x04>; reg_peci_width = <0x01>; reg_pis_offset = <0x04>; reg_pis_shift = <0x04>; reg_pis_width = <0x01>; reg_crie_offset = <0x10>; reg_crie_shift = <0x08>; reg_crie_width = <0x01>; reg_cfie_offset = <0x10>; reg_cfie_shift = <0x09>; reg_cfie_width = <0x01>; reg_cris_offset = <0x14>; reg_cris_shift = <0x08>; reg_cris_width = <0x01>; reg_cfis_offset = <0x14>; reg_cfis_shift = <0x09>; reg_cfis_width = <0x01>; reg_clk_src_offset = <0x28>; reg_clk_src_shift = <0x07>; reg_clk_src_width = <0x02>; reg_bypass_offset = <0x28>; reg_bypass_shift = <0x05>; reg_bypass_width = <0x01>; reg_clk_gating_offset = <0x28>; reg_clk_gating_shift = <0x04>; reg_clk_gating_width = <0x01>; reg_clk_div_m_offset = <0x28>; reg_clk_div_m_shift = <0x00>; reg_clk_div_m_width = <0x04>; reg_pdzintv_offset = <0x38>; reg_pdzintv_shift = <0x08>; reg_pdzintv_width = <0x08>; reg_dz_en_offset = <0x38>; reg_dz_en_shift = <0x00>; reg_dz_en_width = <0x01>; reg_enable_offset = <0x40>; reg_enable_shift = <0x04>; reg_enable_width = <0x01>; reg_cap_en_offset = <0x44>; reg_cap_en_shift = <0x04>; reg_cap_en_width = <0x01>; reg_period_rdy_offset = <0xe0>; reg_period_rdy_shift = <0x0b>; reg_period_rdy_width = <0x01>; reg_pul_start_offset = <0xe0>; reg_pul_start_shift = <0x0a>; reg_pul_start_width = <0x01>; reg_mode_offset = <0xe0>; reg_mode_shift = <0x09>; reg_mode_width = <0x01>; reg_act_sta_offset = <0xe0>; reg_act_sta_shift = <0x08>; reg_act_sta_width = <0x01>; reg_prescal_offset = <0xe0>; reg_prescal_shift = <0x00>; reg_prescal_width = <0x08>; reg_entire_offset = <0xe4>; reg_entire_shift = <0x10>; reg_entire_width = <0x10>; reg_active_offset = <0xe4>; reg_active_shift = <0x00>; reg_active_width = <0x10>; }

按手册 PWM 修改对应的寄存器

修改 sys_config.fex 中 twi2_used=0 且增加

[pwm4] pwm_used = 1 pwm_positive = port:PB20<4><0> [pwm4_suspend] pwm_positive = port:PB20<7><0>

编译镜像并烧写

2、PWM的测试

echo 0 >/sys/class/pwm/pwmchip4/export echo 1000000 > /sys/class/pwm/pwmchip4/pwm0/period echo 500000 > /sys/class/pwm/pwmchip4/pwm0/duty_cycle echo 1 > /sys/class/pwm/pwmchip4/pwm0/enable

测量得到频率为 1K 方波

echo 0 > /sys/class/pwm/pwmchip4/pwm0/enable echo 208333> /sys/class/pwm/pwmchip4/pwm0/duty_cycle echo 416667 > /sys/class/pwm/pwmchip4/pwm0/period echo 1 > /sys/class/pwm/pwmchip4/pwm0/enable

测量得到频率为 2.4K 方波

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    449

    文章

    48572

    浏览量

    413060
收藏 人收藏

    评论

    相关推荐

    紫光同创PGL22G开发板|盘古22K开发板国产FPGA开发板,接口丰富,高性价比

    ,一多用,满足多方位的开发需求。 盘古22K开发板详情盘古22K开发板(MES22GP)是基于紫光同创40nm工艺的Logos
    发表于 05-23 10:04

    芯海科技通用 MCU 应用笔记: CS32F103 FOC 电机评估使用指南

    本文档描述了基于芯海 CS32F103 系列芯片的矢量控制电机开发板 V1.00 的设计理念、结构和使用说明,以帮助用户快速使用此开发板,评估 CS32F103
    发表于 05-16 11:35

    芯海通用 MCU 应用笔记: C32F03x 系列快速应用指南

    本应用笔记旨在指导用户搭建 CS32F03x/F03x-RA 系列 MCU 开发环境并进行开发和调试,包括:软件开发与移植、软硬件注意事项、
    发表于 05-16 11:29

    嵌入式全志T113-i开发板的休眠及唤醒操作

    嵌入式OK113i-S开发板支持两种休眠方式:freeze和mem。这两种方式可以通过/sys/power/state文件节点进行操作,用户可以通过在该文件节点写入freeze或m
    发表于 01-17 09:29

    OK113i-C 全志T113-i开发板】WiFi和以太网络的使用

    WiFi和以太网络的使用这块t113-t开发板,板载了一块WiFi+蓝牙的模块,以及千兆一台网络,出厂已经支持了WiFi驱动,且在之前的实验中已经打开了wifi模块的功能,并手动扫描链接了AP
    发表于 12-27 09:57

    OK113i-S开发板试用】软件开发环境搭建

    OK113i-S开发板试用】软件开发环境搭建
    发表于 12-25 12:06

    OK113i-S开发板试用】开机测评--软件测试篇

    OK113i-S开发板试用】开机测评--软件测试篇 OK113
    发表于 12-25 11:03

    OK113i-S开发板试用】开机测评--硬件篇

    OK113i-S开发板试用】开机测评--硬件篇 一,开箱见图 包装精致 注意:上面红黄的先是本人接上的 配了电源线和一根usb线一根天线 OK113
    发表于 12-24 20:51

    全志T113i国产核心上市

    超低价、超灵活、超全能!嵌入式FET113i-S全国产核心板正式发布!整采用100%国产
    发表于 11-20 16:32

    全志A40i用笔记 | 3种常见的网卡软件问题以及排查思路

    嵌入式OKA40i-C开发板上虽然只有一个网口,但全志A40i-H处理器本身是有两个网络控制器的,因此在
    发表于 11-08 10:02

    AM6254开发板试用】+5内核编译串口芯片Linux驱动(原创)

    接上四篇:【AM6254开发板试用】+1控制小车(原创) - 嵌入式 - 电子技术论坛 - 广受欢迎的专业电子论坛! https:/
    发表于 09-23 23:21

    紫光同创PGL22G开发板|盘古22K开发板国产FPGA开发板,接口丰富,高性价比

    ,一多用,满足多方位的开发需求。 盘古22K开发板详情 盘古22K开发板(MES22GP)是基于紫光同创40nm工艺的Logos
    发表于 09-21 18:16

    AM6254开发板试用】 4-机器视觉(原创)

    接上三篇:【AM6254开发板试用】+1控制小车(原创) - 嵌入式 - 电子技术论坛 - 广受欢迎的专业电子论坛! https:/
    发表于 09-12 22:57

    全志A40i开发板SATA硬盘挂载

    【1】挂载SATA硬盘OKA40i-C开发板,提供了SATA接口,今天笔者试着挂载SATA硬盘。【硬件准备】 1、SSD硬盘,拆了一个N年前的容量120G的硬盘。 2、从报废的电源
    发表于 08-30 14:01

    嵌入式国产平台大盘点之瑞芯微系列

    国产化”一词正在被越来越多的提及,有着越来越高的关注度,嵌入式也已与多家国内芯片原厂联合推出了数款国产化智能平台。为了帮助大家快速认识
    发表于 08-05 11:12