我已经使用 stm32、stm32l、nRF51822、efm32g 等微控制器构建了嵌入式系统 PCB,其中大多数使用 arm cortex m3。并且对它们中的每一个进行编程通常是不同的,即一个微控制器中用于gpio的中断线与另一个中使用的中断线不同,配置一个的寄存器与另一个不同,所以我为一个与另一个不兼容,因为每个微控制器将其外围设备与处理器的连接方式不同。
我想PC架构中相当于微控制器的是主板,对吗?但是为主板制作的代码(例如使用 x86)如何与其他主板兼容?有标准吗?所有设计用于运行 Windows 或 Linux 的主板的所有中断线(由硬件链接)是否相同?和IO口是一样的吗?更改时钟的界面是一样的吗?
通常,当我为微控制器编写裸机(无操作系统)代码时,我会获取其数据表以了解如何与外围设备交互,是否有所有主板的统一参考手册?
如果有人能指点我一些关于这个主题的参考资料,我将不胜感激。当我寻找计算机体系结构书籍时,或者它们专注于处理器 ASIC 设计(我已经知道的指令集、管道、缓存等)或者它们是非常基本的东西(例如:什么是硬驱动程序)。