运城| 民勤| 吉安县| 将乐| 乌什| 株洲市| 珊瑚岛| 东山| 即墨| 旅顺口| 长垣| 柏乡| 仙桃| 青河| 广安| 漾濞| 灵寿| 察隅| 连云区| 合肥| 榕江| 新乡| 广德| 孟连| 茄子河| 崇阳| 左云| 晋宁| 老河口| 麦积| 察隅| 邱县| 大同市| 白河| 库伦旗| 恩平| 临淄| 三原| 夏河| 泰和| 疏勒| 澎湖| 民权| 杭锦旗| 梅河口| 浦北| 岱山| 乌审旗| 乳源| 德钦| 凭祥| 重庆| 晋江| 单县| 颍上| 策勒| 洞口| 博山| 赤峰| 榆林| 淅川| 上思| 侯马| 余江| 陇南| 云溪| 柳州| 东宁| 开鲁| 武汉| 柏乡| 富县| 岚山| 六盘水| 金州| 凌海| 华容| 涪陵| 阳谷| 上林| 乐至| 永寿| 罗平| 扬州| 旌德| 武安| 竹山| 华宁| 景宁| 南阳| 蒲江| 芦山| 滦南| 克什克腾旗| 周村| 云梦| 宁明| 精河| 循化| 临川| 芷江| 吉利| 望江| 裕民| 浑源| 明水| 千阳| 泰宁| 五峰| 堆龙德庆| 罗平| 横峰| 淳安| 新会| 凌海| 布拖| 宁波| 巴楚| 南安| 兴文| 巩留| 龙门| 瓯海| 睢宁| 镶黄旗| 高明| 鼎湖| 班戈| 郑州| 泉港| 霍邱| 昂仁| 尼勒克| 隆德| 洞口| 陇西| 新密| 昌江| 和平| 曲松| 尚义| 天祝| 西盟| 泗县| 清河| 临淄| 福海| 秭归| 伊宁市| 远安| 麦积| 镇巴| 嘉祥| 小金| 成都| 莱山| 黔江| 覃塘| 宣恩| 沂源| 新密| 湘潭县| 台南县| 慈利| 广元| 高邑| 罗江| 祁阳| 田林| 修水| 湛江| 横峰| 龙泉| 阳江| 安岳| 什邡| 象州| 宜宾县| 霍城| 嘉禾| 长治县| 嘉兴| 德州| 浠水| 南岔| 佛冈| 沙坪坝| 麻城| 锦屏| 尚义| 丹棱| 辽宁| 明光| 霞浦| 札达| 阳朔| 烟台| 巍山| 宁德| 酒泉| 高平| 五台| 集贤| 宜良| 江夏| 太谷| 横山| 麻山| 太康| 鄂托克旗| 祁县| 山西| 吴江| 湘乡| 文昌| 吴堡| 奈曼旗| 米脂| 抚州| 五河| 户县| 夏县| 加查| 汕尾| 宝清| 黎平| 齐河| 西宁| 鄢陵| 博罗| 滴道| 阿克苏| 富锦| 安康| 石景山| 宁城| 湖州| 襄樊| 江山| 武宣| 红河| 尚义| 云梦| 东阿| 横山| 龙口| 蓬安| 彭阳| 南海镇| 天峨| 米脂| 呼和浩特| 灵台| 保山| 潘集| 茶陵| 泗阳| 潮阳| 井陉| 水富| 茌平| 贡嘎| 泾阳| 临猗| 木兰| 九江县| 六合| 津南| 慈利| 休宁| 宁德| 大足| 清水| 防城区| 祥云| 扶风| 连南| 荣昌| 小河| 保靖| 富民| 惠安| 扶余| 都匀| 巴楚| 宜宾县| 温宿| 景县| 博湖| 深泽| 甘孜| 青铜峡| 丰城| 平房| 献县| 遵义市| 淮安| 潞西| 满城| 蒙城| 龙江| 贵南| 织金| 温泉| 皮山| 当雄| 商水| 汉口| 潍坊| 钓鱼岛| 全南| 承德县| 平罗| 万州| 图们| 汶川| 宿州| 庆元| 澳门葡京官方网站

深度解析基于FPGA控制的舵机程序

畅学单片机 ? 2018-02-25 08:54 ? 次阅读
体彩狗年新春钜惠,省滦

舵机

一个常见的舵机有三个连接线。

黑色:电源地

红色:电源(5伏直流)

白色:控制引脚(PWM)

PWM控制舵机位置。伺服系统每20毫秒要有一个脉冲,以便获得正确的角度信息。脉冲宽度决定了舵机的角度运动范围。也就是说,我们可以通过发送1毫秒脉冲设置舵机到一端位置,发送2毫秒脉冲将其设置到另一个位置。

深度解析基于FPGA控制的舵机程序

控制波形

我们设计一个四个输入,一个输出的模块,如下图所示

控制模块

Clk:时钟信号

reset:复位信号

button_l:用于PWM占空比的增加

button_r:用于PWM占空比的减小

Pwm:输出信号驱动舵机。

