st.avros.net
兰湾
http://st.avros.net/index4.html
功能很简单, 就是发出字母V的莫尔斯电码".-", 用来调试机器, 很好用. 由CD4060组成约100kHz的RC振荡器, 6次二分频后得到大约600Hz的音频信号; 继续由74HC393分频得到4bit控制信号, 由两只CD4011组成的逻辑电路变换成字母V的开关信号, 最后由一只NPN管实现600Hz音频调制. 用一只8脚单片机的话, 硬件上可以更简单. 用逻辑电路的好处是不用调试, 焊好通电就能工作了. 开始由一只10440锂电池直接供电, 结果发现电池电压变化会严重影响音调, 于是增加了HT7750升压电路, 让它在固定5V电压下工作, 效果好多了. 效果差不多, 在阳台上能收到中国之声一个台, 别的台都收不到了. 总之和之前做的直放机没啥区别吧. 大概是输入回路的Q值太低, 弱信号全被中国之声压住了. 有空了再做FM机试试吧. 这次是PCM2702 NE5534 2P2的组合 以USB的供电能力最多只能带动2P2了. 相当小巧, PCB面积比公交卡还小, 不过输出变压器没包括在内. 636估计是除了矿石机以外, 最简单的能收到台的收音机了, 电路图如下:. 常用的LM2596芯片可以方便地搭...
st.avros.net
兰湾
http://st.avros.net/index5.html
继续进行 NE555 boost 和 flyback 实验. 之前试过用NE555推MTD3055, 5V升6.3V的实验, 效果很好, 输出1A以上电流, 效率在80%到90%之间. 这次的电路图基本相同, 打算升压到125V左右, 再经过后面的线性稳压, 得到90V左右的稳定电压. 结果不太理想, 5V输入时闭环只能升到85V左右, 12V输入时可以达到130V, 效率50% 60%. 加大负载则效率迅速跌到30%. 从5V逐渐降低输入电压, 降到3.3V时仍能工作, 但带负载时(3W节能灯)不能从3.3V启动工作. 把振荡频率从25kHz提高到50kHz, 效率提高到接近70%, 但没有根本的改善. 再就是变压器的吱吱声实在是太烦人了. 1)改用低Rds(on)的MOSFET代替IRFR420, 仍用boost方式, 看能不能稳定实现5V升到110V左右. boost没有噪音的优势还是很明显的. 2)继续绕变压器, 实现升压到400V, 同时也试试用74HC04、晶体管自激之类实现升压的可能性. 中间一北大的师弟把马潮老师惹毛了, 于是这老师又出了个题, 当joke看吧:. 检查了一下各点的电压情...
scateu.me
Links
http://scateu.me/links
Scateu Blog - S.B. Https:/ gg.blink.moe. Http:/ 163.donothackme.club/. Http:/ mirrors.tuna.tsinghua.edu.cn. Http:/ jaq.alibaba.com. Https:/ news.ycombinator.com. Http:/ sdr-x.github.io. Http:/ blog.kokonur.me. Http:/ st.avros.net/. 时序图 http:/ www.websequencediagrams.com/. Araxis Merge / Beyond Compare 差异比对. Ascii 风格的流程图 http:/ asciiflow.com/. Http:/ bt.shousibaocai.com. Http:/ www.ttmeiju.com/. Http:/ www.zimuzu.tv/. Scateu Blog - S.B. Scateu Blog - S.B. Yet another Scateu Blog (aka SB).
st.avros.net
兰湾
http://st.avros.net/articles/stm32_fonts.html
标题其实可以写成"在可执行程序里嵌入二进制资源的方法", 不过这个题目大了点, 还是原样吧. 以前如果我们用到不带字库的点阵LCD, 一般都是把字库按16进制写成一个大数组, 再和其他源程序一起编译. 有没有方便一点的办法呢 这里给出两个方案. 假设我们需要嵌入的是5x7的ascii点阵字库, 文件名是asc5x7.bin. Arm-none-eabi-objcopy -B arm -I binary -O elf32-littlearm - rename-section .data=.rodata asc5x7.bin asc5x7.o. 需要注意的是, objcopy生成的.o文件默认是把数据放在.data段的. 因此这里需要加个- rename-section的选项, 把.data改成.text或者.rodata, 不然单片机可怜的一点点RAM根本不够用. 如果是在PC上运行, 这里改不改就无所谓了, 不过内存还是能省点就省点的好. Binary asc5x7 bin start, binary asc5x7 bin end, binary asc5x7 bin size. 把这些东西复制到之前那...
st.avros.net
兰湾
http://st.avros.net/archives.html
卡片手电 and STLINK转接板 and 迷你电源. 继续进行 NE555 boost 和 flyback 实验. Scateu Blog - S.B.
st.avros.net
兰湾
http://st.avros.net/articles/nixie.html
多年前sunzx送了我几个SZ-8数码管, 一直没顾上试验. 前几天终于给它搭了驱动电路, 如图:. 由74HC164将串行输入信号转为8位并行, 其中4位作为BCD码, 由74LS42转为数码管的驱动信号. 由于74LS42的输出是负逻辑, 因此驱动2N5551时需要用发射极驱动. HC164的另外三位用于驱动藏在SZ-8肚子下面的RGB三色LED. 几个模块之间可以级联, 这样用起来就简单多了. 采用boost升压电路. NE555接成多谐振荡器, 占空比约为90%, 直接驱动IRF640S的栅极. 2SC1815在这里起比较器的作用, 对输出电压取样后反馈到NE555的调制端5脚. IRF640S一般需要10V栅极驱动电平, 但实际测试输入电压5 12V均能正常工作, 升压效率约50%. 视频, 其中两只有点接触不良, 以后有空再改吧. Scateu Blog - S.B.
st.avros.net
兰湾
http://st.avros.net/articles/cute_power_v2.html
做了个简单的小电源,用一节18650供电,可以输出1.26V、1.8V、2.5V、2.85V、3.3V、5.0V和6.0V,共7种电压,可以通过USB给18650充电,如图. 充电使用TP4056,充电电流为1200/1.5k = 800mA。 0, 12x, 1.8, 2.5, 2.85, 3.3, 5.0, 6.0. 正常状态为8分频,9.6M / 8 = 1.2M. Scateu Blog - S.B.
st.avros.net
兰湾
http://st.avros.net/articles/heatsink_calc.html
散热面积=(翅片高度 times2 times翅片数量 基板宽度) times截断长度$. 简单拟合得: (R mathrm{sa}=23.3A {-0.39} ). 总热阻 (R mathrm{tot}=R mathrm{sa} R mathrm{cs} R mathrm{jc} ). 注 (R mathrm{sa} ). 为器件和散热器的接触热阻,通过导热硅脂接触的取0.1 0.2K/W,加绝缘垫的取1K/W。 散热能力 (P= frac{T mathrm j-T mathrm a}{R mathrm{tot} ). 为器件的允许工作结温, (T mathrm{a} ). 举例 一个宽50mm,翅片高10mm,8片翅片,截断长度为35mm的散热片, 其有效散热面积为 ( 10 mathrm{mm} times2 times8 50 mathrm{mm}) times35 mathrm{mm}=73.5 mathrm{cm} 2 ). 按上面的公式, (R mathrm{sa}=23.3 times73.5 {-0.39}=4.36 mathrm{K/W} ).
st.avros.net
兰湾
http://st.avros.net/author/stavros.html
GNU工具链里的size大家应该都用过, 它可以显示elf/obj/exe/dll等可执行文件里各个段的大小, 非常方便. 加-A和-B参数分别是按sysv和berkeley格式显示, 默认带-B参数. Avr-gcc里的avr-size则又增加了一个-C的选项, 可以显示单片机flash和ram的占用比例, 需要同时用- mcu参数指定avr单片机的型号, 效果是这样的:. Avr-size -C - mcu=attiny26 main.elf AVR Memory Usage - - - - - - - - Device: attiny26 Program: 1316 bytes (64.3% Full) (.text .data .bootloader) Data: 23 bytes (18.0% Full) (.data .bss .noinit). 可惜arm-gcc里的size并没有这个选项, 于是从avr转到stm32之后, 常常会感觉到不方便. DAC用的是PT8211, 软件方式写I2S数据, 结果还是有爆音. 大概I2S对时序要求比较严格, 有空了改成硬件I2S再试试. 某个在线计算...
st.avros.net
兰湾
http://st.avros.net/articles/tiny24_clock.html
用手里闲置的Attiny24 LCD0801屏做了个小钟, 如图:. 其中LCD用的是0801, 和1602接口完全一样, 加了一块之前做的 串口转换小板. 由于是33V供电, LCD的V0脚需要接入负压, 这里负压用MCU的一路PWM经负倍压整流产生. 晶振用什么频率其实都无关紧要, 只要是个整数, 并且按一定的分频规则能凑出2Hz的频率就行了. Tiny24 clock src.7z. Scateu Blog - S.B.
SOCIAL ENGAGEMENT