随笔分类 -  Embed/Mobile

上一页 1 2 3 4 5 6 ··· 10 下一页

嵌入式, 移动设备
AIR32F103(十) 在无系统环境和FreeRTOS环境集成LVGL
摘要:LVGL是嵌入式设备中常用的图形显示库, 这篇基于 256K Flash 的 AIR32F103CCT6 和 SPI接口的 ST7735 128x160 LCD屏, 介绍 LVGL 在无系统环境和FreeRTO环境, 带DMA和不带DMA方式的集成步骤 阅读全文

posted @ 2023-03-10 18:24 Milton 阅读(1631) 评论(0) 推荐(1) 编辑

普冉PY32系列(六) 通过I2C接口驱动PCF8574扩展的1602LCD
摘要:普冉PY32系列(六) 通过I2C接口驱动PCF8574扩展的1602LCD1602LCD 是工业上常用的模块, 在工厂交通运输设备上经常能见到. 驱动芯片为 HD44780, 1602LCD 的字符显示为两行, 每行16个字符, 字符基于5×8的像素矩阵 阅读全文

posted @ 2023-03-04 10:17 Milton 阅读(2764) 评论(0) 推荐(2) 编辑

AIR32F103(九) CAN总线的通信和ID过滤机制及实例
摘要:CAN 是一种典型的广播式网络, 在实际应用中, 如果只希望接收到特定类型的数据, 就要借助过滤器来实现. AIR32/STM32的CAN控制器包含14个过滤器, 可以设置为 屏蔽模式 或 列表模式 对CAN总线上的报文进行过滤. 当节点希望接收到一种报文时, 可以用屏蔽位模式进行过滤, 阅读全文

posted @ 2023-02-25 22:48 Milton 阅读(1520) 评论(0) 推荐(0) 编辑

Ubuntu20.04/22.04 ESP32 命令行开发环境配置
摘要:ESP32分三个系列: ESP32-S(ESP32-S3, ESP32-S2), ESP32-C(ESP32-C3), ESP32(ESP32-D0xx, ESP32-S0xx), 在开发环境下, 这些属于不同的target, 需要单独指定. 配置环境, 导出esp-idf项目仓库 阅读全文

posted @ 2023-02-24 22:09 Milton 阅读(891) 评论(0) 推荐(0) 编辑

STM32F407VET6 / BLACK_F407VE开发板间隔0.5秒不断重启
摘要:有一块 STM32F407VET6 的故障开发板经常无法烧录, 必须reset之后才能连接, 并且程序运行一断时间后会halt, 吃灰一两年了. 原本打算把这片 STM32F407VET6 换到新板子上, 已经重新打好了板子. 今天在动手换板子前, 上电试一下, 烧录一个最简单的闪灯程序, 跑了十几分钟后依然在闪, 好像没问题, 然后又跑了一个带串口输出的程序, 发现还是有问题, 会不断重启. 阅读全文

posted @ 2023-02-12 23:34 Milton 阅读(447) 评论(0) 推荐(0) 编辑

普冉PY32系列(四) PY32F002A/003/030的时钟设置
摘要:PY32F002A, PY32F003, PY32F030 三个系列硬件相同, 下面以 PY32F030的时钟树结构为例说明 内部时钟有32KHz和24MHz(从代码上看其实是8MHz),外部时钟是直接接入, PLL只有2倍. 使用外置晶振时如果要达到标称的48MHz, 晶振频率就必须用24MHz, 而不是常见的8MHz了. 在示例代码中有备注在PLL启用时, 外置晶振的频率需要大于12MHz, 因此外部晶振的频率可以选择的是12MHz - 24MHz 阅读全文

posted @ 2023-02-11 13:51 Milton 阅读(5533) 评论(0) 推荐(0) 编辑

Ubuntu 22.04 GCC Arm 12.2.rel1编译 DAPLink
摘要:记录一下过程. Arm Mbed 应该属于Arm的机构或者是Arm资助的机构. 常用的 DAPLink 基本上都是从这个项目派生的. 仓库主要是使用 Keil, 对 GCC 的支持是 2020 年才正式合并进来的. Ubuntu 下使用 GCC Arm 编译 阅读全文

posted @ 2023-02-02 22:21 Milton 阅读(773) 评论(0) 推荐(0) 编辑

Ubuntu20.04/22.04 安装 Arduino IDE 2.x
摘要:这周收到两片基于LGT8F328P LQFP32的Arduino Mini EVB, 机器上没有 Arduino 环境需要新安装, 正好感受一下新出的 Arduino IDE 2.x, 记录一下 Ubuntu 20.04/22.04 下安装 Arduino IDE 2.x 的过程. 阅读全文

posted @ 2023-01-21 01:14 Milton 阅读(1234) 评论(0) 推荐(0) 编辑

STM32F103和AIR32F103的FreeRTOS中断优先级
摘要:Cortex M 的中断和优先级, 首先要区分开 中断 和 中断优先级 这是两个不同的东西, 对于 Cortex-M0 和 Cortex-M0+ 内核, 除了系统内建中断外, 支持最多 32 个中断. 对于 Cortex-M3 内核, 除了 16 个内核中断外, 支持最多 240 个中断, 有8-bit的优先级, M0至少需要实现2-bit, 即4个优先级, M3/M4 至少需要实现3-bit, 即8个优先级 阅读全文

posted @ 2023-01-19 13:24 Milton 阅读(899) 评论(0) 推荐(0) 编辑

