上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 43 下一页

2022年8月9日

STC8H开发(十五): GPIO驱动Ci24R1无线模块

摘要: STC8H开发(十五): GPIO驱动Ci24R1无线模块 Ci24R1是Si24R1的SOP8封装简化版, 厂商为南京中科微, 他们还有一个比较常见的型号是Si24R1, Si24R1就是应用极广的nRF24L1的克隆版. Ci24R1的通信协议和Si24R1, nRF24L01是兼容的, 另外支持蓝牙BLE4.2标准. 本文介绍Ci24R1如何使用GPIO模拟SPI驱动, 并提供STC8H的接收发送示例代码 阅读全文

posted @ 2022-08-09 19:41 Milton 阅读(4553) 评论(0) 推荐(0) 编辑

2022年7月29日

升级 MDK 5.37 后的问题处理: AC6编译选项, printf, 重启失效等

摘要: MDK ARM 5.28 之后包括 5.37 的版本. 这些版本即使勾选 Reset And Run, 在烧录后也不会自动重启执行 需要做以下设置 Debug -> ST-Link Debugger -> Settings 切换到 Pack 标签页, 取消勾选 Enable 点击 OK 保存. 不能再通过`__GNUC__`判断是否为 gnu arm gcc toolchain, 因为 Arm Compiler 6 默认定义了 `__GNUC__` , 如果用这个做宏判断, 会造成错误的代码被编译. 参考 CMSIS 的做法用 `__ARMCC_VERSION` 来判断 阅读全文

posted @ 2022-07-29 12:45 Milton 阅读(2315) 评论(0) 推荐(0) 编辑

2022年7月25日

立创EDA使用笔记

摘要: 在立创EDA上制作的PCB可以直接导入到嘉立创下单, 非常适合做样板. 线路图没什么好说的, 制作PCB前重要但是不费事的一个步骤. 过程中需要注意的几点 选择合适焊盘的元件 通用元件比较简单, 就是看焊盘尺寸, 0805, 0603或者0402, 手工焊接的板子到0603就好, 0402焊接就比较困难了, 因为元件太小, 容易被吹走或者被其它物品静电吸附. 阅读全文

posted @ 2022-07-25 12:43 Milton 阅读(2434) 评论(0) 推荐(0) 编辑

2022年7月17日

沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置

摘要: 介绍CH32V103系列在Linux下的工具链和编译烧录环境. 硬件准备: CH32V103 开发板/核心版, WCH-Link. 软件准备: 软件主要是用于编译的 RISC-V GCC , 和用于烧录的 OpenOCD., 这两部分都暂时只能使用WCH定制的版本, 用公版的编译时无法正确处理wch定制的中断, 烧录时无法识别 wlink 阅读全文

posted @ 2022-07-17 21:53 Milton 阅读(3402) 评论(2) 推荐(0) 编辑

2022年7月16日

解决邮件客户端QQ Mail及Thunderbird无法登入Outlook的问题

摘要: 最近无论是安卓手机的邮件客户端, 或者是 Ubuntu 下的 Thunderbird 都无法登入 Outlook 账号, 原因是需要开启双因素验证. 这个在 Outlook 界面上是不能直接设置的, 需要通过微软账号去开启 Enable Microsoft Outlook 2-factor-logi 阅读全文

posted @ 2022-07-16 14:53 Milton 阅读(1024) 评论(0) 推荐(0) 编辑

STC8H开发(十四): I2C驱动RX8025T高精度实时时钟芯片

摘要: STC8H开发(十四): I2C驱动RX8025T高精度实时时钟芯片 RX8025 自建温补晶振, 精度与 DS3231 相当, 一个性价比非常高的型号. RX8025有多个衍生型号, RX-8025T 与 RX-8025SA/NB 的 Pin不兼容, 寄存器也不完全相同. 本文介绍RX8025T的基本信息, 寄存器说明和如何使用STC8H驱动RX8025T 阅读全文

posted @ 2022-07-16 10:35 Milton 阅读(6222) 评论(0) 推荐(0) 编辑

2022年7月10日

STC8H开发(十三): I2C驱动DS3231高精度实时时钟芯片

摘要: DS3231是高精度I2C实时时钟芯片, I2C总线地址为固定的 0xD0, 内置温度补偿晶体振荡源(TCXO), 降低温度变化造成的晶体频率漂移, 在[-40°C, 85°C]范围内误差 ±0.432s/Day, 秒、分、时、星期、日期、月、年, 闰年补偿, 计数年份区间为[1990, 2190] 两个可编程闹钟, 可以按周或按日重复. 在某宝上最常见的DS3231是 ZS-042 模块, 模块集成一个CR2032电池座和一个AT24C32的8K字节EEPROM存储, 后者可以通过同一个I2C总线访问. 读取时间, 设置时间, 示例代码下载地址 Gitee, GitHub 阅读全文

