一、OLED更改配置
OLED的初始化配置更改过后,需要重新上电,才能有变化(指的是拔掉VCC再插上,不是按复位键)
二、OLED不亮
在用江科大的初始化代码的时候,有时候OLED会不亮或乱码
因为有些OLED模块出厂的时候SCL和SDA脚没有上拉电阻,导致电流不足
而江科大配置两脚为开漏输出
应该修改配置为推挽输出
(后续又不亮了。自己加了上拉电阻也不亮,待补充。。。)
三、手动旋转编码器
五脚手动编码器,接线图
引脚定义:
1.EC11常见额定电压是5V,实测3.3V也可以驱动,但不建议使用3.3V (会出现杂波阻容是为了进行上拉输出和硬件滤波
2.A,B为旋转信息的输出 (两相)
3.C为接地
4.SW为内部的开关,可以当作轻触按键使用 (注意加软件滤波)
5.每转动一格,AB相会出现一个持续10-150ms的低电平,默认为高电平状态
6.顺时针转动时A相的低电平会比B相提前逆时针转动时A相的低电平会比B相延后
参考:5.旋转编码器 - 哔哩哔哩 (bilibili.com)
四、keil 中使用printf
我在移植程序的时候遇到
正常在keil中使用printf的时候,如果没有重定向,printf输出是没有方向的,因此会出现错误,程序会卡死在 BX R0(汇编卡死在 BEAB BKPT 0xAB)处
BKPT:断点指令用于软件调试;它使处理器停止执行正常指令(使处理器中止预取指)而进入相应的调试程序。(仅用于v5T体系)
解决办法是魔术棒中勾选Use MicroLIB(红框)
表示使用微库,将printf默认定向到串口1,详细了解可参考:
KeilMDK配置项中Use MicroLIB-CSDN博客