普冉PY32系列(三) PY32F002A资源实测 - 这个型号不简单
摘要:如同 STM32F103C8T6 与 CBT6 有着同样的128K flash容量一样, 市面上很多芯片, 同一系列的多个型号其实底下使用的是相同的硬件, 只是通过软件, 芯片ID, 某些隐藏寄存器(例如AIR32F103)或者物理熔断对容量进行限制. 让我们看一看 PY32F002AF15P 这颗标称 20K Flash, 3K RAM 的芯片还隐藏着哪些资源. 阅读全文

posted @ 2023-01-15 10:37 Milton 阅读(10437) 评论(12) 推荐(0) 编辑

AIR32F103(八) 集成Helix MP3解码库播放MP3
摘要:Helix 解码库提供了MP3内容的MPEG兼容解码, 支持可变比特率, 恒定比特率以及立体声和单声道音频格式. Helix 的定点解码库专门针对ARM处理器进行了优化. Helix 解码库是以帧为解码单位的, 一次解码一帧, 运行需要占用的资源很少, 可以在任何能够执行长整数乘法运算(两个32位输入生成一个64位结果)和长整数乘法-累加(具有64位累加器的长整数乘法)的32位处理器上运行. 在 air32f103-template 项目中, 已经将 Helix 加入 Library 并在 Makefile 中增加了编译选项 阅读全文

posted @ 2023-01-15 00:13 Milton 阅读(1551) 评论(0) 推荐(0) 编辑

普冉PY32系列(二) Ubuntu GCC Toolchain和VSCode开发环境
摘要:以下介绍PY32F0系列在Ubuntu下如何使用GCC Arm Embedded Toolchain环境进行开发和烧录. GitHub 仓库地址: https://github.com/IOsetting/py32f0-template 阅读全文

posted @ 2023-01-14 16:10 Milton 阅读(5952) 评论(0) 推荐(0) 编辑

普冉PY32系列(一) PY32F0系列32位Cortex M0+ MCU简介
摘要:PY32F0 属于 32位 M0 内核的MCU, 配置上有 16KF+2KR, 20KF+3KR, 32KF+4KR, 64KF+8KR 这些组合, 根据外设的丰富程度分成了 PY32F002, PY32F003, PY32F030, PY32F072 这四个系列, 另外还有一家芯岭科技贴牌的 XL32F003 系列. 基础的外设 ADC, TIM, SPI, I2C, UART 都有, 除了002, 其它系列都带DMA支持, 其1元左右的价格在市场上非常有性价比. 开发上, 因为是通用的 32位 M0内核, 可以在Keil5, IAR, VScode 等IDE上开发, 使用 STLink, DAPLink 或 JLink 烧录和调试 阅读全文

posted @ 2023-01-14 15:05 Milton 阅读(10552) 评论(2) 推荐(1) 编辑

AIR32F103(七) AIR32F103CBT6/CCT6启用96K内存
摘要:AIR32F103CBT6 和 AIR32F103CCT6 分别带 32K Byte和 64K Byte 内存. 对于48pin封装的 AIR32F103, 32K和64K的内存已经是市面上M3芯片中相当不错的容量, 至于64pin封装的AIR32F103RPT6, 96K的内存只在市场上的高端型号中出现, 例如雅特力的AT32F403A系列. 但是实际上这两个型号和 AIR32F103RPT6 一样, 内存空间为96K. 这个隐藏的内存空间, 是 Hedley Rainnie 在观察切换216MHz的过程中发现的. 这个容量也得到了合宙技术的确认. 阅读全文

posted @ 2022-12-25 21:25 Milton 阅读(2651) 评论(0) 推荐(0) 编辑

PyOCD Notes
摘要:Installation Ubuntu20.04 For Ubuntu20.04 the version in apt repository is 0.13.1+dfsg-1, which is too low to recognize J-Link probe $ apt-cache show p 阅读全文

posted @ 2022-11-29 00:32 Milton 阅读(317) 评论(0) 推荐(0) 编辑

AIR32F103(六) ADC,I2S,DMA和ADPCM实现的录音播放功能
摘要:使用的MCU型号为 AIR32F103CCT6. 通过工作机制和示例代码, 说明如何使用AIR32自带的内存实现简单的语音录制和播放功能, 以及使用 ADPCM 对音频数据进行压缩, 提高录制时长. 通过这些机制, 可以快速扩充为实用的录制设备, 例如外挂I2C或SPI存储, 或提升无线传输的音质, 在同样的码率下使用更高采样率. 阅读全文

posted @ 2022-11-23 20:59 Milton 阅读(1834) 评论(0) 推荐(0) 编辑

AIR32F103(五) FreeRTOSv202112核心库的集成和示例代码
摘要:AIR32F103CBT6的存储容量加上206MHz频率, 跑RTOS才能充分利用它的性能. 关于FreeRTOS的介绍和集成, 网络上已经有不少文章, 可以直接百度搜索查看, 这里主要介绍一下项目中的FreeRTOS集成步骤和代码说明. 阅读全文

posted @ 2022-11-11 17:36 Milton 阅读(1099) 评论(0) 推荐(1) 编辑

沁恒CH32V003(二): Ubuntu20.04 MRS和Makefile开发环境配置
摘要:Ubuntu20.04 MRS和Makefile开发环境配置. 使用 MounRiver Studio Community IDE 进行开发是比较简单的一种方式, 前往http://mounriver.com/download下载 MounRiver_Studio_Community_Linux_V130, 如果倾向于使用其它的IDE, 例如VSCode, 则需要使用 Makefile 方式进行配置 阅读全文

posted @ 2022-10-31 10:15 Milton 阅读(1755) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 10 下一页

导航