用C语言控制单片机的详细原理是什么?
C语言源程序-> C编译器->汇编代码->汇编器->;机器代码
所谓单片机C语言,就是用C语言写单片机程序,不存在C语言控制单片机这种东西。具体过程是:用特定的C编译器将C语言源程序编译成单片机的汇编代码,再由汇编器将汇编代码编译成单片机可执行的机器码,然后下载到单片机的内存中运行。目前通用的集成开发环境(如Keil C)可以一次性生成机器码。
需要补充的是,单片机也是计算机的一种。不要以为C语言只能在PC上编程。C语言可以作为任何计算机的编程语言,当然也包括单片机,但是有一个条件,你必须有一个针对某一种架构的计算机的C编译器。目前,针对C语言的编译器有很多种,针对各种MCU和微处理器架构也有编译器版本,所以C可以作为MCU的编程语言。不同的是,你用TC或者VC编译的是X86(比如Intel,AMD AMD)的目标代码,只能在PC上运行,而用单片机C编译器(比如Keil C)编译的代码是单片机代码,只能在特定的单片机上运行。目前,C/C++是最流行的MCU/微处理器编程语言。