posted @ 2022-07-10 21:16 Milton 阅读(2778) 评论(0) 推荐(1) 编辑

2022年7月9日

PostgreSQL的查询技巧: 零除, GENERATED STORED, COUNT DISTINCT, JOIN和数组LIKE

摘要: 零除的处理 用NULLIF(col, 0)可以避免复杂的WHEN...CASE判断, 例如 ROUND(COUNT(view_50.amount_in)::NUMERIC / NULLIF(COUNT(view_50.amount_out)::NUMERIC, 0),2) AS out_divide 阅读全文

posted @ 2022-07-09 10:29 Milton 阅读(1092) 评论(0) 推荐(0) 编辑

2022年7月4日

STC8H开发(十二): I2C驱动AT24C08,AT24C32系列EEPROM存储

摘要: AT24C系列是常见的EEPROM存储芯片, 常用于保存参数及掉电记忆的数据. 访问AT24C时I2C总线的频率不能太高, AT24C系列的I2C总线最高频率是400KHz(2.7V), 在1.8V时频率会降到100KHz, STC8H系列的主频基本上从24MHz起步, 甚至直接运行在36.864MHz上, I2C总线的频率是基于FOSC计算的, 在最初的调试阶段, 务必设置一个较大的预分频, 这样可以确保问题不出在频率过高上 阅读全文

posted @ 2022-07-04 05:55 Milton 阅读(2566) 评论(0) 推荐(0) 编辑

2022年6月25日

AIR32F103(一) 合宙AIR32F103CBT6开发板上手报告

摘要: 2022年6月初合宙新上市了 Air32F103 系列 MCU, AIR32F103 系列分 AIR32F103CBT6, AIR32F103CCT6, AIR32F103RPT6 三个型号, 分别是 32K RAM + 128K FLASH, 64K RAM + 256K FLASH, 96K RAM + 256K FLASH. 支持的最高主频216MHz, 可以Pin2Pin替换STM32F103的lqfp48封装, 可以换贴Bluepill开发板上. 开发板硬件贴票孔形式的PCB封装, 5x2双排针的设计便于当成各种Link使用. 本文介绍Windows下的环境配置 阅读全文

posted @ 2022-06-25 13:39 Milton 阅读(7711) 评论(0) 推荐(1) 编辑

2022年6月19日

合宙AIR105(四): SPI, MAX7219 8x8LED驱动

摘要: Air105的SPI介绍和驱动MAX7219的演示. Air105 包含五组普通SPI, 可以以半/全双工, 同步, 串行的方式通信. 可以被配置成主模式并为从设备提供时钟(SCK), 还能以多主配置方式工作. 支持协议Motorola Serial Peripheral Interface (SPI), Texas Instruments Serial Protocol (SSP), National Semiconductor Microwire * 包含硬件收发FIFO, 支持主或者从(主/从地址不同), 支持全双工, 半双工模式, 支持DMA 阅读全文

posted @ 2022-06-19 18:35 Milton 阅读(1101) 评论(0) 推荐(0) 编辑

2022年6月18日

合宙AIR105(三): 定时器, 定时器中断和PWM输出

摘要: Air105 有 1 个 Timer 单元,包含 8 个独立定时器: Timer0 到 Time7, 8 个定时器中断源独立,每个定时器单独占 1 个中断源, 使用 PCLK 时钟频率作为定时器计时钟源, 定时器采用向下计数方式. 每个 Timer 单元定时器都支持 PWM 模式, PWM 模式最高频率 PCLK/2, PWM 单次触发(one shot)功能, 用定时器控制板载LED闪烁, 以及呼吸灯效果示例代码. 阅读全文

posted @ 2022-06-18 21:01 Milton 阅读(1216) 评论(0) 推荐(1) 编辑

合宙AIR105(二): 时钟设置和延迟函数

摘要: Air105 的时钟 高频振荡源 * 芯片支持使用内部振荡源, 或使用外置12MHz晶体 * 芯片上电复位后 ROM boot 启动过程基于内部12MHz的振荡器 * 芯片内部集成的12MHz振荡源精度为±2%, 精度一般 * 使用外置12MHz晶体, 需要软件切换 * 经过PLL倍频后为系统提供输入 * 倍频后的PLL时钟频率可通过寄存器进行配置,可选频率为:108MHz, 120MHz, 132MHz, 144MHz, 156MHz, 168MHz, 180MHz, 192MHz, 204MHz 阅读全文

posted @ 2022-06-18 14:56 Milton 阅读(1166) 评论(2) 推荐(0) 编辑

2022年6月12日

DS18B20数字温度计 (三) 1-WIRE总线 ROM搜索算法和实际测试

