本文讲解了国产a40i 开发板pwm的应用,本篇文章主要适用于飞凌 oka40i 平台 linux3.10.65 操作系统,其他arm 平台也可以参考,但是不同平台之间会存在差异,请自行修改以适应自己的使用。 写本文章的主要目的是协助客户加速产品的研发速度,由于水平有限, 不提供任何的完整性、可靠性等保证,软件版本更新之后,有些位置名称等内容可能会及时更新,修改方法请参考使用。
feta40i-c核心板基于全志工控行业平台级处理器四核cortex-a7 a40i设计,主频1.2ghz,集成mali400mp2 gpu,内存1gb/2gb ddr3l,存储8gb emmc。支持绝大部分当前流行的视频及图片格式解码,具有稳定可靠的工业级产品性能和高性价比低功耗等优势,搭载linux和android操作系统,适用于基于视觉交互的工业控制产品,目标应用包含,嵌入式设备、智能终端、工业控制、数据采集、机器视觉 、工业物联网 、移动互联设备、数字标牌 等。
特点:
●全志工业级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 = ; pwm-number = ; pwm-base = ; pwms = ; }; pwm4: pwm4@01c23400 { compatible = allwinner,sunxi-pwm4; pinctrl-names = active, sleep; reg_base = ; reg_peci_offset = ; reg_peci_shift = ; reg_peci_width = ; reg_pis_offset = ; reg_pis_shift = ; reg_pis_width = ; reg_crie_offset = ; reg_crie_shift = ; reg_crie_width = ; reg_cfie_offset = ; reg_cfie_shift = ; reg_cfie_width = ; reg_cris_offset = ; reg_cris_shift = ; reg_cris_width = ; reg_cfis_offset = ; reg_cfis_shift = ; reg_cfis_width = ; reg_clk_src_offset = ; reg_clk_src_shift = ; reg_clk_src_width = ; reg_bypass_offset = ; reg_bypass_shift = ; reg_bypass_width = ; reg_clk_gating_offset = ; reg_clk_gating_shift = ; reg_clk_gating_width = ; reg_clk_div_m_offset = ; reg_clk_div_m_shift = ; reg_clk_div_m_width = ; reg_pdzintv_offset = ; reg_pdzintv_shift = ; reg_pdzintv_width = ; reg_dz_en_offset = ; reg_dz_en_shift = ; reg_dz_en_width = ; reg_enable_offset = ; reg_enable_shift = ; reg_enable_width = ; reg_cap_en_offset = ; reg_cap_en_shift = ; reg_cap_en_width = ; reg_period_rdy_offset = ; reg_period_rdy_shift = ; reg_period_rdy_width = ; reg_pul_start_offset = ; reg_pul_start_shift = ; reg_pul_start_width = ; reg_mode_offset = ; reg_mode_shift = ; reg_mode_width = ; reg_act_sta_offset = ; reg_act_sta_shift = ; reg_act_sta_width = ; reg_prescal_offset = ; reg_prescal_shift = ; reg_prescal_width = ; reg_entire_offset = ; reg_entire_shift = ; reg_entire_width = ; reg_active_offset = ; reg_active_shift = ; reg_active_width = ; }
按手册 pwm 修改对应的寄存器。
修改 sys_config.fex 中 twi2_used=0 且增加
[pwm4] pwm_used = 1 pwm_positive = port:pb20 [pwm4_suspend] pwm_positive = port:pb20
编译镜像并烧写
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 方波
C语言简单工厂方法编程案例解析
从安装到调试,学会使用天然气报警器的全过程!
物联网和人工智能在安防领域的造就了什么
带过载保护连续与点动混合的控制电路
美国为什么在5G通信技术中落后了?
飞凌国产芯片系列干货|A40i开发板应用笔记-PWM 的应用
TDR测量的基本原理与应用
我国6G发展处于什么阶段
高智能快速测土配肥仪简介
LGInnotek将展出汽车LED模块 可从五面同时发出明亮均匀的光线
对于三防产品而言,它的外观设计需要考虑哪些方面
今日传感财经:光学仪器概念报跌;光学传感器概念报跌;可穿戴传感器板块报跌
上汽集团和宁德时代在动力电池领域的合作上升至一个新台阶
SMFX智能灯泡 自由变换1600万以上颜色
M5277-C3313U-250BG压力传感器测量
进光量提升40%的RYYB传感器才是手机相机的正解
测试工程师面试的12个关键问题
音圈电机无人机巡查助力秸秆禁烧工作
同样是2499元!iPhone6和小米6谁更值得买?iPhone6和小米6评测对比
比特币能成为人类未来的货币吗?其优劣引人深思!