首先,应该生成具有20毫秒周期的PWM信号,由于使用50MHz的时钟产生PWM,为了产生20ms信号,我们将定义一个名为counter的变量和一个名为upper的常数,它表示计数上边界。

Upper boundary : 20ms/20ns = 1000 000

constant upper :integer:=1000000;

………………………..

process(clk,reset)

begin

if reset = '1' then

pwm_reg

counter

duty_cycle

elsif clk='1' and clk'event then

pwm_reg

counter

duty_cycle

end if;

end process;

counter_next

控制信号占空比的值应是1毫秒至2毫秒之间。我们将定义两个常数命名dcycle_max和dcycle_min说明上下边界。

dcycle_max:显示脉冲宽度的最大值。

(2ms/clock period=2 ms/ 20 ns=100000)

dcycle_min:显示脉冲宽度的最小值。

(1ms/clock period=1 ms/ 20 ns=50000)

脉宽(占空比)在每个PWM周期中改变,因此我们定义了一个称为tick的变量。当tick为“1”时,占空比将发生变化。

signal tick : std_logic;

tick

定义了一个称为duty_in的常数,用于改变占空比。

VHDL代码

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

entity servo_pwm is

Port ( clk : in STD_LOGIC;

reset : in STD_LOGIC;

button_l : in STD_LOGIC;

button_r : in STD_LOGIC;

pwm : out STD_LOGIC);

end servo_pwm;

architecture Behavioral of servo_pwm is

constant period:integer:=1000000;

constant dcycle_max:integer:=100000;

constant dcycle_min:integer:=50000;

constant duty_in:integer:=200;

signal pwm_reg,pwm_next:std_logic;

signal duty_cycle,duty_cycle_next:integer:=0;

signal counter,counter_next:integer:=0;

signal tick:std_logic;

begin

process(clk,reset)

begin

if reset = '1' then

pwm_reg

counter

duty_cycle

elsif clk='1' and clk'event then

pwm_reg

counter

duty_cycle

end if;

end process;

counter_next

tick

process(button_l,button_r,tick,duty_cycle)

begin

duty_cycle_next

if tick='1' then

if button_l ='1' and duty_cycle >dcycle_min then

duty_cycle_next

elsif button_r ='1' and duty_cycle

duty_cycle_next

end if;

end if;

end process;

pwm

pwm_next

end Behavioral;

畅学单片机 技术专区

原文标题:FPGA控制舵机程序

文章出处:【微信号:changxuemcu,微信公众号:畅学单片机】欢迎添加关注!文章转载请注明出处。

关注电子发烧友微信

有趣有料的资讯及技术干货

下载发烧友APP

打造属于您的人脉电子圈

关注发烧友课堂

锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

可编程技术30年回顾,FPGA都夸过了哪三个大时代

自引入以来,现场可编程门阵列(FPGA)的容量增加了10000倍以上, 性能增加了100倍. 单位....

发表于 01-26 16:17 ? 次阅读 ? 0条评论
可编程技术30年回顾,FPGA都夸过了哪三个大时代

带宽暴增10倍,Intel FPGA集成HBM全球领先

分享到 AMD Fiji Fury系列显卡首次商用了新一代高带宽显存HBM,大大提升带宽并缩小空间占....

发表于 01-26 16:14 ? 次阅读 ? 0条评论
带宽暴增10倍,Intel FPGA集成HBM全球领先

FPGA和ASIC芯片有望构建机器学习成长的大环境

分享到 在2016年初,机器学习仍被视为科学实验,但目前则已开始被广泛应用于数据探勘、计算机视觉、自....

发表于 01-26 16:13 ? 次阅读 ? 0条评论
FPGA和ASIC芯片有望构建机器学习成长的大环境

基于FPGA的OCR文字识别技术的深度解析

OCR在通用文字识别等场景下有广泛应用,基于FPGA异构加速的OCR识别相比CPU/GPU实现具有延....

发表于 01-26 12:19 ? 次阅读 ? 0条评论
基于FPGA的OCR文字识别技术的深度解析

FPGA替代GPU有哪些问题?6大顾虑让你解惑

最近FPGA又频频被各AI领域的巨头看好,比如微软、百度、科大讯飞都对FPGA应用前景有所期待。那么....

发表于 01-26 11:59 ? 次阅读 ? 0条评论
FPGA替代GPU有哪些问题?6大顾虑让你解惑

深度解析FPGA的功耗

总的来说,芯片进入40nm时代后,门槛电压的降低以及晶体管尺寸的减小,都将会导致芯片漏电流增加,而这....

的头像 FPGA极客空间 发表于 01-26 10:55 ? 次阅读 ? 0条评论
深度解析FPGA的功耗

使用aurora核的点对点通信应用设计

Aurora 是一个很高效的低延迟点对点的串行协议,它使用了GTP收发器。它旨在隐藏GTP的接口细节....

的头像 FPGA技术联盟 发表于 01-26 09:46 ? 次阅读 ? 0条评论
使用aurora核的点对点通信应用设计

英特尔:加速FPGA创新发展,创新FPGA+MCU架构

