意法半导体 UINIO-MCU-STM32F103 标准库典型实例

博主之前文章介绍的STC51系列单片机是一款结构简单、易于学习的嵌入式微控制器,但是由于标准 8051 架构诞生于 70 年代,其硬件架构、资源数量以及编程方式都已显老旧,成本和性能方面也皆落后于其它架构产品,市场占有率逐步遭到侵蚀,目前仅常见于一些教学与发烧友使用的范畴。伴随近几年物联网行业的快速兴起,STM32等基于 ARM Cortex 内核的微控制器,凭借丰富的片上资源与简单易用的标准外设库,逐步成为消费与工业领域中的主流产品。

意法半导体成立于 1987 年,由意大利 SGS 和法国 Thomson 两家半导体企业合并而成,本文所介绍的STM32F103C8T6属于该公司应用极为广泛的型号,其提供的STM32F10x Standard Peripheral Library标准外设库对 STM32 片上资源进行了完善的封装,相对于 ST 公司目前力推的HAL/LL库,标准外设库更加接近于传统的寄存器操作,因而也较为容易向兆易创新GD32等国产微控制器移植。

阅读更多

宏晶 STC89C52RC 微控制器实践小书

伴随 NB-IOT、LoRa、5G 等无线物联网通信技术的快速成熟,已经诞生近四十余年的 8051 系列微处理,在功耗、性能、开发难易程度方面,已然全面落后于 ARM Cortex-M3 等主流嵌入式微控制器方案。但是由于其技术架构较为经典,寄存器配置相对简洁,在一些低成本场景中依然有所沿用。笔者当前使用的开发板基于宏晶STC89C52RC嵌入式微控制器方案,虽然购置于六年以前,但是依然集成有各类常用的 UART、I²C、SPI 总线模块。

笔者日常开发工作当中,经常需要使用到此类嵌入式总线通信协议,因此参考了官方文档以及相关技术资料,逐步将本文涉及的各类模块驱动移植至当前开发板,便于用作与其它嵌入式设备联调测试之用。近几年,意法半导体的STM32F103C8T6量产价格不断下探,已经逐步接近宏晶的STC8051系列产品,可以预见后者将会逐渐面临市场淘汰,作为一款极为经典的 8 位微控制器,用作测试和实验目的依然是不错的选择。

阅读更多

基于三星 S3C2440 的嵌入式 Linux 攻略

由于 Linux 操作系统内核具备可裁剪定制的特性,因而能够运行于 ARM 架构的嵌入式设备当中。伴随近几年,硬件性能的飞速提升以及价格的快速下降,Raspberry PiNano PiRock PiOrange Pi等可运行完整桌面 Linux 操作系统的卡片电脑大量涌现,通用计算机与嵌入式系统之间的界限愈来愈模糊。各个 IC 厂家不断提升 MCU 性能的同时,也推出了相应的公版外围电路、通用操作系统、驱动程序支持等一揽子完善的嵌入式技术解决方案,与笔者七年以前接触嵌入式技术伊始,早已经不可同日而语。

笔者手上这款 Mini2440 开发板于 2013 年购置,是由广州友善电子科技有限公司于 2010 年推出的 ARM9 开发板,虽然板载的三星 S3C2440 嵌入式微处理器已然廉颇老矣,且对应的Linux 2.6.32.2内核版本也早已壮士暮年。但由于最近涉及 Linux 嵌入式操作系统相关的工作,因此重新上电使用,同时以怀旧心态执笔撰写本文,用于记录一些心得体会,同时也作为日后备忘。

阅读更多

宏晶 STC90C516RD+ 数据手册精读

8051 微处理器是指兼容Intel MCS-51体系架构的一系列单片机,全球有众多的半导体厂商都有基于这一体系架构的产品,例如:Atmel 的AT89C52、NXP 的P89V51、宏晶科技的STC89/90系列等。截至本篇文章成文之前,意法半导体推出的STM8系列单片机风头正劲,同为 8 位单片机产品,虽然 8051 在架构、功耗乃至价格上基本已无优势,但作为比较经典的嵌入式微处理器解决方案,依然具备着不错的学习价值。

本文介绍的STC90C516RD+属于5V单片机(工作电压为5.5V-3.3V),属于相对比较廉价和常见的国产单片机解决方案,片上拥有中央处理器CPU程序存储器Flash数据存储器RAM定时/计数器UART串口IO接口EEPROM看门狗等常用资源。

阅读更多