摘要: 以下说明当总线上存在多个 DS18B20 芯片时, 识别各个 DS18B20 的编号并进行通信的算法. 其实这是 1-Wire 总线的搜索算法, 当 1-Wire 总线上挂接了多个设备时, 总线控制端需要通过 ROM Search 命令来判断总线上存在的设备以及获取他们的8字节唯一ROM. 1-WIRE SEARCH ALGORITHM 算法规则和实现机制, ROM搜索算法的核心规则, 是在搜索中重复进行一个简单的三步操作 阅读全文

posted @ 2022-06-12 11:32 Milton 阅读(2747) 评论(3) 推荐(1) 编辑

DS18B20数字温度计 (二) 测温, ROM和CRC算法

摘要: DS18B20的核心功能就是数字化的温度读数, 可以设置为9, 10, 11, 12位分辨率, 缺省分辨率是12位. 各分辨率对应的读数, 温度分辨率分别是0.5, 0.25, 0.125, 0.0625摄氏度. 在执行温度转换命令Convert T`0x44`后, 温度会被转换并存储在一个2字节的内存单元, 然后通过读取命令Read Scratchpad`0xBE`读出. 无论是读取8字节ROM, 还是读取9字节暂存器, 最后一个字节都是前面所有字节的CRC校验值. CRC值的比较与是否继续操作完全由总线控制端决定, DS18B20 内部仅计算CRC, 并不会对CRC不匹配的情况进行处理, 需要总线控制端主动判断. 阅读全文

posted @ 2022-06-12 03:08 Milton 阅读(2403) 评论(2) 推荐(0) 编辑

DS18B20数字温度计 (一) 电气特性, 寄生供电模式和远距离接线

摘要: DS18B20数字温度计 (一) 电气特性, 寄生供电模式和远距离接线 DS18B20 是一个常见的数字温度计芯片, 因为测温准确, 廉价且接线简单, 实际应用广泛, 在各种教学实验套装中出镜率也很高. 在写STC8H GPIO示例的时候写了一下 DS18B20, 这个型号虽然简单古老, 但是内容比较有意思, 一个篇幅写不下, 所以把内容抽出来单独介绍. 阅读全文

posted @ 2022-06-12 02:44 Milton 阅读(2482) 评论(0) 推荐(0) 编辑

2022年6月4日

STC8H开发(十一): GPIO单线驱动多个DS18B20数字温度计

摘要: DS18B20 是一个单线通信的数字温度计, 允许在一根总线上挂接多个 DS18B20 并分别通信, 在普通温度下, 可以直接从数据口取电, 这时候只需要两根连线. 供电电压兼容3.3V和5V, 温度检测范围[-55°C, +125°C]摄氏度, 在 [-10°C, +85°C] 精确率可以达到 ±0.5°C. DS18B20内部有9字节的暂存器和3个字节的EEPROM存储, 带一个8字节的唯一序列号. 文中会说明其8位CRC的计算方式, 以及单线总线上多个DS18B20的搜索算法. 阅读全文

posted @ 2022-06-04 22:59 Milton 阅读(1600) 评论(0) 推荐(0) 编辑

2022年6月3日

STC8H开发(十): SPI驱动Nokia5110 LCD(PCD8544)

摘要: STC8H开发(十): SPI驱动Nokia5110 LCD(PCD8544) 有片很早以前买的Nokia5110 LCD一直在纸箱里吃灰. 可能是买其它配件时送的? 没有合适的用途一直扔在那里, 偶尔见到总会想什么时候有空给它点一下. 外观长这样. 其实市面上这种模块有几个不同的版本, 另一种版本是上下有两排排针, 方便不同的PCB布局, 功能是一样的. 单色LCD, 84x48像素, 带4颗蓝色LED灯珠作为背光. 显示芯片是Philips PCD8544. 因为是Nokia5110手机的显示屏, 所以一般都叫它Nokia5110 LCD. 在2014年大屏手机还没流行的年代, 这是个相当不错的显示输出设备, 相对于1602和2004LCD 阅读全文

posted @ 2022-06-03 12:12 Milton 阅读(1720) 评论(0) 推荐(0) 编辑

2022年5月29日

将CH340G的USB2TTL扩展出RTS, DTR口

摘要: 将CH340G的USB2TTL扩展出RTS, DTR口 因为要测试串口中的RTS和DTR, 最常见的USB2TTL, 基于CH340G, 并没有引出RTS. 然而这个IC是支持这些信号的, 只是PCB上将这些pin留空了. 可以增加一些排针将这些pin脚引出. 阅读全文

posted @ 2022-05-29 15:51 Milton 阅读(815) 评论(0) 推荐(0) 编辑

MOS管实现的STC自动下载电路

摘要: MOS管实现的STC自动下载电路 STC MCU在烧录时, 需要断电重置后才能进入烧录状态, 通常是用手按开关比较繁琐. 如果利用STC-ISP在烧录开始时会拉低RTS的特性, 可以实现烧录开始时自动断电复位. 下面的电路适用于烧录下载STC MCU. 阅读全文

posted @ 2022-05-29 15:16 Milton 阅读(1565) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 43 下一页

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示