如今从汽车、网络、物联网到数据中心,FPGA无处不在。过去十年Altera在汽车领域发售了5500多....

发表于 01-24 11:07 ? 次阅读 ? 1条评论
英特尔:加速FPGA创新发展,创新FPGA+MCU架构

日厂纷纷公布FPGA研发成果 创造新商机

日本政府为重振日本半导体产业,积极推动各种先进半导体研发计划,其中一个类别就是FPGA(Field ....

发表于 01-24 11:00 ? 次阅读 ? 0条评论
日厂纷纷公布FPGA研发成果 创造新商机

基于FPGA的LCD显示的远程更新的优越性分析

LCD显示屏的应用越来越广,数量越来越多。LCD显示屏应用广泛,无处不在。小到家庭各种电器设备,大到....

发表于 01-23 16:20 ? 次阅读 ? 0条评论
基于FPGA的LCD显示的远程更新的优越性分析

基于FPGA及嵌入式CPU 的TFT-LCD接口设计

随着电子技术的飞速发展,TFT-LCD作为在亮度、对比度、功耗、寿命、体积和重量等综合性能上全面赶上....

发表于 01-23 16:16 ? 次阅读 ? 0条评论
基于FPGA及嵌入式CPU 的TFT-LCD接口设计

基于FPGA的彩色TFT-LCD控制电路设计及其ASIC实现

通过彩色液晶显示器(LCD)取景是数码相机优于传统相机的重要特性之一,它解决了使用取景框取景带来的各....

发表于 01-23 16:15 ? 次阅读 ? 0条评论
基于FPGA的彩色TFT-LCD控制电路设计及其ASIC实现

基于Xilinx Virtex-4 FPGA开发平台验证并完成LCD大屏幕拼接系统的设计

随着各种图形、图像内容质量的不断提升以及系统运行实时显示的需要,金融、通信、交通、能源、安全、军事等....

发表于 01-23 16:13 ? 次阅读 ? 0条评论
基于Xilinx Virtex-4 FPGA开发平台验证并完成LCD大屏幕拼接系统的设计

示波器的内部结构以及FPGA在示波器中的作用

示波器是我们在物理试验、电路硬件调试、智能硬件开发等领域都能见到的一种仪器,就像是医生的听诊器,作为....

的头像 FPGA开发圈 发表于 01-23 11:42 ? 次阅读 ? 0条评论
示波器的内部结构以及FPGA在示波器中的作用

基于FPGA的模拟表头测试系统设计

光纤陀螺仪是一种用来测量角速度的传感器。为了检测调制解调电路是否符合设计要求,并提高陀螺的实际应用精....

发表于 01-23 11:02 ? 次阅读 ? 0条评论
基于FPGA的模拟表头测试系统设计

CPU与FPGA视觉算法产品应用案例

机器视觉在工业自动化系统中的应用已经有一定的历史,它取代了传统的人工检查,提高了生产质量和产量。

的头像 嵌入式资讯精选 发表于 01-23 09:51 ? 次阅读 ? 0条评论
CPU与FPGA视觉算法产品应用案例

浅谈现场可编程门阵列发展三个阶段的驱动压力和基本特征

自引入以来,现场可编程门阵列(FPGA)的容量增加了10000倍以上, 性能增加了100倍。 单位功....

发表于 01-22 16:55 ? 次阅读 ? 0条评论
浅谈现场可编程门阵列发展三个阶段的驱动压力和基本特征

Intel发布全球首款集成HBM2显存的FPGA,10倍于独立DDR2显存

AMD Fiji Fury系列显卡首次商用了新一代高带宽显存HBM,大大提升带宽并缩小空间占用,NV....

发表于 01-22 16:50 ? 次阅读 ? 0条评论
Intel发布全球首款集成HBM2显存的FPGA,10倍于独立DDR2显存

Deloitte称:FPGA、ASIC有望在机器学习领域中实现崛起

在2016年初,机器学习仍被视为科学实验,但目前则已开始被广泛应用于数据探勘、计算机视觉、自然语言处....

发表于 01-22 16:48 ? 次阅读 ? 0条评论
Deloitte称:FPGA、ASIC有望在机器学习领域中实现崛起

Achronix宣布:已完成SpeedcoreTM eFPGA量产验证芯片的全芯片验证

美国加利福尼亚州圣克拉拉市--2018-02-25—基于现场可编程门阵列(FPGA)的硬件加速器器件....

发表于 01-22 16:46 ? 次阅读 ? 0条评论
Achronix宣布:已完成SpeedcoreTM eFPGA量产验证芯片的全芯片验证
岭羊 谢家沟村 北辛堡镇 蒿坝镇 马将军胡同
田家庵 沅大村 郴州市 呼兰街道 民乐街居委会
重庆时时彩爱玩来速8彩票 威尼斯人开户网址 吉祥坊官方网站 葡京登录小睹怡情 葡京网投
葡京注册网址 华人彩票官方网站 澳门葡京网上开户 澳门葡京官方 金沙国际
葡京国际 http://www.renwenguzhai.com/