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

做网站开发需要学那些东西百度直播平台

做网站开发需要学那些东西,百度直播平台,网站建设优化去哪学,seo搜索排名背景 官方发布的1.23依然没有在ESP32中集成PCNT功能。考虑到硬件的PCNT模块可以提供4倍的编码精度(对比使用PIn IRQ),还能提供硬件去毛刺。 还是自己集成一下吧。 实际上Github上早在2022年1月的时候就已经有人建议了将PCNT加入正式版本的功…

背景

官方发布的1.23依然没有在ESP32中集成PCNT功能。考虑到硬件的PCNT模块可以提供4倍的编码精度(对比使用PIn IRQ),还能提供硬件去毛刺。

还是自己集成一下吧。

实际上Github上早在2022年1月的时候就已经有人建议了将PCNT加入正式版本的功能里面,但是官方一直没有动作:

ESP32: Add Quadrature Encoder and Pulse Counter classes. by IhorNehrutsa · Pull Request #8766 · micropython/micropython (github.com)作者的代码在这个连接:

IhorNehrutsa/micropython at ESP32_PCNT_Encoder_Counter (github.com)

代码质量很高。但是考虑到IDF和MP的版本更新,我还是决定自己在新的发布版本中将这个功能加到里面。

差异性分析

在文件差异这里可以看到作者的代码和官方代码的差异性:

提一句,这个代码的使用说明和实际的代码是有差异(估计是后来改了一部分)的,需要去看源代码确认。

实际上需要改的就是ports/esp32下面的8个文件,而且machine_encoder.c和machine_encoder.h的两个代码是完全新增的,可以原作者那边下载回来;然后去micropython那边下载1.23的代码回来。

代码修改

对比是精确到行的,所以点开代码一个个该就好了,需要注意,有一些文件改的地方不止一处,别只改一处就算了,否则编译会大概率出错。

全部改好之后,编译一次。MP的编译最好在linux,笔者是在ubuntu,有很多相关的文章,我就不重复了。

//idf 环境变量
cd esp-idf
source export.sh
//编译mpy交叉交叉编译器
cd ~/micropython/mpy-cross
make
//配置板子信息
cd ~/micropython/ports/esp32
idf.py -D MICROPY_BOARD=ESP32_GENERIC_S3 menuconfig
//编译
make BOARD=ESP32_GENERIC_S3 MICROPY_BOARD_VARIANT=FLASH_4M

注意安自己的实际条件改下board和path。我是直接买的ESP32-S3-R2FH4,集成2M PSRAM和4M FLASH的(主要是这个性价比高),所以我新建了一个板,和你想要的版本可能是不一样的。

然后就报错了(情理之中)。

第一个warning是说pcnt.h这个驱动快过期了,让你用pulse_cnt.h,实际上这个影响不大(我注释了这个include依然能过,问题是在STATIC,C的保留字应该是小写的 static。去看看官方的machine_pwm.c,用的也是static。那就在上面加一个宏定义好了:

这下就能编译出来了。

功能测试:

from machine import Encoder,PinencL = Encoder(0,phase_a = Pin(33,mode=Pin.IN),phase_b = Pin(34,mode=Pin.IN),x124=4,filter_ns = 10_000,);
encR = Encoder(1,phase_a = Pin(35,mode=Pin.IN),phase_b = Pin(36,mode=Pin.IN),x124=4,filter_ns = 10_000,);while True:print (f'{encL.value()},{encR.value()}')import  timetime.sleep(1)

代码直接使用了两个正交编码器,接入的是平衡车的左右电机的编码器。测试代码有效,可以识别正传反转,而且4x之后精度确实很高。

固件下载

【免费】ESP32S3MICROPYTHON1.23集成PCNT功能4MFLASH资源-CSDN文库

http://www.dinnco.com/news/59710.html

相关文章:

  • 企业网站建设一条百度推广费用一天多少钱
  • 漳州专业网站建设公司正规电商培训学校排名
  • 哪个网站能看到医生做的全部手术山西百度查关键词排名
  • 网页设计开发培训seo基础教程
  • 企业网站一般用什么框架做百度影音在线电影
  • 谁做网站收录互联网推广运营是干什么的
  • b2b平台好做吗优化营商环境条例心得体会
  • 未来前景比较好的行业有哪些seo免费课程视频
  • 网站建设cms什么是软文营销
  • 郑州高端网站定制公司深圳网站优化
  • 做化妆品网站的原因关键词seo优化软件
  • 招远做网站哪家好销售推广的方法都有哪些
  • 宁波招聘网站开发淘宝关键词优化推广排名
  • 广西壮族自治区人民政府门户网站网站维护主要做什么
  • 只用html5可以做网站吗互联网广告价格
  • 广东手机网站开发公司农村电商平台
  • 做网站满屏的照片尺寸是多少什么叫关键词举例
  • 504 wordpress360优化大师最新版
  • 根据网站做app2022百度指数排名
  • 政府机关网站建设方案公司网站设计
  • dw做的网站怎么百度优化怎么做
  • 浦东做网站的公司今天的国内新闻
  • jsp做的网站如何查看网站推广渠道
  • 今日国际新闻最新头条10条台州seo网站排名优化
  • 重庆网站建设吧ios aso优化工具
  • 西宁好的网站建设免费个人网站服务器
  • 表白网页在线生成网站源码百度客服24小时人工电话
  • 企业网站建设费用 珠海湖北seo服务
  • 北京建设高端网站的百度网盘下载安装
  • 网站建设中iis小广告